| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
kursion
Inscrit le: 26 Sep 2005 Messages: 57
|
Posté le: Mer Jan 09, 2008 11:16 pm |
Sujet du message: Need comprendre FTP
|
|
Hello hello,
voilà j'ai installé Gene6 FTP depuis un petit moment déjà sur une machine A en écoute sur le port 20 et pareil sur une machine B en écoute sur le port 21.
La machine B qui écoute sur le port 21 marche impeccablement bien mais sur la machine A, c'est la cata: "Impossible de listé les fichier" lorsque que je me connecte.
Quels ports utilisent donc les serveurs ftp et les clients ????? ^^
Merci à vous |
|
| Revenir en haut |
|
 |
Celelibi

Inscrit le: 29 Mar 2006 Messages: 770
|
Posté le: Jeu Jan 10, 2008 3:10 am |
Sujet du message:
|
|
Le protocole FTP utilise deux connexions, une pour transmettre les commandes (c'est la connexion que tu établie en te connectant sur le port 21), et l'autre pour transmettre les fichiers.
Le fait que le serveur ftp soit en mode actif ou passif va changer le sens d'établissement de la connexion pour les données. _________________ Il y a un boulet qui sommeille en chacun de nous. (enfin, surtout vous...) |
|
| Revenir en haut |
|
 |
m3ph Admin forum/chat

Inscrit le: 11 Sep 2005 Messages: 485 Localisation: Région parisienne
|
Posté le: Jeu Jan 10, 2008 11:24 pm |
Sujet du message:
|
|
Ouais, à l'heure actuelle il est miniut 25, donc je vais ptete dire une connerie
bref je vais au bout de ma betise.
Comme l'a dit Celelibi, le proto FTP utilise 2 ports.
L'un pour le listing des fichiers (consultation on va dire, port 20 - data-), et l'autre pour le transfert de fichiers (port 21 -transfert-). _________________ Hacktivissement vôtre.
m3ph |
|
| Revenir en haut |
|
 |
kursion
Inscrit le: 26 Sep 2005 Messages: 57
|
Posté le: Sam Jan 12, 2008 2:29 am |
Sujet du message:
|
|
Malgré vos tentatives d'explications très brèves j'ai enfin compris la grosse différence entre le mode PASSIF et ACTIF.
Parlons coté serveur mode ACTIF: rien d'interessant car c'est la mode où le serveur écoute sur le port 21 et le client sur un port définit (par le serveur) supérieur à 1024. C'est un mode à éviter car c'est le client qui doit ouvrir le port afin de pouvoir LISTer, TRANSFERTer des fichiers. Généralement utilisé quand le serveur est derrière un firewall qu'on ne peut pas toucher/configurer. Le port 21 sert pour les commandes et le port supérieur à 1024 pour les data... ouvert du coté client sur le firewall.
Parlons coté serveur mode PASSIF: bcp plus interessant car on spécifie un port d'écoute pour le serveur exemple pour le serveur A: le port 20 et une plage de connexion pour les transferts, exemple: 1024-1034. C'est ainsi que les ports devront être ouvert du coté serveur cette fois-ci et non du coté client. Le port 20 sert pour les commandes et la plage de port ouverte sur le serveur sert pour les data !!! avantage => plusieurs personnes peuvent occuper des ports (puisqu'il s'agit d'une plage de port), possibilité d'avoir plusieurs serveur FTP avec un port 90 et une plage de port de 4000-4003 par exemple :p
BREF, je suis crevé mais tout ça pour dire que le mode PASSIF est en fait celui qu'il faudrait toujours utiliser pour avoir un serveur clean ! Dsl pour mon explication mal formulé mais il est 3h20 et j'ai plus de café !
Et ATTENTION: c'est pas comme pour apache où seul le port 80 ou 443 est ouvert, pour le ftp on a UN PORT (normalement 21) et une plage de port libre au choix de l'admin (souvent 50000-50100 pour éviter les conflits).
Bye
++  |
|
| Revenir en haut |
|
 |
kursion
Inscrit le: 26 Sep 2005 Messages: 57
|
Posté le: Sam Jan 12, 2008 2:58 am |
Sujet du message:
|
|
A noté que le part defaut on dirait que les clients ftp qui tentente une connection sur le port 21, essaie de lister les fichiers en passant par le port 20.
Pour une configuration multiserveur FTP je vous conseil donc de mettre cette série par exemple
Serveur A: PORT: 1024, plage: 1025-2035
Serveur B: PORT: 1036, plage: 1037-1047
Du coup les deux serveurs FTP sur un même réseau marche impec... Attention à donner les adresses correctes aux utilisateur
A => serveurA:1024
B => serveurB:1036
En clair, en évitant de passer par les ports 21, 20 on règle bcp de souci :p |
|
| Revenir en haut |
|
 |
Celelibi

Inscrit le: 29 Mar 2006 Messages: 770
|
Posté le: Sam Jan 12, 2008 9:17 am |
Sujet du message:
|
|
Je ne comprends pas pourquoi tu ne met pas simplement les deux serveurs sur le port 21 de leurs machines respectives.
Il n'y a aucun problème possible puisque ce sont deux machines distinctes (avec donc des adresses IP différentes).
À moins que tu veuille rendre tes deux serveurs accessible derrière un NAT.
Lors d'une connexion FTP, le client et le serveur ont chacun leur port par défaut pour le transfert de données. En mode passif il devrait établir la connexion de données à partir du port L-1 (c'est à dire 20 si les commandes passent par le port 21).
Puisque tu as compris globalement le protocole FTP, tu vois qu'il devient possible de transférer des données entre serveurs sans que celles-ci ne transitent par le client. Le client ouvre deux connexions de commandes sur les deux serveurs puis fait transférer les données, mais ça veut bien dire qu'il faudra un serveur en mode actif et l'autre en mode passif.
Si tu veux en savoir plus sur le protocole FTP : ftp://ftp.rfc-editor.org/in-notes/std/std9.txt
(Standard numéro 9 ! C'est qu'il est plus tout jeune le protocole FTP :p) _________________ Il y a un boulet qui sommeille en chacun de nous. (enfin, surtout vous...) |
|
| Revenir en haut |
|
 |
kursion
Inscrit le: 26 Sep 2005 Messages: 57
|
Posté le: Dim Jan 13, 2008 3:06 pm |
Sujet du message:
|
|
>"À moins que tu veuille rendre tes deux serveurs accessible derrière un NAT. "
Voilà le gros problème . Sinon il devient clair que je laisse les ports par défaut :p |
|
| Revenir en haut |
|
 |
Celelibi

Inscrit le: 29 Mar 2006 Messages: 770
|
Posté le: Dim Jan 13, 2008 9:43 pm |
Sujet du message:
|
|
Note que si tu fais du NAT avec iptables il est possible de laisser les serveurs FTP en mode passif sans avoir besoin de faire de redirection particulière avec le module nf_conntrack_ftp. (À condition d'avoir autorisé les "connexions relatives".)
Par contre je sais pas comment se débrouille quand il y a deux serveurs à suivre.
En même temps là tu veux faire un serveur avec du windows. Mettre un windows en serveur c'est comme faire du sexe avec des animaux, c'est pas naturel.  _________________ Il y a un boulet qui sommeille en chacun de nous. (enfin, surtout vous...) |
|
| Revenir en haut |
|
 |
sanguinarius Staff
Inscrit le: 16 Nov 2007 Messages: 88
|
Posté le: Lun Jan 14, 2008 7:58 am |
Sujet du message:
|
|
Et esque du port forwarding ne suffirait pas ?  |
|
| Revenir en haut |
|
 |
Celelibi

Inscrit le: 29 Mar 2006 Messages: 770
|
Posté le: Lun Jan 14, 2008 2:24 pm |
Sujet du message:
|
|
Si bien sûr, mais ça demande de configurer en plus sur le routeur la plage de port supplémentaire alors que iptables est capable de forwarder tout seul les bons paquets en regardant les commandes FTP échangées.
Mais bon, c'était juste une petite aparté à propos d'une fonction d'iptables.  _________________ Il y a un boulet qui sommeille en chacun de nous. (enfin, surtout vous...) |
|
| Revenir en haut |
|
 |
kursion
Inscrit le: 26 Sep 2005 Messages: 57
|
Posté le: Lun Jan 14, 2008 2:59 pm |
Sujet du message:
|
|
le serveur tourne sur windowz... linux sera pour plus tard
Il s'agit surtout d'un problème de NAT... et dans se cas Iptable ne change rien puissque cela se passe sur le routeur. Solutions pour deux serveurs ftp:
Un port principal pour les commands, une plage pour le transfet par serveur !
Solution règlée... et cela marche diaboliquement bien  |
|
| Revenir en haut |
|
 |
|