Accès impossible à mon ftp (proftpd) derrière la passerelle

Accès impossible à mon ftp (proftpd) derrière la passerelle - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 26-02-2004 à 17:55:50    

Salut,
 
je suis en train de me faire un petit serveur ftp, mais je galère pas mal.
J'utilise chez moi une passerelle sous Gentoo, un PC sous Gentoo qui hébergera le ftp et un PC sous Windows.
A partir du PC sous Windows et en entrant mon ip locale, je me connecte sans problème au ftp.
Mais impossible de se connecter via internet.
 
le ftp choisi est proftpd.
Dans le fichier de conf, j'ai bien précisé "MasqueradeAddress blabla.no-ip.org"
Le client no-ip fonctionne bien car le ping passe.
 
Je pense que ce n'est pas un problème de port sur la passerelle car le ftp fonctionnait il y a quelque temps sous Windows (je n'avais pas encore mis la Gentoo) et la règle utilisée permettait de se connecter.
A tout hasard je la remet:

iptables -t nat -A PREROUTING -i ppp0 -s 0.0.0.0/0 -p tcp --destination-port 21 -j DNAT --to-destination 192.168.5.2:21
iptables -A FORWARD -p tcp -i ppp0 -d 192.168.5.2 --dport 21 -m state --state ! INVALID -j ACCEPT


 
Donc je ne comprend pas pourquoi je ne peux pas me logguer via le net.


Message édité par Arcord le 26-02-2004 à 17:56:54
Reply

Marsh Posté le 26-02-2004 à 17:55:50   

Reply

Marsh Posté le 26-02-2004 à 18:04:55    

Parce que as installer un serveur NAT, et ton pc ne peut etre contactée par une machine exterieure si elle n'en a pas initié la demande.
Tu dois mapper un port pour que les requetes effecuter sur ta passerelle soit rediriger vers le serveur ftp.
Je t'avoue que je ne saurais plus t'aider.
Bon courage et je laisse la place aux spécialistes ;)


Message édité par glor le 26-02-2004 à 18:06:53
Reply

Marsh Posté le 26-02-2004 à 18:12:05    

Euh, ben mes 2 lignes dans iptables ne font pas ça justement? :??:

Reply

Marsh Posté le 26-02-2004 à 19:38:25    

Je ne sais pas, il nous faut un gars qui s'y connais..
Le -s 0.0.0.0/0 me parait bizarre..

Reply

Marsh Posté le 26-02-2004 à 19:57:42    

le -s 0.0.0.0/0 signifie que j'accepte en tant que source n'importe quelle adresse ip (enfin, si j'ai bien compris la doc).

Reply

Marsh Posté le 26-02-2004 à 20:01:12    

ton reseau est :  
internet|---|passerelle|---|ftp| ?
edit : c'est pas tres clair -i : c'est pour l'interface d'entré ;)
Bon la j'ai pas trop le temps ;)


Message édité par GUG le 26-02-2004 à 20:19:54
Reply

Marsh Posté le 26-02-2004 à 20:02:08    

ah aussi histoire de passif/actif
pour le passif faut mettre un range de port et l'ouvir sur ton firewall par defaut ! 0:1024

Reply

Marsh Posté le 26-02-2004 à 20:11:52    

GUG a écrit :

ton reseau est :  
internet|---|passerelle|---|ftp| ?
Si oui, comment veux tu que qq un de l'exterieur est acces au reseau de l'interieur avec la deuxieme regle, ou alors j'ai rien compris ;)
Bon la j'ai pas trop le temps ;)


 
C'est bien ça.
Pourtant quand le PC qui héberge le ftp tournait sous Windows, j'utilisais exactement les mêmes règles et cela fonctionnait. C'est pour ça que je ne comprend pas trop d'où viens le souci cette fois-ci.
 
Mais s'il faut changer les règles pour que cela fonctionne je n'ai rien contre.

Reply

Marsh Posté le 26-02-2004 à 20:38:49    

