Re: Re: [aide] iptables
Le samedi 10 août 2002, à 00:25, Grégoire Cachet écrivait :
> il y a quelque chose qui m'échape sérieusement avec iptables sur ma
> passerelle :
>
> je vide tout :
>
> # iptables -F
> # iptables -X
> # iptables -F -t nat
> # iptables -X -t nat
>
> mes policy sont accept partout
C'est ppaass bbiieenn.
> j'active la masquerade de mon reseau local :
>
> # iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
> # iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
Tout baigne...
> je bloque l'acces du reseau local a 213.193.13.0/24 :
>
> # iptables -A FORWARD -s 192.168.1.0/24 -d 213.193.13.0/24 -j DROP
>
> 192.168.1.1 pingue sans probleme 213.193.13.19 --> bizarre
Ben non. C'est trop tard. Tout ce qui vient de 192.168.1.0/24 est passé
par la règle précédente dont le verdict était « ACCEPT ».
Ton erreur vient tout simplement du fait que l'ordre dans lequel les
règles sont traversées est important. Dès qu'une règle s'applique à un
paquet, celui-ci en subit le résultat et n'est plus testé contre les
règles qui suivent. C'est d'ailleurs relativement logique, si tu y
réfléchis bien.
Tu auras donc le résultat que tu souhaites si tu ajoutes les règles dans
l'ordre inverse. Ça t'éviteras des redirections douteuses... ;-)
J'ajoute qu'il n'y a aucune raison de mettre des règles ayant une cible
identique à la politique de la chaîne à laquelle elles appartiennent, à
moins de vouloir les loguer.
> [...]
>
> Apparement, quand je met une chaine dans FORWARD dont la target est
> différente de la policy, elle n'est pas prise en compte.
>
> C'est normal ? Je pense pas ... sinon j'ai rien compris !!
C'est certainement pas normal. Tu peux envoyer un état des chaînes, pour
voir ?
Reply to: