[FTP] Explications sur le protocole !

Explications sur le protocole ! [FTP] - Windows & Software

Marsh Posté le 02-04-2003 à 18:05:53    

bon alors, j'ai besoin d'une explication sur le protocole FTP
 
vais essayer de presenter le plus clairement possible la situation ;)
 
soit un serveur FTP (n acceptant que le mode ACTIF) qui se trouve sur une machine dans un lan derriere une passerelle qui fait du NAT.
 
soit un client qui lui n'ai pas nater, il a donc une ip publique
 
il fais sa requete au serveur FTP:
 
ipclient: (1024:65535)   -->  ipserveur: 21
 
la quand la requete arrive sur la passerelle cote serveur, y a un port forwarding qui redirige le 21 sur le serveur FTP.
avec ca table de nat il est maintenant capable d assurer les echanges avec le client et faire en sorte que la reponse du serveur source port 21 ne soit pas nate et que sont port reste bien le 21...
 
ipserveur: 21    -->  ipclient: (1024:65535)
 
maintenant c'est l ouverture du port DATA, le serveur emet une requete source port 20 a destination du client.
seulement au moment ou cette requete arrive sur la passerelle, il se trouve qu'elle est nate...
 
et le source port 20 devient un highport dans les environs de 65000...
 
mon probleme c'est que ca fonctionne tres bien, et je comprend pas comment c'est possible
 
pour resumer du cote du client:
il emet une requete sur le port 21, ensuite il recoit une requete avec comme port source un highport completement aleatoire et ca ne semble ne lui poser aucun probleme...
il sait qu il s agit de la connection data du serveur FTP ??!!
 
alors la faut qu'on m explique :ouch:
 
petite precision, aucun module de suivi de connection style conntrack_FTP ou NAT_FTP n'est charge du cote du serveur comme celui du client...
 
merci d avance pour vos idees


Message édité par djtoz le 02-04-2003 à 18:06:22
Reply

Marsh Posté le 02-04-2003 à 18:05:53   

Reply

Marsh Posté le 02-04-2003 à 18:58:23    

[:ptibeur]


---------------
It ain't what you got, it's what you do with what you have... do you understand? And, it ain't what you do, it's how you do it.
Reply

Marsh Posté le 02-04-2003 à 19:22:50    

Désolé ce n'est pas une réponse, puisque depuis plusieurs semaines j'essaye (en vain) de résoudre le même problème.
 
J'ai fait des expériences avec mon routeur et aussi il met à jour tout seul sa NAT dynamique pour une connection entrante!!!
 
Deux hypothèses:
-il est capable de reconnaître les connections FTP et d'adapter son comportement (peu probable et pas forcement très facile à mettre en oeuvre)
 
- est ce que la NAT dynamique travaille exclusivement en IP+PORT : En ce sens que si elle a une règle préexistence vers IP extérieure, elle accepte de forwarder des paquets venant de cette même IP mais d'un autres PORT???

Reply

Marsh Posté le 02-04-2003 à 19:42:26    

lyynx a écrit :

Désolé ce n'est pas une réponse, puisque depuis plusieurs semaines j'essaye (en vain) de résoudre le même problème.
 
J'ai fait des expériences avec mon routeur et aussi il met à jour tout seul sa NAT dynamique pour une connection entrante!!!
 
Deux hypothèses:
-il est capable de reconnaître les connections FTP et d'adapter son comportement (peu probable et pas forcement très facile à mettre en oeuvre)
 
- est ce que la NAT dynamique travaille exclusivement en IP+PORT : En ce sens que si elle a une règle préexistence vers IP extérieure, elle accepte de forwarder des paquets venant de cette même IP mais d'un autres PORT???
 


 
non je crois que t as pas saisi ce dont je parlais
 
moi je te parle du fait que du cote client ou il n y a aucun NAT de fais, ben il recois une connection data du server avec un source port completement inconnu du au fait qu'il a etait nate en sortant du serveur FTP
 
si il n'etait pas nate du cote du sevreur, on peut concevoir que le client recevant une connection source port 20 se dise ca c'est une connection data donc j accepte.
 
mais la le source port est totalement inconnu, c'est ca qui est etrange, parce ca marche qd meme, donc le client l accepte...

Reply

Marsh Posté le 02-04-2003 à 19:46:27    

a je suis en train de pense a un truc
en fait peut etre que lorsque le client etablie sa connection commande (port 21), sachant qu'il va faire du mode actif dis par l'intermediaire de la connection commande au serveur FTP d'etablir sa connection data sur tel port du client
 
et a ce moment la peu importe le source port de la connection data partant du serveur
le client accepte comme connection data la requete arrivant a destination du port precise ulterieurement...
 
ca dois etre ca, parce que je vois pas d autre possibilite...

Reply

Marsh Posté le 02-04-2003 à 20:48:36    

une piste pour que tu trouve la solution :
regarde les ports ouverts sur ton client derriere le nat
regarde les ports ouverts apres le nat
et regarde la commande PORT xxx,xxx,xxx,xxx,5,199 envoyer au ftp
tu vas remaquer qq ptit truc ;)

Reply

Sujets relatifs:

Leave a Replay

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