Passerelle sous Linux ( ou double passerelle
Fermé
rauchy
-
11 avril 2005 à 18:14
mounirouche Messages postés 1 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 2 décembre 2007 - 2 déc. 2007 à 09:49
mounirouche Messages postés 1 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 2 décembre 2007 - 2 déc. 2007 à 09:49
A voir également:
- Passerelle sous Linux ( ou double passerelle
- Double ecran - Guide
- Whatsapp double sim - Guide
- Double appel - Guide
- Double authentification google - Guide
- Linux mint 32 bits - Télécharger - Systèmes d'exploitation
11 réponses
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
501
11 avril 2005 à 18:30
11 avril 2005 à 18:30
Je ne comprends pas trop bien ta config mais je crois tu dois aussi utiliser, c.-a-d. activer le NAT, la traduction d'adresses entre reseau local et internet (ou plutot entre ton reseau local 192.168.0.x et l'autre reseau local 192.168.39.x). A mon avis c'est ca le probleme. Si tu as internet sur le pc Linux et pas sur les pcs Windows ca confirme cette hypothese.
Regarde ici pour voir comment faire pour le partage simple:
http://www.commentcamarche.net/forum/affich-1138827-partage-de-connection#1
notamment le point 4) du poste <1>.
Apart ca je te recommande la lecture du IP-Masquerade-HOWTO:
http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/
Notamment les sections: 3.3, 3.4.1, 6.4.1
Dans mon tuto (le 1er lien) j'utilise le script dans 3.4.1 pour activer le NAT. C'est une fonctionnalite dans le noyau Linux pour traduire entre les adresses et il faut l'activer pour faire ce que tu souhaites faire (je crois).
Regarde ici pour voir comment faire pour le partage simple:
http://www.commentcamarche.net/forum/affich-1138827-partage-de-connection#1
notamment le point 4) du poste <1>.
Apart ca je te recommande la lecture du IP-Masquerade-HOWTO:
http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/
Notamment les sections: 3.3, 3.4.1, 6.4.1
Dans mon tuto (le 1er lien) j'utilise le script dans 3.4.1 pour activer le NAT. C'est une fonctionnalite dans le noyau Linux pour traduire entre les adresses et il faut l'activer pour faire ce que tu souhaites faire (je crois).
Bonjour,
Je ne comprends pas bien pourquoi tu insères cette passerelle, mais en supposant que tu veuilles juste qu'elle fasse du transit, tu as un problème dans la passerelle par défaut.
Tu n'as rien de spécial à faire pour adresser tes deux réseaux. Les paquets à destination de 192.168.0 et de 192.168.39 iront tous seuls vers la bonne carte et le bon réseau.
Par contre, la passerelle par défaut intervient pour les paquets à destination d'autre chose, et malheureusement tu en as mis deux, ce qui fait que tous les paquets vont vers Internet.
Il faut que tu mettes la passerelle par défaut en direction d'Internet pour que les paquets non destinés à tes réseaux prennent la bonne direction.
Manu.
Je ne comprends pas bien pourquoi tu insères cette passerelle, mais en supposant que tu veuilles juste qu'elle fasse du transit, tu as un problème dans la passerelle par défaut.
Tu n'as rien de spécial à faire pour adresser tes deux réseaux. Les paquets à destination de 192.168.0 et de 192.168.39 iront tous seuls vers la bonne carte et le bon réseau.
Par contre, la passerelle par défaut intervient pour les paquets à destination d'autre chose, et malheureusement tu en as mis deux, ce qui fait que tous les paquets vont vers Internet.
Il faut que tu mettes la passerelle par défaut en direction d'Internet pour que les paquets non destinés à tes réseaux prennent la bonne direction.
Manu.
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
501
11 avril 2005 à 20:56
11 avril 2005 à 20:56
J'ai regarde ton schema encore une fois et a mon avis tu ne fais rien d'autre qu'un simple partage meme si tu l'exprime les choses d'une facon complique. Il semble que tes numeros IPs sont bons et aussi pour les passerelles. Notamment tu as la passerelle par default vers internet, c.-a-d. vers le routeur 192.168.39.1 mais pour toi c'est comme internet ou reseau exterieur. Il n'y a sur le fond aucune difference par rapport a mon tuto partage (voir le 1er lien ci-dessus dans mon 1er message). Il y a une passerelle de trop (le 169.254....) mais ce n'est pas grave. C'est une m**** dans les scripts de Redhat (aussi present dans le Fedora), je me demande pourquoi ils ont mis ca. (Regarde dans le script: /sbin/ifup si veux comprendre d'ou ca vient.)
Peu importe, comme je l'ai deja suppose dans mon 1er poste, il te manque encore a activer le NAT qui va effectuer la traduction entre les adresses: 192.168.0.x vers le reseau exterieur. Pour ca tu n'as qu'a faire comme dans le point 4) de mon tuto et executer le script "rc.firewall-2.4" (apres quelques petites adaptations de ta part notamment pour eth0, eth1). Apres ca va etre bon pour les pcs windows qui veront l'internet et qui seront aussi protege par par le pc redhat comme firewall.
Peu importe, comme je l'ai deja suppose dans mon 1er poste, il te manque encore a activer le NAT qui va effectuer la traduction entre les adresses: 192.168.0.x vers le reseau exterieur. Pour ca tu n'as qu'a faire comme dans le point 4) de mon tuto et executer le script "rc.firewall-2.4" (apres quelques petites adaptations de ta part notamment pour eth0, eth1). Apres ca va etre bon pour les pcs windows qui veront l'internet et qui seront aussi protege par par le pc redhat comme firewall.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
501
11 avril 2005 à 21:51
11 avril 2005 à 21:51
>/etc/init.d/iptables stop
>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
>echo "1" > /proc/sys/net/ipv4/ip_forward
et apres
>/etc/init.d/iptables save
>/etc/init.d/iptables start
Je n'ai pas fait attention a ca. En fait, c'est en principe l'activation du NAT, le partage, mais a mon avis d'une mauvaise facon. Il vaut mieux utiliser le script qui fait les choses proprement. En plus de la ligne iptables avec masquerade il faut aussi definir les regles de filtrage pour la chaine FORWARD. Si ce n'est pas bien fait ca peut poser de problemes pour le partage. Le script remet lui meme les regles iptables et apres l'execution du celui-ci il ne faut plus toucher a ca avec le script /etc/init.d/iptables (ni start ni stop). Le truc iptables n'est pas un service qui tourne mais de reglages qu'on met dans les tableau de filtrage dans le noyau. De gerer ca comme un service qu'on arrete ou demarre ne me parrait pas tres logiques bien qu'en Redhat et aussi Mandrake ils font ca. Ca participe a embrouiller le fonctionnement de ca pour les gens qui ne connaissent pas bien.
Si tu n'arrives pas a pinger les pcs Windows il peut y avoir deux raisons:
1) Tes regles iptables avant ont bloque ca (tu as active un firewall sur linux ?). Si tu fais avec le script que je propose ca remet tout a zero et ca marchera.
2) Si tu as de firewalls sur les pcs Windows ca peut aussi bloquer les pings du pc linux. Il faut enlever les firewalls Windows si tu en as ou au moins ouvrir pour ton sous-reseau 192.168.0.x. Pour la direction entrant ces pcs seront deja protege par le pc Linux comme firewall.
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
11 avril 2005 à 22:27
11 avril 2005 à 22:27
Tu as une ip publique qui t'est prêtée par ton fournisseur d'accés.
Et tu as une autre tranche d'ip dans ton réseau local.
Si une machine de ton réseau local (autre que ta passerelle) envoie un paquet sur internet, il se perdra dans les méandres des réseaux puisqu'elle l'enverra avec son ip de réseau local qui n'est pas une ip publique, donc aucun ordinateur ne pourra lui répondre.
Donc, il faut que ça fonctionne comme ça: ton ordinateur de ton réseau local envoie un paquet vers internet, ta passerelle se charge de jouer le rôle de relais, mais plus encore : il faut qu'elle modifie, dans le paquet, l'adresse source de ta machine locale pour la remplacer avec ton ip publique (celle que possède ta passerelle avec son interface internet) afin de pouvoir assurer que les connexions retourneront vers ta passerelle (qui se chargera d'ailleurs de retransmettre les réponses en provenance d'internbet vers les machines concernées dans ton réseau....
Il faut donc faire du nat source, modifier les adresses sources sur ta passerelle... Ici c'est le principe du "masquerade" => masquer ton réseau local en faisant en sorte que tout paquet sortant de ton réseau local possède la même adrese ip source, ton ip publique....
Et tu as une autre tranche d'ip dans ton réseau local.
Si une machine de ton réseau local (autre que ta passerelle) envoie un paquet sur internet, il se perdra dans les méandres des réseaux puisqu'elle l'enverra avec son ip de réseau local qui n'est pas une ip publique, donc aucun ordinateur ne pourra lui répondre.
Donc, il faut que ça fonctionne comme ça: ton ordinateur de ton réseau local envoie un paquet vers internet, ta passerelle se charge de jouer le rôle de relais, mais plus encore : il faut qu'elle modifie, dans le paquet, l'adresse source de ta machine locale pour la remplacer avec ton ip publique (celle que possède ta passerelle avec son interface internet) afin de pouvoir assurer que les connexions retourneront vers ta passerelle (qui se chargera d'ailleurs de retransmettre les réponses en provenance d'internbet vers les machines concernées dans ton réseau....
Il faut donc faire du nat source, modifier les adresses sources sur ta passerelle... Ici c'est le principe du "masquerade" => masquer ton réseau local en faisant en sorte que tout paquet sortant de ton réseau local possède la même adrese ip source, ton ip publique....
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
11 avril 2005 à 23:16
11 avril 2005 à 23:16
D'ailleurs je ne sais même pas si une machine de ton réseau local autre que ta passerelle puisse envoyer un paquet sur internet si elle n'est pas "masqueradée", mon exemple du paquet qui se perd dans les méandres des réseaux car l'ip source n'est pas son ip publique était imaginaire, je ne sais pas comment ça se passe en réalité mais c'est comme ça que je m'imagine la situation....
En tout cas, voici une brève explication de netfliter:
http://www.netfilter.org/documentation/HOWTO/fr/NAT-HOWTO-4.html#ss4.1
En tout cas, voici une brève explication de netfliter:
http://www.netfilter.org/documentation/HOWTO/fr/NAT-HOWTO-4.html#ss4.1
Cool ca marché !!! Merci bcp
en fait j'ai une dernier question :
si je place un serveur derière ce firewall, est ce qu il sera visible par ftp et web à partir de l'exterieur ? j'aimerai que je pourrai accedé depuis l'exterieur
en fait j'ai une dernier question :
si je place un serveur derière ce firewall, est ce qu il sera visible par ftp et web à partir de l'exterieur ? j'aimerai que je pourrai accedé depuis l'exterieur
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
501
12 avril 2005 à 17:23
12 avril 2005 à 17:23
Je crois c'est possible mais assez ou tres complique. Il faut faire les bonnes choses avec iptables pour rediriger les ports. Moi je ne le sais pas faire ad hoc.
Dans tous les cas pour un port donne il n'y a qu'une machine qui peut faire serveur.
Dans tous les cas pour un port donne il n'y a qu'une machine qui peut faire serveur.
j'aimerai aussi faire tourner sous le serveur ( derier ma machine ) samba, est ce que c'est possible de le faire meme si la 1er machine c'est elle qui fait la passerelle?
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
501
12 avril 2005 à 17:29
12 avril 2005 à 17:29
Si le samba tourne sur la passerelle c'est visible partout: reseau local et externe (en principe, si tu ne mets pas de regles firewall qui bloquent ca).
Si le samba tourne sur une machine dans le sous-reseau c'est visible dans le sous-reseau. Par defaut ce n'est pas visible depuis l'exterieur. Pour que ce soit visible depuis l'exterieur il faut rediriger de ports sur la passerelle et la c'est complique. Par defaut les machines derrieres la passerelle sont invisibles. Tu devrais te plonger dans le NAT-Howto etc. et la doc pour iptables. Ici tu trouveras pleins de docs:
http://www.netfilter.org/
Si le samba tourne sur une machine dans le sous-reseau c'est visible dans le sous-reseau. Par defaut ce n'est pas visible depuis l'exterieur. Pour que ce soit visible depuis l'exterieur il faut rediriger de ports sur la passerelle et la c'est complique. Par defaut les machines derrieres la passerelle sont invisibles. Tu devrais te plonger dans le NAT-Howto etc. et la doc pour iptables. Ici tu trouveras pleins de docs:
http://www.netfilter.org/
mounirouche
Messages postés
1
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
2 décembre 2007
2 déc. 2007 à 09:49
2 déc. 2007 à 09:49
bonjour, vue que l'adresse eth1 de ta passerelle est 192.168.39.1 donc non visible de l'exterieur, automatiquement jamais tu poura creer des serveur dans ton reseau local, alors pour pouvoir configurer un serveur (ftp, web, ..) dans ton réseau local; il faut avoir l'accée a la premiere passerelle (celle qui existe deja) qui a vraiment une adresse IP reel, qui peut etre vue par tout le monde, et sur cette passerelle , au lieu de definir la table NAT tu defini ce qu'on appel PRE-ROUTING.
bonne chance
bonne chance
11 avril 2005 à 23:36
Tu n'as pas de firewall sur les pc windows ? Si oui c'est ca la raison!
Apart ca tu peux avoir n'importe quelles regles firewall sur le pc linux avec ton machin "/etc/init.d/iptables start/stop" . C'est loin d'etre sur que ces regles soient bonnes pour que ca marche correctement. Tu as mis quoi comme firewall ? Que donne la commande: "iptables -L -v" (pendant le machin /etc/init.d/iptables est en "start") ?
Si tu utilises le script "rc.firewall-2.4" dont je parle depuis 3 postes et si tu fais comme je l'ai propose dans le 1er lien de <1>:
http://www.commentcamarche.net/forum/affich-1138827-partage-de-connection#1
(point 4) ca va marcher (meme si tu ne le comprends pas) a condition que tu as enleve les firewalls sur les pcs Windows!!!
Une petite question: Quelle est ta priorite:
1) De faire marcher ton sous-reseau ?
2) De comprendre tous les details ?
Si c'est 1) essaye le script "rc.firewall-2.4".
Si c'est 2) va d'abord relire les reponses ci-dessus et apres etudier en details les Howtos pour IP-Masquerade, NAT et aussi la doc pour iptables notamment apropos du fonctionnement de la chaine FORWARD et nous nous reparlerons dans 3 semaines ou 2 mois.