O FTP usa mais de uma única porta. TCP 21 é apenas para o canal de comando. Quando você faz uma listagem de diretórios, você está transferindo o resultado pelo canal de dados.
Como você está usando o modo passivo, o servidor abrirá uma porta alta aleatória (> 1024) para o canal de dados e o cliente deverá abrir uma segunda conexão TCP com essa porta.
Normalmente, logo após o comando PASV, o servidor deve responder com
227 Entering Passive Mode (130,255,190,71, 4, 128)
Isto irá dizer ao seu cliente que o servidor 130.255.190.71 está escutando você na porta (4 * 256 + 128) = 1152
Então: - Tente obter a mensagem bruta, incluindo a resposta do servidor (a resposta ao comando PASV) - Verifique suas regras de firewall novamente