[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: iptable et règles de redirection...



Salut,

C. Mourad Jaber a écrit dans duf:
J'ai une question concernant la règle PREROUTING d'iptables
J'ai fait une règle pour envoyer les paquets de ma passerelle vers mon
server web qui est derrière :

$IPTABLES -A INPUT -p tcp --dport 8080 -m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT

Cette règle est inutile car la chaîne INPUT ne traite que les paquets destinés à la passerelle *après* les éventuelles redirections dans la chaîne PREROUTING. Les paquets qui traversent la passerelle sont traités dans la chaîne FORWARD. Mais si ça passe, ça veut dire qu'il existe déjà une autre règle ou une politique par défaut FORWARD qui accepte ces paquets. D'autre part, le RELATED est aussi inutile car le protocole HTTP ne produit pas de connexion TCP RELATED.

$IPTABLES -t nat -A PREROUTING -p tcp -m tcp --dport 8080 -j DNAT --to
10.1.1.11:80

ça marche, mais le serveur web à l'impression qu'il communique
uniquement avec ma passerelle et dans le log, j'ai toujours 10.1.1.1 (l'adresse interne de ma passerelle) comme client au lieu de l'adresse réelle...

Une modification de l'adresse source ne peut être provoquée par une règle DNAT dans la chaîne PREROUTING. Sauf règles de routage avancé ip rules nat, elle ne peut provenir que d'une règle DNAT dans OUTPUT pour les paquets émis par la passerelle elle-même ou d'une règle SNAT ou MASQUERADE dans la chaîne POSTROUTING pour tous les paquets sortants. Je parie sur la règle qui fait le masquerading du LAN vers internet qui ne tient pas compte de l'interface de sortie ni de l'adresse source, du genre :

iptables -t nat -A POSTROUTING -j MASQUERADE

à remplacer par (si ppp0 est l'interface internet) :

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

ou (si 10.0.0.0/8 est la plage d'adresses locales)
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE

ou la combinaison des deux :

iptables -t nat -A POSTROUTING -o ppp0 -s 10.0.0.0/8 -j MASQUERADE



Reply to: