alibek Posted September 27, 2016 · Report post В сети есть сервер с прошивками. Обычно я их забираю по TFTP, но одна железка хочет FTP. На скорую руку настроил vsftpd (версия vsFTPd version 3.0.2+ (ext.1)): # Server settings listen=YES listen_port=21 port_enable=YES pasv_enable=YES pasv_min_port=40000 pasv_max_port=40999 ftpd_banner=Service Area log_ftp_protocol=YES dual_log_enable=YES xferlog_enable=YES background=YES # Common settings anonymous_enable=YES anon_root=/files/firmware guest_enable=YES guest_username=service write_enable=YES allow_writeable_chroot=YES В каталоге /files/firmware доступ 777, в файлах 666. Пытаюсь подключиться и не получается: > ftp -d -n 10.1.128.9 Связь с 10.1.128.9. 220 Service Area ftp> user ftp ---> USER ftp 331 Please specify the password. Пароль: ---> PASS ftp 230 Login successful. ftp> dir ---> PORT 192,168,1,9,155,162 500 Illegal PORT command. ---> LIST 425 Use PORT or PASV first. ftp> pasv Недопустимая команда. ftp> pwd ---> XPWD 257 "/" ftp> list Недопустимая команда. ftp> remote ---> HELP 214-The following commands are recognized. ABOR ACCT ALLO APPE CDUP CWD DELE EPRT EPSV FEAT HELP LIST MDTM MKD MODE NLST NOOP OPTS PASS PASV PORT PWD QUIT REIN REST RETR RMD RNFR RNTO SITE SIZE SMNT STAT STOR STOU STRU SYST TYPE USER XCUP XCWD XMKD XPWD XRMD 214 Help OK. ftp> quit ---> QUIT 221 Goodbye. В логах сервера: Tue Sep 27 19:01:33 2016 [pid 17704] CONNECT: Client "10.1.144.3" Tue Sep 27 19:01:33 2016 [pid 17704] FTP response: Client "10.1.144.3", "220 Service Area" Tue Sep 27 19:01:36 2016 [pid 17704] FTP command: Client "10.1.144.3", "USER ftp" Tue Sep 27 19:01:36 2016 [pid 17704] [ftp] FTP response: Client "10.1.144.3", "331 Please specify the password." Tue Sep 27 19:01:38 2016 [pid 17704] [ftp] FTP command: Client "10.1.144.3", "PASS <password>" Tue Sep 27 19:01:38 2016 [pid 17703] [ftp] OK LOGIN: Client "10.1.144.3", anon password "ftp" Tue Sep 27 19:01:38 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "230 Login successful." Tue Sep 27 19:01:41 2016 [pid 17705] [ftp] FTP command: Client "10.1.144.3", "PORT 192,168,1,9,155,162" Tue Sep 27 19:01:41 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "500 Illegal PORT command." Tue Sep 27 19:01:41 2016 [pid 17705] [ftp] FTP command: Client "10.1.144.3", "LIST" Tue Sep 27 19:01:41 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "425 Use PORT or PASV first." Tue Sep 27 19:01:45 2016 [pid 17705] [ftp] FTP command: Client "10.1.144.3", "XPWD" Tue Sep 27 19:01:45 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "257 "/"" Tue Sep 27 19:02:44 2016 [pid 17705] [ftp] FTP command: Client "10.1.144.3", "HELP" Tue Sep 27 19:02:44 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "214-The following commands are recognized." Tue Sep 27 19:02:44 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "214 Help OK." Tue Sep 27 19:02:46 2016 [pid 17705] [ftp] FTP command: Client "10.1.144.3", "QUIT" Tue Sep 27 19:02:46 2016 [pid 17705] [ftp] FTP response: Client "10.1.144.3", "221 Goodbye." То есть ошибок на сервере не вижу. А почему FTP не работает, понять не могу. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
stas_k Posted September 28, 2016 · Report post ftp> dir---> PORT 192,168,1,9,155,162 500 Illegal PORT command. FTPD за натом? несколько интерфейсов? pasv_address=10.1.128.9 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted September 28, 2016 · Report post NAT есть, но на клиенте, не на сервере. Шлюзом у клиента работает Zyxel Keenetic с ALG FTP, обычно с FTP проблем не было. Кстати, с проблемой разобрался. vsftpd работал нормально. Это встроенный в Windows ftp-клиент странно работает, не все команды отправляет. Если команды отправлять через quote, то они выполняются все. Железка загружает файл без каких-либо проблем. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
stas_k Posted September 28, 2016 · Report post NAT есть, но на клиенте, не на сервере. по логу видно. они начинают договариваться о ftp passive mode. и обламываются. это не все ftp клиенты коррректно умеют. одна строчка в конфиге vsftpd - pasv_address=10.1.128.9 решает. уж точно не вредит. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...