
Estou recebendo o seguinte erro ao tentar conectar-me ao servidor FTP implantado em minha VM do 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 ([email protected])
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
Tentei procurar em vários fóruns, mas não consegui encontrar uma resposta concreta. Até agora eu tentei no modo ativo e passivo e testei viahttps://ftptest.net.
Tenho meu FTP sobre TLS ativado e também gerei o certificado.
Regras de entrada para minha porta (18183 também foi adicionado).
Nota: não estou usando a porta sugerida pelo servidor FileZilla.
Responder1
O log de erros fornecido mostra que seu cliente FTP está se conectando ao servidor FTP usandomodo passivo.
Neste modo, o cliente FTP utiliza 2 canais:
- Ocanal de controle(escutando na porta 18183 no seu caso), para dar comandos ao servidor
- Ocanal de dados(escutando nas portas 100.113.144.72.210.89 conforme mostrado pelo
PASV
comando), para enviar/receber dados
Este modo de 2 canais permite ainda dar comandos durante o envio/recebimento de dados.
No seu caso, suspeito que algumas portas na sua VM e/ou grupo de segurança de rede (se você usar um) não estão abertas. Portanto, você precisa criar a ACL (lista de controle de acesso) correspondente ou atualizar suas regras de entrada no grupo de segurança de rede associado à sua VM para permitir o acesso TCP nas portas 100,113,144,72,210,89.
Responder2
também estamos tendo o mesmo problema, pois nossos vms RM do Azure estão atrás de um balanceador de carga da Internet em um avset e todas as regras NSG estão abertas nas portas específicas, com o firewall do Windows desativado. A definição correta da porta do canal de dados, consultehttp://www.serv-u.com/respcode.asp?resp=227
Erro: parece que você está atrás de um roteador NAT. Defina as configurações do modo passivo e encaminhe um intervalo de portas em seu roteador.
Resposta: Fiz funcionar usando o servidor filezilla adicionando regras NAT no balanceador de carga na mesma porta do intervalo de portas do canal de dados. Você também pode usar PS para isso$LoadBalancer | Add-AzureRmLoadBalancerInboundNatRuleConfig -Name $NatRuleName -FrontendIpConfiguration $frontendIP1 -IdleTimeoutInMinutes 4 -Protocol TCP -FrontendPort 5000 -BackendPort 5000 | Set-AzureRmLoadBalancer