vsftpd - команда недопустимого порта

Я использую Ubuntu Server на компьютере с VirtualBox. Apache и SSH работают, но FTP после успешного подключения к серверу и входа в систему отправляет сообщение об ошибке:

 - Command: PORT 127,0,0,1,180,221 
 - Response: 500 Illegal PORT command.
 - Error: Failed to retrieve directory listing

Port Forwarding:
TCP | Host Port 2100 | Guest Port 21

Мой файл vstpd.conf:

listen=YES
pasv_enable=YES
pasv_min_port=2005
pasv_max_port=2010
port_enable=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=NO
ftpd_banner=Welcome.
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
3
задан 05.05.2020, 09:17

3 ответа

Джекбенни близок ...

Я работаю на AWS с Ubuntu, вот что я сделал, чтобы vsftpd вел себя правильно:

seccomp_sandbox=NO
allow_writeable_chroot=YES
pasv_address=<(public ip) or (AWS public domain or DNS)>
pasv_enable=Yes
pasv_min_port=30000
pasv_max_port=30100
port_enable=YES

Затем вы должны убедиться, что вы пропускаете порты, 20,21,30000-30100 через. Имейте в виду, что выбор порта 30000-30100 совершенно произвольный и может быть любым. Хотя я бы придерживался портов выше 10000 и диапазона 100 или более.

0
ответ дан 05.05.2020, 09:17
  • 1
    Спасибо, это также работает на aliyun. – Roger Wolf 05.05.2020, 09:18
  • 2
    Я знаю, что... однако, определенные программы будут ТОЛЬКО использовать пассивный режим для некоторых команд. Например, программа, которую я использовал, я имел пассивный явно набор к прочь все же, я получил эту ошибку. Так, я сделал вышеупомянутое, и оно работало. – Steve Bennett 05.05.2020, 09:18
  • 3
    Снова, he' s, не используя pssive режим. – Steve Bennett 05.05.2020, 09:19
  • 4
    Если это использовало пассивный режим, то это wouldn' t получают отказ от команды PORT. Пассивные средства используют команду PASV вместо ПОРТА. – Marcio Duran 05.05.2020, 09:19
  • 5
    Эта ошибка проявляет, когда FTP-сервер изменяется от слушания на порте 21 другому, более высокому порту. Когда команда дается, который использует пассивный режим, сервер устанавливает новое заднее соединение с клиентом. Это соединение расширяется с сервера (вне границ брандмауэра) к динамично числу назначенного порта на клиентском компьютере. Поскольку номер порта не известен заранее, он выбирает случайный порт выше 1023, если конкретно не дали диапазон для выбора в. Эта ошибка порта может совершенно определенно быть вызвана командой, использующей пассивный, когда сервер не является установкой для пассивного. – greengold 05.05.2020, 09:19

Вы получили эту ошибку при подключении «извне»? В этом случае вам может потребоваться добавить внешний IP-адрес в vsftpd, чтобы он знал, какой IP-адрес отправлять своим клиентам при использовании пассивного режима FTP.

Попробуйте добавить pasv_address=<YOUR_IP_HERE> в вашу конфигурацию.

Вы также можете попытаться переключить свой FTP-клиент в активный режим и посмотреть, по-прежнему ли возникает та же ошибка.

Вам также может потребоваться установить диапазон портов для пассивного FTP, а также включить пассивный режим FTP. Попробуйте добавить эти строки (замените START_PORT и END_PORT на нужные вам порты, а также не забудьте перенести их в ваш маршрутизатор):

pasv_enable=Yes
pasv_max_port=<START_PORT>
pasv_min_port=<END_PORT>
0
ответ дан 05.05.2020, 09:18
  • 1
    Локально. I' m все еще ищущий информацию о vftpd позади NAT без удачи. И да, я переключил несколько раз режим, но та же ошибка появляется. – Dale Burrell 05.05.2020, 09:18
  • 2
    Я думаю что-то it' s неправильно здесь, пассивный режим it' s от порта 2005 - 2010. Но FileZilla соединяется с портом 842 (192*4+74). Я перезапустил сервис несколько раз. – Mat Colgrove 05.05.2020, 09:19
  • 3
    That' s для того, когда ответ PASV имеет неправильный адрес... – Fabian 05.05.2020, 09:19

Я не знаю, что здесь происходит, но эта проблема слишком старая. Я, наконец, решил это несколько недель назад, когда переустановил свою виртуальную машину и тщательно следовал всем инструкциям. Ответы были так полезны в любом случае.

0
ответ дан 05.05.2020, 09:18
  • 1
    Если комментарии полезны, где-нибудь в stackexchange сети, дайте кредит, где кредит является подлежащим выплате (голосование). – Fabian 05.05.2020, 09:19
  • 2
    Жаль @BrandonBearden, я забыл к upvote, благодарит позволить мне теперь. – Fabian 05.05.2020, 09:19

Теги

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