Executando FTP passivo na Máquina Virtual do Azure com vsftpd-linux

Executando FTP passivo na Máquina Virtual do Azure com vsftpd-linux

Como executar um servidor FTP passivo em uma máquina virtual Azure Linux?

Configurar os pontos de extremidade no firewall do Azure e nas portas PASV não é suficiente porque o cliente trava em "Entrando no modo passivo"

Responder1

Atualmente, executar o FTP passivo tão bem quanto você faria em um servidor dedicado não é possível por dois motivos: um é que o Azure atualmente permite que você abra apenas 25 pontos de extremidade (corrija-me se estiver errado) para cada servidor, e a outra é a conexão LAN<->IP virtual que o Azure usa. Vamos analisar os problemas um por um.

Atualmente, o Azure implementa um NAT/firewall/balanceador de carga que encaminha o tráfego de um IP Virtual externo para um endereço de rede interno ( 10.0.0.0/8classe). Se você rodar ifconfigna sua máquina virtual você encontrará do que estou falando. Um endpoint está reservado para SSH e não acredito que você realmente queira desativá-lo. Portanto, se outro endpoint estiver reservado para a porta 21, você poderá usar apenas 23 portas PASV (desde que não hospede nenhum outro serviço), limitando estritamente o número de clientes que podem se conectar simultaneamente. Depois de aceitar isso, vamos em frente.

Se você abriu as portas 25003-25006 (uma por uma), você pode usar a seguinte configuração para habilitá-las

pasv_enable=YES
pasv_min_port=25003
pasv_max_port=25006

vsftpde qualquer outro servidor FTP emite um PASVcomando que basicamente diz "conecte-se ao XYWZ na porta AA". Qualquer servidor FTP deve ler a configuração da máquina para obter o endereço de rede: é por isso que o vsftp basicamente diz "conecte-se a 10.XYZ na porta 25003" e, então, porque o cliente trava!!!

Use o seguinte para dizer ao vsftpd para usar um endereço externo diferente

pasv_addr_resolve=YES
pasv_address=dom.cloudapp.net

Testado, trabalhado e compartilhado com a comunidade!

Notas: O FTP ativo funciona assim que o cliente não está protegido por um firewall ou Grande Muralha, e o SFTP é a melhor alternativa ao FTP, mas infelizmente muitos aplicativos legados não o suportam.

informação relacionada