grims
@grims
Не курю

425 Can't open data connection for transfer of «/»?

Здравствуйте сообщество!
Есть проблема, FTP сервер не может передать/или клиент не может получить список файлов которые находятся на сервере FTP (команда "ls"). Подозреваю, что не открываются порты для пассивного режима работы в связке клиент-сервер-клиент, когда клиентом является командная строка Windows. Чтобы было понятно делаю два опыта.
Опыт первый №1
Соединение с сервером при помощи программы FileZilla Client в режиме "Пассивного" подключения.
8ef468e45bd0499694dec687fb4a1452.jpg
Как видно из лога порт открывается и все хорошо, лог с сервера:
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> Connected on port 21, sending welcome message.
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> 220 Please visit http://ru/
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> AUTH TLS
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> 502 SSL/TLS authentication not allowed
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> AUTH SSL
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> 502 SSL/TLS authentication not allowed
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> USER user
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> 331 Password required for user
16.01.2015 11:15:34 - (not logged in) (77.xx.xx.xx)> PASS connect
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 230 Logged on
16.01.2015 11:15:34 - user (77.xx.xx.xx)> SYST
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 215 UNIX emulated by FileZilla
16.01.2015 11:15:34 - user (77.xx.xx.xx)> FEAT
16.01.2015 11:15:34 - user (77.xx.xx.xx)> PWD
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 257 "/" is current directory.
16.01.2015 11:15:34 - user (77.xx.xx.xx)> TYPE I
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 200 Type set to I
16.01.2015 11:15:34 - user (77.xx.xx.xx)> PASV
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 227 Entering Passive Mode (213,хх,хх,хх,195,187)
16.01.2015 11:15:34 - user (77.xx.xx.xx)> MLSD
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 150 Opening data channel for directory listing of "/"
16.01.2015 11:15:34 - user (77.xx.xx.xx)> 226 Successfully transferred "/"


Опыт первый №2
Соединение с сервером при помощи командной строки Windows (cmd) перевод в пассивный режим подключения осуществляем командой "quote pasv".
Лог с сервера FTP:
16.01.2015 11:02:09 - (not logged in) (77.хх.хх.хх)> Connected on port 21, sending welcome message.
16.01.2015 11:02:09 - (not logged in) (77.хх.хх.хх)> 220 Please visit http://ru/
16.01.2015 11:02:12 - (not logged in) (77.хх.хх.хх)> USER user
16.01.2015 11:02:12 - (not logged in) (77.хх.хх.хх)> 331 Password required for edu
16.01.2015 11:02:16 - (not logged in) (77.хх.хх.хх)> PASS connect
16.01.2015 11:02:16 - user (77.хх.хх.хх)> 230 Logged on
16.01.2015 11:02:30 - user (77.хх.хх.хх)> PASV
16.01.2015 11:02:30 - user (77.хх.хх.хх)> 227 Entering Passive Mode (213,хх,хх,хх,195,186)
16.01.2015 11:02:38 - user (77.хх.хх.хх)> TYPE I
16.01.2015 11:02:38 - user (77.хх.хх.хх)> 200 Type set to I
16.01.2015 11:02:46 - user (77.хх.хх.хх)> TYPE A
16.01.2015 11:02:46 - user (77.хх.хх.хх)> 200 Type set to A
16.01.2015 11:02:46 - user (77.хх.хх.хх)> PORT 77,хх,хх,хх,165,254
16.01.2015 11:02:46 - user (77.хх.хх.хх)> 200 Port command successful
16.01.2015 11:02:46 - user (77.хх.хх.хх)> NLST
16.01.2015 11:02:46 - user (77.хх.хх.хх)> 150 Opening data channel for directory listing of "/"
16.01.2015 11:02:57 - user (77.хх.хх.хх)> 425 Can't open data connection for transfer of "/"
16.01.2015 11:08:58 - user (77.хх.хх.хх)> 421 Connection timed out.


