При попытке подключиться к FTP-серверу, установленному на моей виртуальной машине Azure, появляется следующая ошибка.

Warning: Selected port (18183) is not the default port (21) of the selected protocol.
Warning: The entered address does not resolve to an IPv6 address.
Status: Connected, waiting for welcome message...
Reply: 220-FileZilla Server 0.9.56 beta
Reply: 220-written by Tim Kosse (tim.kosse@filezilla-project.org)
Reply: 220 Please visit https://filezilla-project.org/
Command: CLNT https://ftptest.net on behalf of 168.63.97.45
Reply: 200 Don't care
Command: AUTH TLS
Reply: 234 Using authentication type TLS
Status: Performing TLS handshake...
Status: TLS handshake successful, verifying certificate...
Command: USER Usera
Reply: 331 Password required for rheinenergie-klima
Command: PASS **********************
Reply: 230 Logged on
Command: SYST
Reply: 215 UNIX emulated by FileZilla
Command: FEAT
Reply: 211-Features:
Reply: MDTM
Reply: REST STREAM
Reply: SIZE
Reply: MLST type*;size*;modify*;
Reply: MLSD
Reply: AUTH SSL
Reply: AUTH TLS
Reply: PROT
Reply: PBSZ
Reply: UTF8
Reply: CLNT
Reply: MFMT
Reply: EPSV
Reply: EPRT
Reply: 211 End
Command: PBSZ 0
Reply: 200 PBSZ=0
Command: PROT P
Reply: 200 Protection level set to P
Command: PWD
Reply: 257 "/" is current directory.
Status: Current path is /
Command: TYPE I
Reply: 200 Type set to I
Command: PASV
Reply: 227 Entering Passive Mode (100,113,144,72,210,89)
Command: MLSD
Reply: 425 Can't open data connection for transfer of "/"
Error: Listing failed

Я пытался посмотреть на нескольких форумах, но не смог найти конкретный ответ. До сих пор я пробовал его как в активном, так и в пассивном режиме, и тестировал его через https://ftptest.net.

У меня включен FTP через TLS, и я также сгенерировал сертификат.

Входящие правила для моего порта (18183 был добавлен тоже).

Примечание: я не использую порт, предложенный сервером FileZilla.

2 ответа2

0

У нас такая же проблема, поскольку наши Azure RM vms находятся за балансировщиком нагрузки в Интернете в avset, и все правила NSG открыты на определенных портах, брандмауэр Windows выключен. Правильное определение порта для передачи данных см. Http://www.serv-u.com/respcode.asp?resp=227.

Ошибка: Вы, кажется, находитесь позади маршрутизатора NAT. Пожалуйста, настройте параметры пассивного режима и перенаправьте диапазон портов в вашем маршрутизаторе.

Ответ: Я получил его для работы с сервером filezilla, добавив правила NAT на балансировщик нагрузки на тот же порт, что и диапазон портов канала данных. Вы также можете использовать PS для этого тоже $LoadBalancer | Add-AzureRmLoadBalancerInboundNatRuleConfig -Name $NatRuleName -FrontendIpConfiguration $frontendIP1 -IdleTimeoutInMinutes 4 -Protocol TCP -FrontendPort 5000 -BackendPort 5000 | Set-AzureRmLoadBalancer

0

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

В этом режиме клиент FTP использует 2 канала:

  • Канал управления (прослушивание на порт 18183 в вашем случае), для подачи команд на сервер
  • Канал данных (прослушивание на портах 100,113,144,72,210,89, как показано командой PASV ), для отправки / получения данных

Этот режим 2 канала позволяет по-прежнему быть в состоянии давать команды при отправке / получении данных.

Я подозреваю, что в вашем случае некоторые порты в вашей виртуальной машине и / или в группе сетевой безопасности (если вы ее используете) не открыты. Поэтому вам нужно создать соответствующий ACL (список контроля доступа) или обновить входящие правила в группе сетевой безопасности, связанной с вашей виртуальной машиной, чтобы разрешить TCP-доступ через порты 100,113,144,72,210,89.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .