Назад | Перейти на главную страницу

vsftpd не отвечает на СПИСОК

У меня есть рабочий стол Ubuntu 10.04, работающий как веб-сервер, и я только что установил vsftpd и настроил его, чтобы разрешить ascii_upload_enable и ascii_download_enable, а также включить chroot_local_user, chroot_list_enable и chroot_list_file.

Однако у меня возникают проблемы с получением списка файлов с сервера с помощью FileZilla, вот что происходит:

Статус: разрешающий адрес server.jonbevan.me.uk
Статус: подключение к 80.4.79.179:21 ...
Статус: соединение установлено, ожидается приветственное сообщение ...
Ответ: 220 Добро пожаловать в службу FTP server.jonbevan.me.uk.
Команда: USER jon
Ответ: 331 Укажите пароль.
Команда: ПРОЙТИ *********
Ответ: 230 Успешный вход.
Команда: OPTS UTF8 ON
Ответ: 200 Всегда в режиме UTF8.
Статус: Подключено
Статус: получение списка каталогов ...
Команда: CWD / home / jon
Ответ: 250 Каталог успешно изменен.
Команда: PWD
Ответ: 257 "/ home / jon"
Команда: ТИП I
Ответ: 200 Переход в двоичный режим.
Команда: PASV
Ответ: 227 Переход в пассивный режим (80,4,79,179,196,13)
Команда: СПИСОК
Ответ: 425 Не удалось установить соединение.
Ошибка: не удалось получить список каталогов

И это происходит в CuteFTP:

КОМАНДА:> [29.07.2010 15:23:43] СПИСОК
[29.07.2010 15:23:43] 150 А вот и список каталогов.
ОШИБКА:> [29.07.2010 15:24:13] Истекло время ожидания (30000 мс) при приеме подключения для передачи данных от сервера.
[29.07.2010 15:24:13] 426 Ошибка записи сетевого потока.
ОШИБКА:> [29.07.2010 15:24:13] Получен ответ в корзину.

Есть идеи, в чем может быть проблема? Приносим извинения, если я пропустил важную информацию.

Согласен с Luke404. Убедитесь, что в вашем vsftpd.conf настроены следующие записи и что ваш брандмауэр разрешает диапазоны портов pasv_min и pasv_max (10000 - 100010 - это только пример). Не забудьте перезапустить службу, если в файл conf внесены изменения.


    pasv_enable=YES
    pasv_min_port=10000
    pasv_max_port=10010
    pasv_address=[Public IP address of your server]

Вы используете режим PASV, поэтому ваш клиент будет пытаться подключиться к серверу через "случайный" порт для передачи данных, включая передачу файлов и каталоги.

Наиболее вероятная причина, по которой он не работает, заключается в том, что соединение PASV TCP для передачи данных не может быть установлено, обычно по одной из следующих причин:

  • брандмауэр на стороне клиента, блокирующий исходящие соединения
  • брандмауэр на стороне сервера, блокирующий входящие соединения на высоких портах
  • сервер за NAT с перенаправлением только статических ftp-портов 21,22 и без проверки пакетов для перенаправления более высоких портов

У меня была такая же проблема

Решил это, отредактировав конфигурацию / etc / sysconfig / iptables-config

в начале файла изменил этот параметр: IPTABLES_MODULES

# Load additional iptables modules (nat helpers)
#   Default: -none-
# Space separated list of nat helpers (e.g. 'ip_nat_ftp ip_nat_irc'), which
# are loaded after the firewall rules are applied. Options for the helpers are
# stored in /etc/modprobe.conf.
IPTABLES_MODULES="ip_conntrack_ftp"

После перезапуска iptables может отобразить файлы в FileZilla. Надеюсь, поможет.