Лог с клиента:
C:\Users\AMD>ftp 213.хх.хх.хх
Связь с 213.хх.хх.хх.
220 Please visit http://ru/
Пользователь (213.хх.хх.хх:(none)): user
331 Password required for user
Пароль:
230 Logged on
ftp> quote PASV
227 Entering Passive Mode (213,хх,хх,хх,195,186)
ftp> bin
200 Type set to I
ftp> hash
Вывод метки хеширования Вклftp: (2048 байт/хеш-метка).
ftp> ls
200 Port command successful
150 Opening data channel for directory listing of "/"
425 Can't open data connection for transfer of "/"
421 Connection timed out.
Подключение разорвано удаленным узлом.

f550bc4bfc4043d6a2de3c0b90f1bbfc.jpg
Лог с фаерволла:
68d9c2e30a11484d9b0808b53fe8fe28.jpg

Вывод: в командной строке Windows что-то работает не так...и FileZilla Client как-то по-другому (иначе) передает команду "PASV" на открытие пассивного порта.
Фаерволлы и Брандмауэры не причем, проверял без них)
Используемый сервер FTP: FileZilla Server
Клиент для FTP сервера в опыте №1: FileZilla client
Клиент для FTP сервера в опыте №2: командная строка Windows 8.1
  • Вопрос задан
  • 21254 просмотра
Пригласить эксперта
Ответы на вопрос 2
grims
@grims Автор вопроса
Не курю
Оставляю это тут для тех кто столкнется с этой проблемой в будущем...
Изучая проблему дальше наткнулся на мегаfuck от Microsoft OS All такого рода:
How to configure ftp.exe to use passive mode (PASV)
FTP&PASV
и буквами:
Many FTP clients do not support PASV transfers. For example, the standard FTP.EXE built into Windows does not support this feature. The user can still do a "quote PASV", which will tell the server to enter PASV mode, but the client still will not work in this mode. (This is a common problem, users enter "quote PASV" but things still don't work).


Ниже консольное решение для тех кто разочаровался в ftp.exe от Microsoft:
1. WinSCP
2. Сurl 7.40.0, Released on the 8th of January 2015
Синтаксис: C:\Network\curl>curl.exe ftp://213.хх.хх.хх --user myname:mypassword

3. GNU Wget
4. WPUT
5. RSYNC

Также еще желательно почитать о:
ALG
Особенности работы протокола FTP
Что такое пассивный режим FTP?
Setting up your Router to Fix the "425 code"
Ответ написан
Комментировать
Можно использовать windows's ftp, но НЕ используя переход в пассивный режим (раз он у них не работает)
и добавив правила в Брандмауэр для %SystemRoot%\System32\ftp.exe
разрешать все входящие и исходящие соединения.
Вот протокол такого соединения (выделил и убрал конфиденциальные сведения я)
==============начало=========
ftp> open ХХХ.ХХХ.ХХХ.ХХХ
Связь с ХХХ.ХХХ.ХХХ.ХХХ
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 10 allowed.
220-Local time is now 15:40. Server port: 21.
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 10 minutes of inactivity.
---> OPTS UTF8 ON
200 OK, UTF-8 enabled
Пользователь (192.168.0.157:(none)):
---> USER хххххххххх
331 User хххххххххх OK. Password required

---> PASS хххххххххх
230 OK. Current restricted directory is /
ftp> cd Backup
---> CWD Backup
250 OK. Current directory is /Backup
ftp> cd 237
---> CWD 237
250 OK. Current directory is /Backup/237
ftp> binary
---> TYPE I
200 TYPE is now 8-bit binary
ftp> mput *.7z
---> PORT ХХХ,ХХХ,ХХХ,ХХХ,193,77
200 PORT command successful
---> STOR 2_Clean.7z
150 Connecting to port 49485
226-File successfully transferred
226 134.487 seconds (measured here), 11.29 Mbytes per second
ftp: 1591717275 байт отправлено за 134.36 (сек) со скоростью 11846.92 (КБ/сек).
==============конец=========
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы