Problem with the hooks (forwarding decision problem) (English/French)

Clockover clockover at wanadoo.fr
Wed Aug 17 21:49:28 CEST 2005


Hello,

My local network:

Notebook (1)-------internet---------router--------Serveur-VPN (3)
                                                            |
                                                             ---------- 
LocalNetwork (2)

So I have a VPN server with the iptables' configuration as this (only a 
part):

INPUT (drop):
ACCEPT     tcp  --  any    any     localnet/24          Server-VPN       
 tcp dpt:ssh
ACCEPT     tcp  --  any    any     localnet/24          Server-VPN       
 tcp dpt:10000
 
FORWARD (drop):
ACCEPT     all  --  bond0  ppp+    localnet/24          localnet/24
ACCEPT     all  --  ppp+   bond0   localnet/24          localnet/24
 
OUTPUT (drop):
ACCEPT     tcp  --  any    any     Server-VPN         localnet/24       
  tcp spt:ssh
ACCEPT     tcp  --  any    any     Server-VPN         localnet/24       
  tcp spt:10000

The server isn't the gateway of the local network, there is a router before.
I connect to the VPN Network without any problem.

If I ping a computer of the local network(2) it's good. And if I use a 
service (SSH, FTP, Samba....) on the Server VPN (3) no problem too.
And if I open a remote SSH on a computer of the local network (2) it's 
good but if I open Webmin on the same computeur (2), it's failed!
The Firewall stop my request !!

I try to open the chaine OUTPUT (Accept policy) and now it's run. and if 
I go to see with "iptables -L -v", I see that the IP packets go to the 
FORWARD chaine.

Why I must open the OUTPUT chaine ??
That would have pass in the FORWARD chaine as it's not for the Sver VPN, 
no ?
And why SSH run correctly and not Webmin ?

I have other examples:
-Terminal Server to a computer of the local network (2) => no problem
-Open a VNC session to a computer to a computer of the local network => 
no problem but the data are bloqued (the session opens but not texture
And I haven't any exeption for VNC or Terminal Server on the INPUT 
Chaine and OUTPUT chaine.

Why this error ?
I have forget anything ?
All my request was send by the computer (1) connected on the VPN of course.

Thanks :-)
Sorry for my english

Message in French:

Voila j'ai un serveur VPN avec les règles iptables suivantes (extrait 
j'ai jsute mis ce qui nous interresse):
 
INPUT (drop):
ACCEPT     tcp  --  any    any     localnet/24          Serveur-VPN     
   tcp dpt:ssh
ACCEPT     tcp  --  any    any     localnet/24          Serveur-VPN     
   tcp dpt:10000
 
FORWARD (drop):
ACCEPT     all  --  bond0  ppp+    localnet/24          localnet/24
ACCEPT     all  --  ppp+   bond0   localnet/24          localnet/24
 
OUTPUT (drop):
ACCEPT     tcp  --  any    any     Serveur-VPN         localnet/24       
  tcp spt:ssh
ACCEPT     tcp  --  any    any     Serveur-VPN         localnet/24       
  tcp spt:10000
 
Le serveur ne fait pas office de passerelle, il y a un modem/routeur 
devant.  
Donc je me connecte sur mon VPN à distance sans problème.
 
Si je ping une bécane du réseau local aucun problème, idem si je demande 
le moindre services hebergé par le Serveur-VPN.
Et les choses se corsent juste maintenant.
Si j'ouvre une session SSH à distance sur une machine du reseau local, 
ca fonctionne tout bien correctement mais si j'essaye d'ouvrir une 
session Webmin, ça ne fonctionne pas! Le firewall le bloque.
Alors que les règles sont similaires... 
 
J'ai essayé en ouvrant la chaîne OUTPUT (ACCEPT par défaut) ça 
fonctionne nickel. Après ça, je referme cette règle une fois ma session 
établie ca continue à tourner nickel et je vois en faisant "iptables -L 
-v" les règles contenu dans FORWARD faire transiter les paquets.
 
Alors d'ou vient cette neccessité d'avoir une ouverture sur OUTPUT ???
N'est-ce pas senser passer directement sur la chaîne FORWARD vu que ma 
requête n'est pas à destination du serveur ?  
Et pourquoi ça fonctionne avec SSH mais pas Webmin ?

J'ai d'autres exemples en tête:
 
-Terminal Server sur un poste du reseau local => nickel
-Ping vers un poste du reseau local => nickel
-Ouverture d'une session VNC sur un poste => nickel mais le flux de 
données est bloqué après
 
J'ai aucune règles pour ces trois services dans mes chaînes INPUT/OUTPUT 
pourtant (donc DROP).
 
Comment expliquer cette erreur de routage ?
Ou est-ce moi qui est à coté de quelque chose ?
Toutes mes requètes etant bien sûr émise de l'ordinateur (1) connecté à 
distance.

Merci



More information about the netfilter mailing list