FTP-сервер Filezilla не может получить список каталогов

Я запускаю бета-версию Filezilla Server 0.9.45 для удаленного управления своим сервером. После настройки я протестировал подключение к нему с использованием IP-адреса 127.0.0.1, и это сработало успешно. Однако для удаленного подключения к серверу я перенаправил порт на порт 21 и попытался подключиться, используя IP-адрес моего компьютера.

Status: Connecting to [My IP]:21...
Status: Connection established, waiting for welcome message...
Response:   220 Powered By FileZilla Server version 0.9.45 beta
Command:    USER hussain khalil
Response:   331 Password required for user
Command:    PASS *********
Response:   230 Logged on
Status: Connected
Status: Retrieving directory listing...
Command:    CWD /
Response:   250 CWD successful. "/" is current directory.
Command:    PWD
Response:   257 "/" is current directory.
Command:    TYPE I
Response:   200 Type set to I
Command:    PORT 192,168,0,13,205,63
Response:   200 Port command successful
Command:    MLSD
Response:   150 Opening data channel for directory listing of "/"
Response:   425 Can't open data connection for transfer of "/"
Error:  Failed to retrieve directory listing

Это продолжает работать локально, но не при удаленном подключении... Как я могу это исправить?


person Hussain Khalil    schedule 04.07.2014    source источник
comment
Привет всем, как насчет prestashop? Я попробовал ответ Кэри с помощью sftp.pswebstore.com, но статус говорит, что попытка подключения не удалась с ECONNREFUSED - сервер отказался от подключения   -  person f_anto    schedule 25.06.2016


Ответы (21)


Когда вы отправляете команду порта на свой сервер, вы просите сервер подключиться к вам (в удаленной сети). Если в удаленной сети также есть маршрутизатор NAT, и вы не перенаправили порт, который вы отправляете с помощью команды PORT, сервер не сможет связаться с вами.

Наиболее распространенным решением было бы отправить на сервер команду PASV вместо команды PORT. Команда PASV попросит сервер создать прослушивающий сокет и принять соединение с удаленного компьютера для установления соединения для передачи данных.

Чтобы команда PASV работала, вам также потребуется перенаправить ряд портов для пассивных подключений к данным. Порты пассивного подключения (которые необходимо перенаправить) должны быть перечислены в документации FileZilla.

person Evan    schedule 04.07.2014
comment
Я установил собственный диапазон портов в настройках пассивного режима (порты с 50000 по 50100) и переадресовал эти порты. Я также установил тип передачи на пассивный вместо активного. Безрезультатно. - person Hussain Khalil; 07.07.2014
comment
Я тестировал из своей локальной сети. Внешнее подключение заработало. - person Hussain Khalil; 07.07.2014

Я только что изменил шифрование с «Использовать явный FTP через TLS, если доступно» на «Использовать только обычный FTP» (небезопасно) в диспетчере сайта, и это работает!

person Vangelis Kotrotsios    schedule 18.01.2015
comment
Если вам нужна безопасность, это плохая идея. - person DarrellNorton; 04.02.2015
comment
@DarrellNorton Так как же обеспечить безопасность, а также получить список каталогов? - person Faizan; 09.04.2015
comment
@Faizan, вы должны использовать FTPS. Этот ответ говорит об отключении безопасности. Ваггелис ясно заявляет, что это небезопасно. Наиболее вероятная причина сбоя команды PASV заключается в том, что FTP-сервер отправляет ответ, но брандмауэр не разрешает исходящие соединения через эти порты. См. Ответ Сан-Бергама в принятом ответе. - person DarrellNorton; 10.04.2015
comment
@Faizan подробное техническое объяснение находится здесь: wiki.filezilla-project.org/Network_Configuration - я пришлось немного взглянуть на это, прежде чем я понял разницу между активным и пассивным, а также явным и неявным FTPS. Моя проблема заключалась в том, что брандмауэр блокировал неявный диапазон портов FTPS, который я установил на 50 000–55 000. Как только сетевой администратор явно разрешил исходящий трафик через эти порты, все заработало отлично. - person DarrellNorton; 10.04.2015
comment
Обратите внимание, что это действительно отключит вашу безопасность, да, это сработает, но рано или поздно может возникнуть проблема! - person Cary Bondoc; 05.08.2015
comment
Не выбрасывайте безопасность на помойку. - person Pedro Adame Vergara; 08.05.2017
comment
Это работает и для меня. Может быть, это связано с SSL, верно? - person Maruf Alom; 16.01.2019

Файл > Менеджер сайтов > Выберите свой сайт > Настройки переноса > Активно

Работает на меня.

