O problema está relacionado ao fato de que o FTP passivo usa portas diferentes de 20 e 21. Leia sobre isso aqui: link
Normalmente eu configuro um intervalo de portas no arquivo vsftpd.conf para o Passive FTP e depois abro essas portas no firewall.
Além disso, sou principalmente um cara freebsd, mas tenho certeza que existe uma maneira no Linux de abrir dinamicamente as portas FTP PASV, mas outra pessoa terá que entrar em contato com essa. Eu vou olhar e ver o que posso encontrar.
No Linux, executando o comando:
modprobe ip_conntrack_ftp
deve corrigir o problema de conexão quando "entrar no modo passivo estendido".
EDITAR:
Primeiro hit no google: link
Melhor explicação: link