Re: Je désire avancer sur le script d'iptables :)!
Le 08/08/04 à 17:57, Annie D. écrivait:
> Bonjour,
>
> "J.Pierre Pourrez" wrote:
> >
> > $I -A OUTPUT -p tcp -d ! $INTRANET --destination-port 80 -j DNAT --to-destination $PROXY
> >
> > Hélas, ma 2ème règle pour le poste connecté directement à internet, sur lequel je travaille, ne passe pas.
> >
> > Pourtant d'après "man iptables" la cible DNAT est permise pour la chaine OUTPUT
>
> Quelle version de noyau ?
>
> J'ai été confrontée au problème à mes débuts avec Netfilter/iptables sur
> Woody, voici les informations que j'en ai retirées :
>
> Dans les noyaux inférieurs à 2.4.19, DNAT en OUTPUT ne marche pas
> correctement si la destination est une autre machine. En fait c'est
> l'opération de dé-NATage des paquets retour qui ne se fait pas.
>
> Dans les noyaux 2.4.19 et ultérieurs, il faut que l'option
> CONFIG_IP_NF_NAT_LOCAL ait été activée à la compilation. Ça marche aussi
> avec un noyau plus ancien auquel on a appliqué le patch du patch-o-matic
> pour la mise à jour de Netfilter en version 2.4.19 au moins (on ne peut
> pas aller beaucoup plus loin, probablement à cause des patches
> spécifiques à Debian). C'est ce que j'ai fait avec le noyau 2.4.18
> stable de Debian.
Apparemment j'ai tout bon de ce côté:
jpierre@bazooka:~$ grep CONFIG_IP_NF_NAT /boot/config-2.4.26
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_NAT_AMANDA=m
CONFIG_IP_NF_NAT_LOCAL=y
# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
CONFIG_IP_NF_NAT_IRC=m
CONFIG_IP_NF_NAT_FTP=m
CONFIG_IP_NF_NAT_TFTP=m
bazooka:~# lsmod |grep "^ipt"
ipt_ULOG 3592 2 (autoclean)
iptable_mangle 2168 0 (autoclean) (unused)
ipt_MASQUERADE 1624 1 (autoclean)
iptable_nat 17134 1 (autoclean) [ipt_MASQUERADE]
ipt_state 536 9 (autoclean)
iptable_filter 1772 1 (autoclean)
Et le proxy transparent (Squid) marche avec un client sur le réseau local.
Je me demande si je lis bien "man iptables":
DNAT
This target is only valid in the nat table, in the PREROUTING and
OUTPUT chains, and user-defined chains which are only called from
those chains.
La virgule après "nat table" a la valeur "et" ou "ou" ?
Je pencherais pour la 2ème hypothèse mais cela ne marche pas.
Toujours à la recherche de la solution,
Jean-Pierre Pourrez
Reply to: