Iptables permet d'agir sur les couches 3 et 4 du modèle OSI.
ICMP est un protocole de niveau 3, donc c'est ok.
DNS, HTTP, HTTPS sont des protocoles sur la couche 5. Iptables ne peut donc pas gérer ces protocoles.
Tu peux cependant filtrer en fonction des ports TCP et UDP que ces protocoles utilisent habituellement.
C'est très loin d'être optimal. Tu peux commencer par :
DNS : 53 TCP + 53 UDP
HTTP : 80 TCP
HTTPS : 443 TCP
De mémoire ça devrait donner quelque chose comme
iptables --table filter --append FORWARD --protocol udp --destination XXX.XXX.XXX.0/24 --match multiport --destination-ports 53 --jump ACCEPT
iptables --table filter --append FORWARD --protocol tcp --destination XXX.XXX.XXX.0/24 --match multiport --destination-ports 53,80,443 --jump ACCEPT
# ou --source YYY.YYY.YYY.0/24 à la place de --destination XXX.XXX.XXX.0/24
# et/ou éventuellement --out-interface ZZZZ
Il faut également autoriser les paquets de réponse
# modèle OSI
Posté par Kerro . En réponse au message règles IPTables. Évalué à 4.
Iptables permet d'agir sur les couches 3 et 4 du modèle OSI.
ICMP est un protocole de niveau 3, donc c'est ok.
DNS, HTTP, HTTPS sont des protocoles sur la couche 5. Iptables ne peut donc pas gérer ces protocoles.
Tu peux cependant filtrer en fonction des ports TCP et UDP que ces protocoles utilisent habituellement.
C'est très loin d'être optimal. Tu peux commencer par :
DNS : 53 TCP + 53 UDP
HTTP : 80 TCP
HTTPS : 443 TCP
De mémoire ça devrait donner quelque chose comme
Il faut également autoriser les paquets de réponse
Avec ça tu auras un début pour améliorer la chose.