et le port 20 alors fo pas l oublier :p


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 20:45:00    

Bon, j'ai changé un peu mes règles.
Là j'ai ça:

iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to 192.168.5.2:21
iptables -t nat -A PREROUTING -p tcp --dport 60000:65535 -j DNAT --to 192.168.5.2


 
Désormais je n'ai plus le message disant qu'il est impossible de contacter le serveur. Mais le délai imparti est trop long -> je me fais jeter. :(
 
tomate77, que faut-il faire avec le port 20?

Reply

Marsh Posté le 26-02-2004 à 20:45:00   

Reply

Marsh Posté le 26-02-2004 à 20:54:25    

Le port 20 est le retour data
 
as tu dit a proftpd d'utiliser le range de port pour le passif ?

Reply

Marsh Posté le 26-02-2004 à 20:56:12    

>iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to 192.168.5.2:21  
 
tu n'as pas besoin de :21, et met -i ethX ou ppp0, car je crois que des que tu voudras te connecté a un ftp ca te redirigera vers 192.168.5.2.

Reply

Marsh Posté le 26-02-2004 à 21:05:31    

Ok j'ai viré le 21.
Avec ppp0 -> impossible de contacter le serveur.
Avec eth0-> Délai imparti dépassé.
 
Pourtant j'aurai cru qu'il aurait fallu utilisé ppp0 puisque la connection entre par le modem (ppp0) et va au "serveur" en passant par eth0. :??:
 
Pour proftpd, je lui ai bien préciser d'utiliser cette plage de ports. :)


Message édité par Arcord le 26-02-2004 à 21:06:12
Reply

Marsh Posté le 26-02-2004 à 21:09:13    

Arcord a écrit :

Ok j'ai viré le 21.
Avec ppp0 -> impossible de contacter le serveur.
Avec eth0-> Délai imparti dépassé.
 
Pourtant j'aurai cru qu'il aurait fallu utilisé ppp0 puisque la connection entre par le modem (ppp0) et va au "serveur" en passant par eth0. :??:
 
Pour proftpd, je lui ai bien préciser d'utiliser cette plage de ports. :)

il fo activer le suivi de connexion pour le ftp ds iptables ;)


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 21:09:24    

et ouvrir les ports 20 et 21 ;)


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 21:12:23    

Pour les ports 20 et 21, j'ai ça:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j DNAT --to 192.168.5.2
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 20 -j DNAT --to 192.168.5.2
 
un petit nmap me confirme qu'ils sont ouvert.
 
 
Par contre, pour le suivi de connection.... je fais ça comment?


Message édité par Arcord le 26-02-2004 à 21:12:32
Reply

Marsh Posté le 26-02-2004 à 21:25:17    

Arcord a écrit :

Pour les ports 20 et 21, j'ai ça:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j DNAT --to 192.168.5.2
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 20 -j DNAT --to 192.168.5.2
 
un petit nmap me confirme qu'ils sont ouvert.
 
 
Par contre, pour le suivi de connection.... je fais ça comment?

ca je sais po mais il fo le faire :D


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 21:27:11    

tomate77 a écrit :

ca je sais po mais il fo le faire :D


 
Mouarf, oki. Merci quand même pour le coup de main. :)
Si ma mémoire est bonne, ce n'est nécessaire que pour les transactions ftp passive. ou active, je sais plus.
 
Bah, je vais replonger dans la doc et on verra bien.

Reply

Marsh Posté le 26-02-2004 à 21:28:08    

Arcord a écrit :


 
Mouarf, oki. Merci quand même pour le coup de main. :)
Si ma mémoire est bonne, ce n'est nécessaire que pour les transactions ftp passive. ou active, je sais plus.
 
Bah, je vais replonger dans la doc et on verra bien.

oui en passif
 
tu es en actif ?? (j ai pas fait gaffe :D)
 
bon sinon t as regarde ds les logs ce k il se passait ?


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 21:31:24    

