Feuille classe
Configuration du pare-feu Shorewall
Installation des paquets
Sur la machine virtuelle vmlb, installez les paquets nécessaires :
apt install shorewall tcpdump nmap
Configuration des fichiers Shorewall
Zones (zones)
Le fichier /etc/shorewall/zones définit les différentes zones du réseau :
fw firewall
net ipv4
lan ipv4
Explication des zones :
fw : Représente le pare-feu lui-même net : Zone pour le réseau externe (Internet) lan : Zone pour le réseau local interne
Interfaces (interfaces)
Le fichier /etc/shorewall/interfaces associe les interfaces physiques aux zones :
?FORMAT 2
net enp0s3 dhcp,tcpflags,nosmurfs,sourceroute=0
lan enp0s8 tcpflags,nosmurfs,sourceroute=0
Paramètres des interfaces :
enp0s3 : Interface réseau externe avec DHCP enp0s8 : Interface réseau locale Options de sécurité :
- tcpflags : Active la vérification des drapeaux TCP
- nosmurfs : Protection contre les attaques smurf
- sourceroute=0 : Désactive le source routing
Politique (policy)
Le fichier /etc/shorewall/policy définit les règles par défaut :
lan net ACCEPT
lan $FW ACCEPT
$FW net ACCEPT
$FW lan ACCEPT
net all DROP info
all all REJECT info
Explication des politiques :
Trafic du LAN vers Internet : Autorisé Trafic du LAN vers le pare-feu : Autorisé Trafic du pare-feu vers Internet : Autorisé Trafic du pare-feu vers le LAN : Autorisé Trafic d'Internet vers toute destination : Bloqué avec journalisation Tout autre trafic : Rejeté avec journalisation
Translation d'adresses (snat)
Le fichier /etc/shorewall/snat configure le masquerading :
MASQUERADE 192.168.72.0/24 enp0s3
Explication :
Masque le réseau 192.168.72.0/24 derrière l'interface enp0s3
Paramètres (params)
Le fichier /etc/shorewall/params définit les variables :
IP_GCH=192.168.1.18
Règles (rules)
Le fichier /etc/shorewall/rules contient les règles spécifiques :
ACCEPT all all icmp 8
ACCEPT net:$IP_GCH $FW tcp 22
ACCEPT net $FW tcp 80
ACCEPT net:$IP_GCH $FW tcp 8282
DNAT
DNAT net:$IP_GCH lan:192.168.72.11:22 tcp 2221
DNAT net:$IP_GCH lan:192.168.72.12:22 tcp 2222
Explication des règles :
Autorise le ping (ICMP type 8) depuis toutes les sources Autorise SSH (port 22) depuis l'IP spécifiée vers le pare-feu Autorise HTTP (port 80) depuis Internet vers le pare-feu Autorise le port 8282 depuis l'IP spécifiée vers le pare-feu Redirige le port 2221 vers SSH (port 22) sur 192.168.72.11 Redirige le port 2222 vers SSH (port 22) sur 192.168.72.12
Activation et test
Démarrage de Shorewall
Exécutez les commandes suivantes :
shorewall check
shorewall safe-start
systemctl enable shorewall
Test de la configuration
Depuis une machine externe, testez avec nmap :
$ nmap -p 22,80,8282,2221,2222 IP_FIREWALL
Ports testés :
22 : SSH vers le pare-feu 80 : HTTP vers le pare-feu 8282 : Port personnalisé vers le pare-feu 2221 : Redirection SSH vers 192.168.72.11 2222 : Redirection SSH vers 192.168.72.12