person Marcos Nakamine    schedule 22.11.2016
comment
или вы можете попробовать это: РедактироватьНастройкиПодключениеFTP › Посмотрите на Режим передачи (изменить пассивный на активный ) - person Anthony Kal; 13.04.2017
comment
ОМГ Наконец-то! Прочитав ту же хрень с типом шифрования и брандмауэром 10000 раз, это сработало! - person Eduard Unruh; 30.10.2020
comment
Этот действительно работает. Просто активные части немного сложнее - person Apit John Ismail; 11.01.2021
comment
Оу ты лучший - person Orhan Gazi; 13.05.2021

Большинство ответов здесь связаны с настройкой, на самом деле, просто добавив sftp:// на свой хост (см. Изображение ниже), вы можете мгновенно решить эту проблему, у меня работает.

введите описание изображения здесь

Также обратите внимание, что если вы следуете руководству Vaggelis, вы снижаете свою безопасность, sftp лучше, чем использовать обычный ftp.

Я только что изменил шифрование с «Использовать явный FTP через TLS, если доступно» на «Использовать только обычный FTP» (небезопасно) в диспетчере сайта, и это работает!

person Cary Bondoc    schedule 31.07.2015
comment
Это не может работать в prestashop. Я пробовал sftp.pswebstore.com, но статус говорит, что попытка подключения не удалась с ECONNREFUSED - соединение отклонено сервером. - person f_anto; 25.06.2016
comment
Это на самом деле лучший ответ! - person Alvaro; 29.02.2020

Хорошо, это очень помогло, я не мог найти исправление.

Просто я уже пробросил порт FTP на свой сервер. (По умолчанию 14147, я буду использовать это в качестве примера)

Перейдите в «Правка»> «Общие настройки», порт прослушивания должен быть тем, который вы используете, в данном случае 14147.

Затем перейдите в «Настройки пассивного режима», я отметил «Использовать пользовательский порт» и ввел в диапазоне 50000 — 50100.

Затем на вашем маршрутизаторе переадресуйте порт 50000 - 50100 на IP-адрес сервера локально.

Конкретные настройки IPv4 я оставил по умолчанию, снова подключил свой клиент, и теперь появляется список файлов.

Убедитесь, что в брандмауэре вашего сервера установлено правило для входящего трафика 14147 и 50000-50100.

В основном то, что сказал Эван. Я не могу подтвердить безопасность открытия этих портов, но это то, что наконец заставило мой клиент и сервер Filezilla обмениваться данными и просматривать файлы. Надеюсь, это поможет кому-то.

person Home Nerd    schedule 01.10.2014
comment
Убедитесь, что в брандмауэре вашего сервера установлено правило для входящего трафика 14147 и 50000-50100. - person Rocky Andra; 04.03.2016
comment
Я только что установил FileZille Server на работе и могу просматривать свою папку с помощью FileZille Cliet. Проблема в том, что я пытаюсь подключиться через PHP, используя библиотеку Nicolab. Я продолжаю получать исключение Unable to connect. Любые идеи? Я знаю, что это может быть связано с брандмауэром нашей компании. Заранее спасибо. - person scruffycoder86; 20.05.2016
comment
Это ключевой момент. Убедитесь, что в брандмауэре вашего сервера установлено правило для входящего трафика, которое принимает 14147 и 50000-50100. Спасибо дружище, проголосовал! - person Hitin; 06.02.2017
comment
Обнаружил, что мои порты (40110-40310) были закрыты, я думал, что 21 достаточно - person Sodj; 23.05.2021

По моему опыту, эта проблема есть в новой версии Filezilla, а не в старых версиях. Я использовал Filezilla, и все было в порядке. После того, как я обновился до версии 3.10, я столкнулся с этой проблемой и не смог ее решить. Я удалил версию 3.10 и переустановил версию 3.8, и проблема исчезла! Сейчас пользуюсь версией 3.8 и все ок. Я предпочитаю не сталкиваться с проблемами, даже если мне приходится использовать старые версии. ;)

Попробуйте установить старую версию и не обновляться, как бы странно это не звучало.

person Abolfazl Shirazi    schedule 08.01.2015
comment
Я только что скачал версию 3.8 с здесь, с шифрованием: «Обычный Ftp» и настройками передачи: «Пассивный» - person Shaiju T; 03.01.2016
comment
У меня странная ситуация, когда я могу получить доступ к различным сайтам с помощью клиента FileZilla (3.22) с использованием TLS, но к одному сайту я могу получить доступ только с помощью обычного FTP. Это произошло где-то за последние несколько месяцев (с тех пор, как я в последний раз заходил на этот сайт), потому что раньше он нормально работал с TLS. - person Marc Wilson; 09.12.2016

Я решил это, зайдя в диспетчер сайтов -> выбрал соединение, которое Failed to retrieve directory listing -> переключил на вкладку «Настройки передачи» и установил «Режим передачи» на «Активен» вместо «По умолчанию». Также проверьте, подключены ли вы через VPN или что-то подобное, это тоже может мешать.

