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

Re: [HS] iptables et ip aliasing



steve a écrit :
[...]
#tcpdump -i ath0 port 80
listening on ath0, link-type EN10MB (Ethernet), capture size 96 bytes
08:12:12.830823 IP portable.maison.mrs.54577 > dolibarr.maison.mrs.www: S 511354364:511354364(0) win 5840 <mss 1460,sackOK,timestamp 548769588 0,nop,wscale 2>
[...]

Avec -n pour avoir les adresses et ports sous forme numérique c'est plus parlant. On voit quand même que les paquets SYN arrivent, mais pas de réponse.

[...]
Et aucun filtrage en INPUT ou OUTPUT sur ath0 ?

si !

iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_NETWORK -p all -j ACCEPT iptables -t filter -A INPUT -i $LAN_INTERFACE -s $LAN_NETWORK -d $LAN_IP -p all -j ACCEPT

Alors, j'imagine que :
LAN_INTERFACE=ath0
LAN_IP=192.168.20.1
LAN_NETWORK=192.168.20.0/24

Bon ben voilà, je crois que c'est là. Trop restrictif : ces règles bloquent le trafic entrant et sortant par ath0 si on utilise l'adresse d'une autre interface. Or c'est justement ce qui se passe quand on veut accéder à 192.168.2.2 depuis 192.168.20.0/24. Donc soit tu supprimes la condition portant sur $LAN_IP, soit tu ajoutes des règles similaires pour les autres adresses locales auxquelles tu veux accéder par ath0 :

iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s 192.168.2.2 \
  -d $LAN_NETWORK -p all -j ACCEPT
iptables -t filter -A INPUT  -i $LAN_INTERFACE -s $LAN_NETWORK \
  -d 192.168.2.2 -p  all -j ACCEPT

iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_BROADCAST -p all -j ACCEPT

Ce cas n'est pas déjà inclus dans la première régle (normalement $LAN_BROADCAST=192.168.20.255 est inclus dans $LAN_NETWORK) ?

iptables -t filter -A INPUT -i $LAN_INTERFACE -s $LAN_BROADCAST -d $LAN_IP -p all -j ACCEPT

Inutile voire dangereux : une adresse de broadcast n'est pas valide comme adresse source. On doit répondre à un paquet broadcast par un paquet unicast (ce qui trompe le suivi de connexion de Netfilter, accessoirement).



Reply to: