OVH Cloud OVH Cloud

[HS] iptables et ip aliasing

20 réponses
Avatar
steve
Bonjour,

Ayant eu le besoin pour une ip de plus, j'en ai cr=E9=E9 une, eth1:0, sur l=
aquelle=20
=E9coute un apache. Maintenant j'aimerai pourvoir acc=E9der =E0 ce serveur =
depuis=20
n'importe o=F9 dans mon r=E9seau local.=20
J'ai donc =E9crit quelque r=E8gle iptables pour le permettre. Le probl=E8me=
se=20
pr=E9sente au moment o=F9 je relance mon script :

Warning: weird character in interface `eth1:0' (No aliases, :, ! or *)
=20
Dans le script, je l'ai d=E9finie ainsi : var=3D"eth1:0". (j'ai essay=E9 sa=
ns=20
les "", et =E7a ne change rien).

Donc je suis all=E9 demander =E0 google ce qu'il en pensait, et il en pense=
=20
beaucoup mais pas forc=E9ment toujours de la m=EAme mani=E8re. Certains dis=
ent=20
qu'on ne peut pas faire de l'ip aliasing avec iptables, d'autres que c'est=
=20
possible. Je m'en remets donc =E0 vous.

Merci

=2D-=20
steve
jabber : sdl@jabber.org

10 réponses

1 2
Avatar
Klaus Becker
Le Dienstag 09 Mai 2006 14:56, on4hu a écrit :
merci a tout les deux... je vais encore tenter une dernière fois
l'installation de la Debian



as-tu vraiment besoin de réinstaller avec les conseils que tu as reçus ici ?
On réinstalle avec... windows

Klaus
Avatar
on4hu
Le Mardi 9 Mai 2006 18:57, Klaus Becker a écrit :
Le Dienstag 09 Mai 2006 14:56, on4hu a écrit :
> merci a tout les deux... je vais encore tenter une dernière fois
> l'installation de la Debian

as-tu vraiment besoin de réinstaller avec les conseils que tu as reçu s ici
? On réinstalle avec... windows

Klaus


oui car pour l'instant j'ai virer la Debian .. Windows je n'ai pas
André ON4HU

--
WEB server: http://www.on4hu.be/
FTP server: ftp://ftp.on4hu.be/
COMPUTERS ARE LIKE AIR-CONDITIONERS THEY STOP WORKING
PROPERLY AS SOON AS YOU OPEN WINDOWS
Avatar
Klaus Becker
Le Dienstag 09 Mai 2006 20:45, on4hu a écrit :
Le Mardi 9 Mai 2006 18:57, Klaus Becker a écrit :
> Le Dienstag 09 Mai 2006 14:56, on4hu a écrit :
> > merci a tout les deux... je vais encore tenter une dernière fois
> > l'installation de la Debian
>
> as-tu vraiment besoin de réinstaller avec les conseils que tu as re çus
> ici ? On réinstalle avec... windows
>
> Klaus

oui car pour l'instant j'ai virer la Debian .. Windows je n'ai pas
André ON4HU



dans ce cas, en effet...

Klaus
Avatar
ah164835
Le Mardi 9 Mai 2006 18:57, Klaus Becker a écrit :
Le Dienstag 09 Mai 2006 14:56, on4hu a écrit :
> merci a tout les deux... je vais encore tenter une dernière fois
> l'installation de la Debian

as-tu vraiment besoin de réinstaller avec les conseils que tu as reçu s ici
? On réinstalle avec... windows

Klaus


oui car pour l'instant j'ai virer la Debian .. Windows je n'ai pas
André ON4HU

--
WEB server: http://www.on4hu.be/
FTP server: ftp://ftp.on4hu.be/
COMPUTERS ARE LIKE AIR-CONDITIONERS THEY STOP WORKING
PROPERLY AS SOON AS YOU OPEN WINDOWS
Avatar
Pascal Hambourg
steve a écrit :
je n'arrive pas à pinger depuis 192.168.20.2 sur 192.168.2.2.



Ça veut dire quoi exactement "je n'arrive pas" ? Il y a un message
d'erreur ?



non. je pingue et il ne se passe rien, à part que si je pingue sur
dolibarr.maison.mrs, il me trouve la bonne IP:

ping dolibarr.maison.mrs
PING dolibarr.maison.mrs (192.168.2.2) 56(84) bytes of data.

et nada. ça ne passe pas.



Et un traceroute ?

La machine ayant l'adresse 192.168.20.2 a-t-elle une route explicite ou
par défaut pour joindre 192.168.2.2 ?



non. la route par défaut passe par 192.168.20.1 puis par eth0 (192.168.1.34)
puis vers le net via le modem en 192.168.1.1, mais rien vers le réseau
192.168.2.0.



Pas besoin de route spécifique, la route par défaut via 192.168.20.1 est
suffisante puisqu'elle conduit à la bonne machine (192.168.20.1 et
192.168.2.2, c'est la même machine). Donc a priori j'écarte un problème
de routage. Un petit tcpdump sur ath0 quand même pour vérifier que les
paquets arrivent, et éventuellement si un réponse repart.

Y a-t-il du filtrage IP sur les machines ?



Il y a des règles iptables pour bloquer l'accès depuis le net, que j'ouvre au
cas par cas si besoin est.



Et aucun filtrage en INPUT ou OUTPUT sur ath0 ?

[...]
Tu n'as pas besoin de "forwarder" des paquets d'une interface à une
autre.



c'est bien ce qui se passe quand on fait

echo 1 > /proc/sys/net/ipv4/ip_forward



Oui. Ou "sysctl -w net.ipv4.ip_forward=1" (plus joli).

alors pourquoi ça ne marche pas dans mon cas ? est-ce dû au virtualhosting par
IP de Apache ?



A priori non puisque l'accès aux deux sites fonctionne en local. A moins
que tu aies mis des restrictions d'accès dans la configuration d'Apache
sur le vhost dolibarr.maison.mrs. Mais dans ce cas tu aurais une réponse
du genre "500 Forbidden".

des règles iptables mal foutues ?



Possible, il faut éplucher les règles INPUT et OUTPUT qui concernent
ath0 ou toutes les interfaces.

Si je résume, depuis 192.168.20.x :
- accès internet possible
- ping 192.168.20.1 obtient une réponse
- ping 192.168.2.2 n'obtient pas de réponse ?


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
steve
Le Mardi 9 Mai 2006 21:43, Pascal Hambourg a écrit :
steve a écrit :
>>>je n'arrive pas à pinger depuis 192.168.20.2 sur 192.168.2.2.
>>
>>Ça veut dire quoi exactement "je n'arrive pas" ? Il y a un message
>>d'erreur ?
>
> non. je pingue et il ne se passe rien, à part que si je pingue sur
> dolibarr.maison.mrs, il me trouve la bonne IP:
>
> ping dolibarr.maison.mrs
> PING dolibarr.maison.mrs (192.168.2.2) 56(84) bytes of data.
>
> et nada. ça ne passe pas.

Et un traceroute ?



un traceroute donne :

traceroute to dolibarr.maison.mrs (192.168.2.2), 30 hops max, 40 byte packe ts
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *

etc...


>>La machine ayant l'adresse 192.168.20.2 a-t-elle une route explicite ou
>>par défaut pour joindre 192.168.2.2 ?
>
> non. la route par défaut passe par 192.168.20.1 puis par eth0
> (192.168.1.34) puis vers le net via le modem en 192.168.1.1, mais rien
> vers le réseau 192.168.2.0.

Pas besoin de route spécifique, la route par défaut via 192.168.20.1 est
suffisante puisqu'elle conduit à la bonne machine (192.168.20.1 et
192.168.2.2, c'est la même machine).




oui.

Donc a priori j'écarte un problème
de routage. Un petit tcpdump sur ath0 quand même pour vérifier que les
paquets arrivent, et éventuellement si un réponse repart.



#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>
08:12:15.830498 IP portable.maison.mrs.54577 > dolibarr.maison.mrs.www: S
511354364:511354364(0) win 5840 <mss 1460,sackOK,timestamp 548772588
0,nop,wscale 2>
08:12:21.830050 IP portable.maison.mrs.54577 > dolibarr.maison.mrs.www: S
511354364:511354364(0) win 5840 <mss 1460,sackOK,timestamp 548778588
0,nop,wscale 2>
08:12:33.829218 IP portable.maison.mrs.54577 > dolibarr.maison.mrs.www: S
511354364:511354364(0) win 5840 <mss 1460,sackOK,timestamp 548790588
0,nop,wscale 2>

et rien d'autre

>>Y a-t-il du filtrage IP sur les machines ?
>
> Il y a des règles iptables pour bloquer l'accès depuis le net, que
> j'ouvre au cas par cas si besoin est.

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

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

avec les variables remplacées par ce qu'on imagine ;-)

[...]

>>Tu n'as pas besoin de "forwarder" des paquets d'une interface à une
>>autre.
>
> c'est bien ce qui se passe quand on fait
>
> echo 1 > /proc/sys/net/ipv4/ip_forward

Oui. Ou "sysctl -w net.ipv4.ip_forward=1" (plus joli).



jamais réussi à me souvenir de cette manière-là...

> alors pourquoi ça ne marche pas dans mon cas ? est-ce dû au
> virtualhosting par IP de Apache ?

A priori non puisque l'accès aux deux sites fonctionne en local. A moins
que tu aies mis des restrictions d'accès dans la configuration d'Apache
sur le vhost dolibarr.maison.mrs. Mais dans ce cas tu aurais une réponse
du genre "500 Forbidden".



non, aucune réponse de ce style-là.

> des règles iptables mal foutues ?

Possible, il faut éplucher les règles INPUT et OUTPUT qui concernent
ath0 ou toutes les interfaces.



c'est que j'ai fait hier, après avoir épluché la doc d'iptables sur l e Net.
Pour ce qui concerne aujourd'hui, je vais me remettre la config d'origine
(une machine sur la branche 192.168.2.0) et foutre le tout en DMZ, avec por t
forwarding et tout. J'espère que ce sera plus clair ainsi.

Si je résume, depuis 192.168.20.x :
- accès internet possible



oui

- ping 192.168.20.1 obtient une réponse



oui

- ping 192.168.2.2 n'obtient pas de réponse ?



oui, et quelques cheveux de moins pour moi..

merci encore !

--
steve
jabber :
Avatar
Pascal Hambourg
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_IP2.168.20.1
LAN_NETWORK2.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_BROADCAST2.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).


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
steve
Le Mercredi 10 Mai 2006 13:14, Pascal Hambourg a écrit :
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_NETWO RK
> -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_IP2.168.20.1
LAN_NETWORK2.168.20.0/24



Bravo -;)


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




Bingo ! ça marche en virant le -d $LAN_IP de ces 2 conditions.


, 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_BROADCAST2.168.20.255 est inclus dans $LAN_NETWORK) ?



oui effectivement. J'ai viré ces 2 règles.

> 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).



ok. Merci mille fois, j'ai pas mal appris d'iptables. J'avais piqué un sc irpt
sur le net en l'adaptant à ce que je croyais être mes besoins, mais ne
pigeant pas le truc parfaitement, voilà ce qui arrive..

Très belle après-midi


--
steve
jabber :
Avatar
on4hu
Le Mardi 9 Mai 2006 14:39, Klaus Becker a écrit :
Le Dienstag 09 Mai 2006 14:33, on4hu a écrit :
> bonjours
>
> je suis nouveau sur cette liste, ceçi est mon 1er poste...
>
> a plusieurs reprise j'ai tenté d'installer la Debian 3.1r1 sur plusie urs
> PC et je me retrouve chaque fois avec une définition écran de 600x4 80
> alors que toutes les autres distributions j'ai le choix a un peu plus de
> qualité!
>
> y a t' il un moyen simple pour installer directement avec que définit ion
> meilleure que celle digne d'un PC de 1980 ?
> ou un moyen simple pour rectifier ce tir
>
> mes carte video sont soit Nvidia.. soit ATI.. mais je suppose que c'est
> un fait connu chez Debian mais pour un démarrage je n'ai trouver aucu ne
> explication
>
> André ON4HU

un moyen simple est aussi de prendre une knoppix et de copier le
fichier /etc/X11/XF86Config-4 sur ton système. Fais une sauvegarde de t on
fichier avant.

Klaus



simple peut être pour un habitué avec debian, ce fichier n'est pas copi able
sur une disquette
--
WEB server: http://www.on4hu.be/
FTP server: ftp://ftp.on4hu.be/
COMPUTERS ARE LIKE AIR-CONDITIONERS THEY STOP WORKING
PROPERLY AS SOON AS YOU OPEN WINDOWS
Avatar
ah164835
Le Mardi 9 Mai 2006 14:39, Klaus Becker a écrit :
Le Dienstag 09 Mai 2006 14:33, on4hu a écrit :
> bonjours
>
> je suis nouveau sur cette liste, ceçi est mon 1er poste...
>
> a plusieurs reprise j'ai tenté d'installer la Debian 3.1r1 sur plusie urs
> PC et je me retrouve chaque fois avec une définition écran de 600x4 80
> alors que toutes les autres distributions j'ai le choix a un peu plus de
> qualité!
>
> y a t' il un moyen simple pour installer directement avec que définit ion
> meilleure que celle digne d'un PC de 1980 ?
> ou un moyen simple pour rectifier ce tir
>
> mes carte video sont soit Nvidia.. soit ATI.. mais je suppose que c'est
> un fait connu chez Debian mais pour un démarrage je n'ai trouver aucu ne
> explication
>
> André ON4HU

un moyen simple est aussi de prendre une knoppix et de copier le
fichier /etc/X11/XF86Config-4 sur ton système. Fais une sauvegarde de t on
fichier avant.

Klaus


pas mieux Claus
impossible de copier ce fichier depuis la ramdisk vers une disquette
moralité pas de démarrage sur la Debian du serveur X


--
WEB server: http://www.on4hu.be/
FTP server: ftp://ftp.on4hu.be/
COMPUTERS ARE LIKE AIR-CONDITIONERS THEY STOP WORKING
PROPERLY AS SOON AS YOU OPEN WINDOWS
1 2