Par défaut IE6 est en actif je crois. D'ailleurs l'onglet lui disant d'utiliser une connection passive est décocher. Donc ça devrait aller je pense.
Et comme pour les tests j'utilise IE6...
 
Par contre, je n'ai aucun log concernant le ftp dans /var/log.

Reply

Marsh Posté le 26-02-2004 à 21:35:14    

Arcord a écrit :

Par défaut IE6 est en actif je crois. D'ailleurs l'onglet lui disant d'utiliser une connection passive est décocher. Donc ça devrait aller je pense.
Et comme pour les tests j'utilise IE6...
 
Par contre, je n'ai aucun log concernant le ftp dans /var/log.

:/


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 21:38:49    

Je viens de tenter de me connecter avec Filezilla qui permet ed choisir entre mode actif et passif.
Impossible de se connecter. :(

Reply

Marsh Posté le 26-02-2004 à 22:01:35    

Arcord a écrit :

Je viens de tenter de me connecter avec Filezilla qui permet ed choisir entre mode actif et passif.
Impossible de se connecter. :(

bon c est pas normal du tout ca :o
 
j ai pure-ftpd avec les ports 20 et 21 d ouverts, et aucun pb
 
essaie avec pure-ftpd peut etre :D


---------------
:: Light is Right ::
Reply

Marsh Posté le 26-02-2004 à 22:15:48    

iptables -t nat -A PREROUTING -p tcp --dport 21 -i ppp0 -j DNAT --to 192.168.0.1:21
iptables -t nat -A PREROUTING -p tcp --dport 20 -i ppp0 -j DNAT --to 192.168.0.1:20
 
 
marche tres bien chez moi, routeur sous debian, serveur ftp sous XP
 

Reply

Marsh Posté le 26-02-2004 à 22:16:40    

tomate77 a écrit :


essaie avec pure-ftpd peut etre :D


 
tout se configure avec un fichier de conf?
il est "simple"?
 
J'ai pas de préférence particulière pour le serveur.

Reply

Marsh Posté le 26-02-2004 à 22:21:51    

Arcord a écrit :


 
tout se configure avec un fichier de conf?
il est "simple"?
 
J'ai pas de préférence particulière pour le serveur.

oui je crois


---------------
:: Light is Right ::
Reply

Marsh Posté le 20-05-2004 à 09:47:53    

En résumé:  
*FTP mode Actif:
-> Le port data utilisé est le port tcp 20 sur le serveur (et non pour le mode passif)
-> Le client FTP doit pouvoir etre joint sur les ports > 1024, 2 cas possibles:
 - sans firewall, nikel
 - avec firewall (soit rediriger les ports > 1024 sur le client en question, soit sous linux, charger les modules netfilter: ip_nat_ftp,ip_conntrack_ftp)
 
 
iptables -t nat -A PREROUTING -p tcp --dport 20,21 -i ppp0 -j DNAT --to 192.168.5.2  
iptables -A FORWARD -p tcp -i ppp0 -o eth0 -d 192.168.5.2 --dport 20,21 -m state --state ! INVALID -j ACCEPT
 
*FTP mode Passif
-> Necessite pour le serveur FTP d'etre join sur le port 21 et les ports > 1024 ( proftpd censé etre modifié pour limiter le range )
 
iptables -t nat -A PREROUTING -p tcp --dport 21 -i ppp0 -j DNAT --to 192.168.5.2  
iptables -A FORWARD -p tcp -i ppp0 -o eth0 -d 192.168.5.2 --dport 21 -m state --state ! INVALID -j ACCEPT
 
iptables -t nat -A PREROUTING -p tcp --dport 60000:65535 -i ppp0 -j DNAT --to 192.168.5.2
iptables -A FORWARD -p tcp -i ppp0 -o eth0 -d 192.168.5.2 --dport 60000:65535 -j ACCEPT
 
-> voir par exemple http://slacksite.com/other/ftp.html


Message édité par myeve le 20-05-2004 à 09:48:46
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed