Eu tenho vsftpd em execução no meu servidor Ubuntu, que está por trás de um roteador Asus RT-N66U. A porta 21 é encaminhada para o servidor.
Eu posso conectar-me através do meu endereço IP público ao servidor e listar os arquivos no diretório pessoal. Se eu tentar mudar o diretório para um contendo muitos arquivos, ele simplesmente trava com "150 Aí vem a listagem do diretório", e depois de alguns segundos me dá um erro (421 Timeout) e fecha a conexão.
Ao conectar-se via IP local do servidor dentro da LAN, o comportamento é normal (e muito mais responsivo), e não tenho problemas para listar diretórios com milhares de arquivos.
Qual poderia ser o problema?