Comment vérifier le FTP passif et actif

14

Comment vérifier quel FTP (passif ou actif) fonctionne?

Par défaut, le FTP passif fonctionne sous Linux, mais comment vérifier?

Rahul Patil
la source
2
Votre question est très vague. Téléchargez-vous via FTP ou exécutez-vous un serveur FTP?
jofel
@Rahul Patil Ma réponse correspond-elle à votre question? Dans l'affirmative, veuillez envisager d'accepter ma réponse.
John Siu
après entrer à nouveau, passiveil est dit passif désactivé.
Rahul Patil

Réponses:

11

J'ai trouvé la réponse comme ci-dessous.

en mode passif, nous pouvons exécuter la lscommande, mais en mode actif, nous devons désactiver manuellement le mode passif en tapant la passivecommande, puis il acceptera la lscommande sinon il donne 550 autorisation refusée erreur. voir ci-dessous (pasv_enable = NO dans vsftpd.conf)

ftp> passive
Passive mode on.
ftp> ls
550 Permission denied.
Passive mode refused.
ftp> passive
Passive mode off.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-rw-r--    1 503      503             0 Jan 11  2013 files1
-rw-rw-r--    1 503      503             0 Jan 11  2013 files10
-rw-rw-r--    1 503      503             0 Jan 11  2013 files2
-rw-rw-r--    1 503      503             0 Jan 11  2013 files3
-rw-rw-r--    1 503      503             0 Jan 11  2013 files4
-rw-rw-r--    1 503      503             0 Jan 11  2013 files5
-rw-rw-r--    1 503      503             0 Jan 11  2013 files6
-rw-rw-r--    1 503      503             0 Jan 11  2013 files7
-rw-rw-r--    1 503      503             0 Jan 11  2013 files8
-rw-rw-r--    1 503      503             0 Jan 11  2013 files9
-rw-r--r--    1 0        0           10240 Jan 11  2013 test.tar
226 Directory send OK.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-rw-r--    1 503      503             0 Jan 11  2013 files1
-rw-rw-r--    1 503      503             0 Jan 11  2013 files10
-rw-rw-r--    1 503      503             0 Jan 11  2013 files2
-rw-rw-r--    1 503      503             0 Jan 11  2013 files3
-rw-rw-r--    1 503      503             0 Jan 11  2013 files4
-rw-rw-r--    1 503      503             0 Jan 11  2013 files5
-rw-rw-r--    1 503      503             0 Jan 11  2013 files6
-rw-rw-r--    1 503      503             0 Jan 11  2013 files7
-rw-rw-r--    1 503      503             0 Jan 11  2013 files8
-rw-rw-r--    1 503      503             0 Jan 11  2013 files9
-rw-r--r--    1 0        0           10240 Jan 11  2013 test.tar
226 Directory send OK.

lsla liste que nous avons demandée sur le serveur revient via le port 20 sur le serveur à une connexion haut port sur le client. Aucune utilisation du port 21 sur le serveur n'est faite pour renvoyer les résultats de la commande ls sur le serveur.

ci-dessus est extrait de "http://www.markus-gattol.name/ws/vsftpd.html"

Rahul Patil
la source
D'accord, passiveavec lsau sein du client est un moyen facile de vérifier. En fait, si nous pouvons envoyer "PASV" au serveur, le serveur répondra à la réponse. Mais je ne trouve pas la commande dans le client ftp pour le faire.
John Siu
8

Depuis le client ftp, pour vérifier si le serveur ftp distant prend en charge le mode passif, après la connexion, tapez quote PASV.

Voici des exemples de connexion à un serveur vsftpd avec le mode passif activé et désactivé

vsftpd avec pasv_enable=NO

# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.3.5)
Name (localhost:john): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quote PASV
550 Permission denied.
ftp> 

vsftpd avec pasv_enable=YES

# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.3.5)
Name (localhost:john): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quote PASV
227 Entering Passive Mode (127,0,0,1,173,104).
ftp> 

La commande ftp quoteenvoie tous les arguments qui la suivent au serveur distant. Le serveur distant les traitera comme commande / demande le cas échéant. PASVest une demande pour que le serveur utilise le mode passif.

John Siu
la source
même "pasv_enable = NO" dans vsftpd.conf, la commande passive indique que le mode passif est activé.
Rahul Patil
L'avez-vous testé derrière un routeur nat? Si vous pouvez télécharger un fichier, il est en fait activé. Une autre façon est de forcer votre client ftp à utiliser uniquement le mode passif et de le tester.
John Siu
Salut John, S'il vous plaît, vérifiez ci-dessus et faites-moi savoir si je me trompe
Rahul Patil
@RahulPatil oui, vous avez raison. Ma réponse d'origine ne définissait le mode passif que du côté client . J'ai révisé ma réponse avec la bonne façon. Votre info / méthode est également correcte.
John Siu