Как проверить пассивный и активный FTP

14

Как проверить, какой FTP (пассивный или активный) работает?

По умолчанию пассивный FTP работает в Linux, но как я могу проверить?

Рахул Патил
источник
2
Ваш вопрос очень расплывчатый. Вы загружаете через FTP или используете FTP-сервер?
Джофель
@Rahul Patil Мой ответ соответствует вашему вопросу? Если это так, пожалуйста, примите мой ответ.
Джон Сиу
после ввода снова passiveон говорит, пассивный выкл.
Рахул Патил

Ответы:

11

Я нашел ответ, как показано ниже.

в пассивном режиме мы можем запустить lsкоманду, но в активном режиме мы должны вручную отключить пассивный режим, набрав passiveкоманду, после чего она примет lsкоманду, в противном случае выдаст ошибку 550 «отказано в разрешении». смотрите ниже (pasv_enable = NO в 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.

lsлистинг, который мы запросили на сервере, возвращается через порт 20 на сервере к соединению с высоким портом на клиенте. Не используется порт 21 на сервере для отправки результатов команды ls на сервер.

выше взято из "http://www.markus-gattol.name/ws/vsftpd.html"

Рахул Патил
источник
Согласитесь, passiveс lsклиентом это простой способ проверить. На самом деле, если мы сможем отправить «PASV» на сервер, сервер ответит на него. Но я не могу найти команду в клиенте ftp, чтобы сделать это.
Джон Сиу
8

В ftp-клиенте, чтобы проверить, поддерживает ли удаленный ftp-сервер пассивный режим, после входа в систему введите quote PASV.

Ниже приведены примеры подключения к серверу vsftpd с включенным и выключенным пассивным режимом.

vsftpd с 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 с 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> 

Команда ftp quoteотправляет все аргументы, следующие за ней, на удаленный сервер. Удаленный сервер будет обрабатывать их как команду / запрос, если применимо. PASVзапрос к серверу использовать пассивный режим

Джон Сиу
источник
даже "pasv_enable = NO" в vsftpd.conf, пассивная команда говорит, что пассивный режим включен.
Рахул Патил
Вы проверяли это за маршрутизатором nat? Если вы можете скачать файл, то он действительно включен. Другой способ - заставить ваш ftp-клиент использовать только пассивный режим и протестировать его.
Джон Сиу
Привет Джон, пожалуйста, проверьте выше сообщение и дайте мне знать, если я не прав
Рахул Патил
@RahulPatil да, вы правы. Мой оригинальный ответ только установил пассивный режим на стороне клиента . Я исправил свой ответ с правильным способом. Вы информация / метод также правильно.
Джон Сиу