Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Iptables pour serveur avec connexion ADSL partagée
Envoyé par: eric34

Merci de m'aider à paramétrer Iptables pour faire fonctionner un serveur http sur un PC connecté à internet via une passerelle faisant du SNAT pour partager la connexion.

Ma configuration :
trois PC en réseau local .
Un de ces PC est sous linux et sert de passerelle. Il est connecté au web en ADSL par l'interface PPP0. Il partage cette connexion avec les 2 autres PC par l'interface ethernet (eth0).

Je veux mettre sur un de ces deux PC un serveur http.

J'ai lu tout ce que j'ai trouvé sur le paramétrage d'iptables (merci et félicitation au passage à Lea , très bon document ).
Malgrès ces efforts , je n'arrive pas à faire fonctionner mon serveur ?-( .
Quelcun peut il me donner un exemple de paramétrage qui permet de contourner le problème des partages de connexion?

Merci beaucoup d'avance.

Eric

Poste le Saturday 28 August 2004 19:44:25
Répondre     Citer    
Re: Iptables pour serveur avec connexion ADSL partagée
Envoyé par: Perramus

Bonsoir,

J'ai personnellement pas de réseau, mais theoriquement iptables est parfaitement capable de gérer le partage de connexion via la chain Forward de Filter et la cible Masquerade de Nat ( si je me trompe pas )...

Donne peut-être un copier / coller de ton script ( en masquant les éventuelles adresses IP... ) je pense que ce sera plus simple pour que des gens plus compétent puissent te dire où ça bloque... :-)


Poste le Saturday 28 August 2004 20:10:26
Répondre     Citer    
Re: Iptables pour serveur avec connexion ADSL partagée
Envoyé par: greywolf

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination <IP_privée_du_PC_serveur_web>:80

iptables -t filter -A FORWARD -i ppp0 -o eth0 -p tcp --dport 80 -j ACCEPT


(accepter dans l'autre sens les connexions en état ESTABLISHED si ce n'est déjà fait)

Poste le Sunday 29 August 2004 07:10:08
Répondre     Citer    
Re: Iptables pour serveur avec connexion ADSL partagée
Envoyé par: eric34

Tout d'abord , merci de votre aide.

J'ai essayé cette solution mais le serveur ne reçoit toujours pas les messages.

La règle sur la table NAT doit , si j'ai bien compris , router les paquets arrivant sur ppp0 port 80 vers mon serveur.
En fait rien n'a changé en ajoutant ces deux règles , je navigue toujours aussi bien sur tous les PC, aurais je oublié un GROS TRUC??.

Mon explication n'était pas complète.

En fait je cherche à faire tourner un serveur d'un jeu de carte sur le PC "serveur" tout en pouvant faire de l'internet sur les autres PC et ce PC "serveur":

PC1 sous linux = passerelle avec connection à internet sur ppp0 , 2 PC (PC2 et PC3) reliés à cette passerelle par eth0. Navigation sur internet à partir de PC1.

PC2 sous window : jeux et navigation internet

PC3 : sous Window ou Linux . Serveur de jeu sous window sur le port 33333 (du moins c'est mon intention).

Voici une sauvegarde de mes règles IPTABLE (certaines règles sont redondantes , je n'ai pas fait de ménage après tous mes nombreux essais). #%b
====================================
# Generated by iptables-save v1.2.7a on Sun Aug 29 15:28:39 2004
*mangle
tongue sticking out smileyREROUTING ACCEPT [2145075:838394932]
:INPUT ACCEPT [531329:149368749]
:FORWARD ACCEPT [8325470:3165637059]
:OUTPUT ACCEPT [80057:4016098]
tongue sticking out smileyOSTROUTING ACCEPT [8562976:3192006243]
COMMIT
# Completed on Sun Aug 29 15:28:39 2004
# Generated by iptables-save v1.2.7a on Sun Aug 29 15:28:39 2004
*nat
tongue sticking out smileyREROUTING ACCEPT [95779:4929647]
tongue sticking out smileyOSTROUTING ACCEPT [514:31299]
:OUTPUT ACCEPT [514:31299]
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination <PC3>:80
-A POSTROUTING -s xxx.yyy.0.0/255.255.255.0 -o ppp0 -j MASQUERADE
COMMIT
# Completed on Sun Aug 29 15:28:39 2004
# Generated by iptables-save v1.2.7a on Sun Aug 29 15:28:39 2004
*filter
:INPUT ACCEPT [74600:3723419]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [79789:3930048]
:local-internet - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -j local-internet
-A FORWARD -p tcp -m tcp --dport 33333 -j ACCEPT
-A FORWARD -j local-internet
-A FORWARD -p tcp -m tcp --dport 33333 -j ACCEPT
-A FORWARD -i ppp0 -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -i ppp0 -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -i ppp0 -o eth0 -p tcp -m tcp --dport 33333 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A local-internet -i ! ppp0 -m state --state NEW -j ACCEPT
-A local-internet -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Sun Aug 29 15:28:39 2004

=====================================================================

Poste le Sunday 29 August 2004 12:41:01
Répondre     Citer    
Re: Iptables pour serveur avec connexion ADSL partagée
Envoyé par: greywolf

ben faut faire une règle de prerouting avec le port en question.. j'avais mis 80 en pensant que tu voulais mettre un serveur web sur le PC3 (i.e. Apache, caudium,...)

Pour ton jeu faut voir le type de connection que ça nécessite. 1 seule connexion ou plusieurs avec ports négociés..

Poste le Sunday 29 August 2004 17:55:28
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Iptables pour serveur avec connexion ADSL partagée
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons