Rien de bien extraordinaire, comme tu peux le voir ci-dessous…
[code]*filter
default policies: drop all inbound, accept all outbound
-P INPUT DROP
-F INPUT
-P FORWARD DROP
-F FORWARD
-P OUTPUT ACCEPT
-F OUTPUT
loopback traffic
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j DROP
established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
drop NEW not SYN packets, from now on --state NEW can be used safely
-A INPUT -p tcp ! --syn -m state --state NEW -j DROP
SSH
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
reverse VNC
-A INPUT -p tcp -m state --state NEW --dport 5500 -j ACCEPT
ping (LAN only)
-A INPUT -s 192.168.1.0/24 -p icmp -m icmp --icmp-type echo-request -j ACCEPT
COMMIT[/code]
La seule “bizarrerie” est la ligne qui ignore les paquets “NEW not SYN” (à placer avant toute utilisation de --state NEW) qui sert à corriger un comportement spécifique d’iptables : une nouvelle connexion TCP est censée débuter par un paquet SYN, or, iptables ne force pas cette vérification (de mémoire, une sombre histoire de compatibilité lorsque tu as plusieurs firewalls en cascade et que tu en redémarres un, je t’invite à chercher “NEW not SYN” sur internet si tu tiens vraiment à comprendre le pourquoi du comment de ce comportement). Étant donné que ça ne me concerne pas, j’utilise cette ligne pour rétablir un comportement normal par rapport aux spécifications du protocole TCP.