« Les VLAN sécurisent déjà le réseau. »
Ils séparent les domaines Ethernet. Dès qu’un routeur relie les VLAN, les flux deviennent possibles. La sécurité dépend alors de règles explicites, testées et documentées.
La politique cible est la suivante :
01Préparer les VLAN et les services
sudo ./module4-segmentation-lab.sh router
Dans deux terminaux distincts, lance sur le serveur :
sudo ip netns exec m4-srv python3 -m http.server 8080 --bind 10.40.30.31
sudo ip netns exec m4-srv nc -lk 2222
Avant le pare-feu, les utilisateurs atteignent les deux ports :
sudo ip netns exec m4-users curl -s http://10.40.30.31:8080/ | head
sudo ip netns exec m4-users nc -zvw 1 10.40.30.31 2222
02Charger une politique restrictive
cat > /tmp/m4-filter.nft <<'EOF'
flush ruleset
table inet filter {
chain forward {
type filter hook forward priority filter; policy drop;
ct state invalid counter drop
ct state established,related counter accept
iifname "eth0.10" counter accept
iifname "eth0.20" oifname "eth0.30" tcp dport 8080 counter accept
counter drop
}
}
EOF
sudo ip netns exec m4-r1 nft -f /tmp/m4-filter.nft
sudo ip netns exec m4-r1 nft list ruleset
Comprends pourquoi le retour fonctionne
La première requête HTTP des utilisateurs correspond à la règle du port 8080. Les paquets de réponse appartiennent ensuite à une connexion established. La règle conntrack autorise ce trafic de retour sans ouvrir tous les flux depuis le VLAN services.
03Tester les décisions
sudo ip netns exec m4-users curl -s http://10.40.30.31:8080/ | head
sudo ip netns exec m4-users nc -zvw 2 10.40.30.31 2222
sudo ip netns exec m4-admin1 nc -zvw 1 10.40.30.31 2222
04Lire les compteurs comme preuves
sudo ip netns exec m4-r1 nft -a list chain inet filter forward
Relance chaque test et observe quelles règles augmentent. Un compteur nul indique qu’un paquet n’a jamais correspondu à la règle ; ce n’est pas la même chose qu’une règle qui correspond puis décide de bloquer.
05Distinguer drop et reject
La politique actuelle utilise drop : le client attend une expiration. Pour un réseau interne, un reject explicite peut parfois accélérer le diagnostic. Il révèle toutefois davantage d’informations. Ce choix fait partie de la politique de sécurité, pas seulement de la syntaxe.
Écris une règle qui ne correspond jamais
- remplace temporairement
eth0.20pareth0.200; - recharge le fichier ;
- teste le service web ;
- compare le compteur de la règle web avec celui du drop final ;
- corrige le nom d’interface et valide.
06Nettoyer
sudo ip netns exec m4-r1 nft flush ruleset
sudo ./module4-segmentation-lab.sh cleanup
✓Ce que tu retiens
Une bonne politique part d’un besoin de flux, utilise une règle de retour stateful, limite les autorisations et conserve des preuves avec les compteurs. Les VLAN segmentent ; le pare-feu décide.