Você recebe a mensagem de erro "Falha ao recuperar a listagem de diretório" porque o cliente FTP não obtém a listagem de diretórios do servidor, provavelmente devido a um problema de firewall ou de rede.
O protocolo FTP foi inventado muito antes dos firewalls de rede e da Tradução de endereços de rede, e usa um canal de comando e um canal de dados separados para a comunicação.
Quando você faz login, apenas o canal de comando está em uso.
Quando você executa uma listagem de diretórios, o cliente e o servidor informam um ao outro no canal de comando sobre qual endereço IP e porta (60746 no exemplo) o canal de dados deve ser configurado dinamicamente para a transferência dos dados de listagem de diretórios .
Isso é feito com o comando FTP PORT ou PASV.
No seu caso, o cliente emite o comando PASV e o servidor responde com:
227 Entering Passive Mode (109,xxx,xx,xxx,237,74).
Os primeiros 4 octetos dentro dos parênteses fazem o endereço IP, e os dois últimos o número da porta (256 * 237 + 74 = 60746).
Você está executando o servidor FTP dentro de uma máquina virtual com um adaptador de rede no estilo NAT
configurado para a máquina virtual (em oposição a Bridged
)? Então, essa é provavelmente a causa de seus problemas, porque esses tipos de VM: s geralmente não podem ser acessados do "lado de fora", já que eles compartilham o endereço IP do host físico.
As portas 60000-65535 estão abertas no servidor? Sua configuração especifica esse intervalo a ser usado para conexões passivas. Você pode reduzi-lo a um intervalo menor para exigir menos portas abertas no firewall.