Pont filtrant: Pb Forward iptables [Resolu]

Bonjour les amis,

Je tente de configurer un pont filtrant, le but étant de sélectionner qui a le droit d’accéder à mes serveurs.
Mon pont est entre eth0 et eth1, jusque là tout va bien.
Lorsque je configure mes règles iptables pour le FORWARD ça sa gâte.

Même cette conf minimaliste me bloque :
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p icmp -j ACCEPT

Mon bridge n’est pas le problème, car avec cette règle par défaut tout passe sans filtrage:
iptables -P FORWARD ACCEPT

Avec ça aussi ça marche:
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state NEW,RELATED,ESTABLISHED -j ACCEPTJe suis sur le point de devenir babache …

Je ne pige pas ou je blaire…
J’ai laissé un message sur le portable de Fox Mulder, mais il doit être parti en voyage …

Je vous remercie d’avance pour votre aide précieuse.

Le problème c’est que ta règle accepte les connexions RELATED et ESTABLISHED mais pas le premier envoi qui initialise la connexion.
Pour sortir par exemple sur ETH0 en ssh
iptables -A FORWARD -o eth0 -p tcp --dport 22 -j ACCEPT
Pour entrer par exemple sur ETH0 en ssh
iptables -A FORWARD -i eth0 -p tcp --dport 22 -j ACCEPT

Si tu permets l’entrée (ou la sortie), la règle RELATED et ESTABLISHED prend le relais pour permettre la suite de la communication.

Attention : sur un pont, la signification de l’interface d’entrée ou de sortie est spéciale : il s’agit de l’interface pont, typiquement br0, et non de l’interface pontée (appelée “port”) par laquelle les paquets entrent et sortent du pont. Pour spécifier celle-ci, il faut utiliser la correspondance physdev.

Normal, cette “conf minimaliste” n’accepte que les paquets ICMP (exemple : ping) et les paquets appartenant ou liés aux connexions existantes. Il faut ajouter des règles pour accepter les paquets des connexions que tu souhaites autoriser.

Et au passage, accepter tous les paquets ICMP n’a pas de sens.

Salut les amis,

Merci pour vos réponses et du temps accordé à celles-ci.

Je partage vos opinions mais mon problème c’est que même le ping ne passe pas.
Cette règle ne sert à rien, pas d’accord, elle m’a servi à définir que mon problème vient de mon filtrage et pas de mon pont.
Pourquoi ce f…g pont bloque mes ping.
Je ne comprend pas.
Vu que je ne cite pas d’interface elles sont donc toutes concernées même br0.

Voici une conf autorisant les ping dans tous les sens et pourtant rien ne passe … Snif !!! (conf nulle je l’accorde, mais quand même…)

iptables -F
iptables -X

#Politique par défaut
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#Règles de filtrage des paquets en entree

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 1789 -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT

iptables -A INPUT -m physdev --physdev-in eth0 --physdev-out eth1 -p icmp -j ACCEPT
iptables -A FORWARD -m physdev --physdev-in eth0 --physdev-out eth1 -p icmp -j ACCEPT
iptables -A INPUT -m physdev --physdev-in eth1 --physdev-out eth0 -p icmp -j ACCEPT
iptables -A FORWARD -m physdev --physdev-in eth1 --physdev-out eth0 -p icmp -j ACCEPT
iptables -A FORWARD -m physdev --physdev-in br0 --physdev-out br0 -p icmp -j ACCEPT
iptables -A FORWARD -m physdev --physdev-in br0 --physdev-out eth0 -p icmp -j ACCEPT
iptables -A FORWARD -m physdev --physdev-in br0 --physdev-out eth1 -p icmp -j ACCEPT

iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

Merci Pascal.
Effectivement avec physdev et qq heures ça marche mieux.
Merci beaucoup à vous pour votre aide