Existem duas conexões feitas para uma sessão FTP - controle (porta 21) e dados (porta 20). O comportamento normal do FTP é que o cliente se conecte ao servidor (novamente, a porta 21) e, em seguida, o servidor abre a conexão de dados de volta ao cliente. Isso ocorre de várias maneiras em ambientes que usam NAT, firewalls, etc. Esse modo tradicional é conhecido como modo ativo. Lembre-se de que muitos comandos que parecem estar controlando o tráfego (ou seja, listando um diretório), na verdade, exigem uma conexão de dados em funcionamento.
O modo passivo (PASV) é quando o cliente especifica qual porta usar. Isso, por sua vez, permite que o NAT (em várias formas) abra uma sessão e permita que os dados passem. Você precisa de um cliente (e servidor) capaz de suportar FTP passivo.
Tudo está bem explicado aqui - link