person Ogglas    schedule 04.04.2016
comment
Если вы голосуете против, пожалуйста, скажите, почему, потому что это сработало для меня. - person Ogglas; 09.05.2016
comment
3 года спустя это было решением для меня - person techguy1029; 30.10.2019
comment
спасибо, сработало для меня! - person Andrés Mauricio Gómez; 18.01.2021

У меня была та же проблема - что сработало для меня - в ОС Windows - это добавление FileZilla в качестве исключения брандмауэра - при разрешении программы через функции брандмауэра

person IjonTichy    schedule 21.04.2015

Запустите брандмауэр Защитника Windows в режиме повышенной безопасности

Пуск > Выполнить: wf.msc

введите здесь описание изображения

person Alper Ebicoglu    schedule 04.04.2019

У меня была Filezilla 3.6, и у меня была та же проблема, что и у OP. Я обновился до 3.10.3, думая, что это исправит. Нет, все так же.

Затем я немного покопался в вариантах, и у меня сработало следующее:

Правка -> Настройки -> FTP -> Пассивный режим и переключен с «Возврат в активный режим» на «Вместо этого использовать внешний IP-адрес сервера».

person Zoran P.    schedule 22.04.2015

У меня была такая же проблема, это было из-за брандмауэра. Я использую сервер Windows,

Можете ли вы разрешить разрешение на подключение для программы вместо разрешения на порт 21,22.

Windows Firewall with Advanced Security->
Inbound Rules->
Add Rule->
Program->
"Select Filezilla path with Browse button"->
Allow the Connection
person Ferhat KOÇER    schedule 28.10.2018
comment
это сработало. До этого я создавал правила порта вместо правил программы. - person Arman Bimatov; 13.12.2018

У меня возникла та же проблема с FZ-клиентом, когда мой ноутбук подключался через WLAN и DSL/маршрутизатор. В настройках подключения Site Manager я применил Хост: ftp.имя домена, Шифрование: Использовать только обычный FTP (небезопасный) и Пользователь: имя пользователя @ имя домена. Затем FTP-клиент успешно подключился к серверу моего сайта. Дополнительную информацию о FTP-соединении можно найти в CPanel веб-сервера. Надеюсь это поможет.

person Pram    schedule 27.01.2015

У меня тоже была проблема после обновления до 3.10. У меня была версия 3.6.02, которую я установил. Проблема решена.

person user4434803    schedule 08.01.2015

У меня была эта проблема с моим сервером, размещенным в облаке. Мне сервер нужен всего пару раз в год, поэтому, когда я загружаю свой сервер, IP-адрес меняется. Затем новый IP-адрес необходимо обновить в настройках пассивного режима FTP-сервера!

Последняя версия Filezilla работает просто отлично!

person chhenning    schedule 03.10.2016

Если вы используете VestaCP, вы можете разрешить порты 12000-12100 TCP на вашем брандмауэре Linux.

Сделать это можно в настройках VestaCP.

person Lucas Bustamante    schedule 17.04.2017

Проверьте, совпадает ли IP-адрес на маршрутизаторе с адресом на ftp-сервере. Если нет, убедитесь, что это то же самое. Это должно работать отлично.

person favourworks    schedule 21.12.2017

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

person Reejesh PK    schedule 04.12.2018

Я использую SFTP и его работа для меня.

person Mohammad nagdawi    schedule 16.07.2020

Это сработало для меня:

Общие -> Шифрование -> Использовать только обычный FTP

Настройки передачи -> Режим передачи -> Активный

Учтите, что это очень небезопасно и должно использоваться только для тестирования.

person joaq.dlt    schedule 29.10.2020

Моя проблема была также в брандмауэре. Я использую сервер Linux с WHM/cPanel. Добавление моего IP-адреса в быстрое разрешение решило мою проблему. Я не обновлял Filezilla и не думаю, что на сервере были какие-либо изменения, которые должны были вызвать это. Однако я переехал, и мой IP изменился, так что, возможно, проблема была в этом. Удачи всем остальным в этом безумно раздражающем вопросе.

как получить доступ к конфигурации брандмауэра WHM

person stickdeodorant    schedule 19.01.2021

Теперь в FileZilla создайте новую учетную запись 1. Хост — это FTP-адрес, например. ftp.somewhere.com 2. Протокол — «SFTP-SSH File Transfer Protocol» 3. Идентификатор пользователя — ваш идентификатор пользователя Bluehost 4. Пароль — ваш пароль Bluehost 5. Нажмите «Подключиться», чтобы установить соединение со списком каталогов!

Это решает проблему с 3.10 для меня. И я рад, что у меня есть безопасный доступ для всех моих будущих передач файлов. Это должно предотвратить проблемы с безопасностью в будущем.

person Ramy Hassan    schedule 12.01.2015