Я установил самоподписанный сертификат на сервере FileZilla и включил FTP через SSL / TPS. Когда я подключаюсь из клиента FileZilla, я могу пройти аутентификацию, но не могу получить список каталогов:
Status: Connecting to MY_SERVER_IP:21...
Status: Connection established, waiting for welcome message...
Response: 220-FileZilla Server version 0.9.39 beta
Response: 220-written by Tim Kosse (Tim.Kosse@gmx.de)
Response: 220 Please visit http://sourceforge.net/projects/filezilla/
Command: AUTH TLS
Response: 234 Using authentication type TLS
Status: Initializing TLS...
Status: Verifying certificate...
Command: USER MYUSER
Status: TLS/SSL connection established.
Response: 331 Password required for MYUSER
Command: PASS ********
Response: 230 Logged on
Command: PBSZ 0
Response: 200 PBSZ=0
Command: PROT P
Response: 200 Protection level set to P
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/" is current directory.
Command: TYPE I
Response: 200 Type set to I
Command: PORT 10,10,25,85,219,172
Response: 200 Port command successful
Command: MLSD
Response: 150 Opening data channel for directory list.
Response: 425 Can't open data connection.
Error: Failed to retrieve directory listing
У меня на брандмауэре открыты порты 21 и с 50001 по 50005. Мы переносим серверы - 50001–50005 - это одна из тех вещей, которые помогли заставить FTPS работать на старом сервере. Я не уверен, что эта установка будет использовать те же порты? В чем еще может быть проблема?
Попробуйте отключить правила FTP с отслеживанием состояния в брандмауэре Windows. Откройте командную строку и введите эту строку (без кавычек):
"netsh advfirewall устанавливает глобальное отключение StatefulFTP"
Проблема в брандмауэре Windows. Я видел эту проблему с FTP и FTPS.
Вы на правильном пути с необходимыми дополнительными портами. Вы также можете проверить настройки локального брандмауэра на сервере.
Недавно я столкнулся с этим на своем Cisco ASA ... Мне пришлось открыть порты 49152-65535 для хоста, обслуживающего FTP за брандмауэром, в дополнение к порту 21. Первоначально я настроил серверную часть для использования ограниченного диапазона портов и открыл их на ASA и убедился, что брандмауэр Windows тоже открыт. При использовании FTP через TLS / неявных или явных опций в клиенте Filezilla он не будет учитывать согласование порта с сервера, которое было ограничено определенными портами. Ничего не сработало - при просмотре журналов отладки на asa клиент filezilla не согласовывал ограниченный диапазон портов - он пытался открыть соединение для передачи данных за пределами диапазона, ограниченного ASA.
Также обратите внимание, что проверка FTP НЕ будет работать при использовании зашифрованных каналов, поэтому брандмауэр не смог «исправить» протокол FTP, как при использовании обычного текста. Не используйте простой текстовый FTP, так как все открыто (включая пароль). Его никогда не следует использовать в Интернете для чего-то важного.
Я использую FTP-сервер IIS 7.5 с сертификатом TLS для безопасности. После открытия дополнительных портов (49152-65535) клиент Filezilla работал как шарм. Я не из тех, кто открывает такие порты, но у меня нет особого выбора, если вы так поступаете. Хорошая новость заключается в том, что на стороне сервера эти порты не прослушиваются, поэтому с точки зрения безопасности это в основном безвредно. Эти порты открываются только при подключении клиента и закрываются при отключении.
Надеюсь, это поможет!!! Я потратил несколько часов своей жизни на отладку этого - время, которое я не могу вернуть. Надеюсь, ваше путешествие будет более гладким.
У меня тоже была эта проблема с FileZilla Server. Предполагая, что вы уже настроили и клиент, и сервер для использования пассивного режима ...
Убедитесь, что брандмауэр Windows не блокирует порты 50001-50005. Я создал в нем исключения для приложения FileZilla, но оно не очищало пассивные порты. Я только что создал исключение для открытого диапазона, и проблема решена.
Вам нужен порт для FTP и порт для канала управления [чтобы вы могли получать списки каталогов]. Я весь день бился головой об стену по этому поводу.
Создайте конечную точку в Azure для FTP, порт TCP 21. общедоступный / частный.
Создайте конечную точку в Azure для FZServer, TCP-порт 6000. общедоступный / частный
В программном обеспечении сервера FileZilla нажмите «пассивный режим», установите диапазон портов на «использовать настраиваемый диапазон портов» 6000-6000 и установите «получить внешний IP-адрес из ... http: //ip.filezilla-project.... "
И выберите «не использовать внешний IP-адрес для локальных подключений.
затем запустите FW.msc на виртуальной машине Azure, создайте правило брандмауэра для любого порта 21, а затем создайте правило для приложения «FileZilla Server.exe» [в отличие от «interface.exe»] и откройте порт 6000.
Работает как шарм!