---> slacker USUÁRIO
331 Senha necessária para slacker
senha.:. TmpPass
---> PASS XXXX
230 slacker usuário logado
---> SYST
215 UNIX Tipo: L8
sistema remoto tipo é UNIX
Usando modo binário para transferir arquivos
ftp> ls
ftp:.. setsockopt (ignorado): Permissão negada
---> PORT 192,168,150,80,14,178
200 PORT comando bem-sucedido.
---> LISTA
150 Abertura de conexão de dados modo ASCII para arquivo lista.
drwx ------ 3 usuários slacker 104 27 jul 01:45 public_html
226 Transferência completa .
ftp> quit
---> SAIR
221 Adeus.
Passive FTP A fim de resolver o problema do servidor iniciar a conexão com o cliente um método diferente para conexões FTP foi desenvolvido. Este era conhecido como modo passivo, ou PASV, após o comando usado pelo cliente para informar o servidor está em modo passivo.
Em FTP modo passivo o cliente inicia ambas as conexões com o servidor, resolvendo o problema de firewalls que filtram a conexão da porta de entrada de dados para o cliente a partir do servidor. Ao abrir uma conexão de FTP, o cliente abre duas portas aleatórias sem privilégios localmente (N> 1024 e N + 1). Os primeiros contatos porta o servidor na porta 21, mas em vez de, em seguida, emitir um comando PORT e permitir que o servidor para se conectar de volta à sua porta de dados, o cliente emite o comando PASV.
O resultado disso é que o servidor abre uma porta não privilegiada aleatória (P> 1024) e envia o comando PORT P novamente para o cliente. O cliente, em seguida, inicia a conexão da porta N + 1 para a porta P no servidor para transferir dados
Do ponto de vista do firewall do lado do servidor, para suportar o modo passivo FTP os seguintes canais de comunicação precisam ser abertas:.
FTP porta do servidor 21 de qualquer lugar (o cliente inicia conexão)
porta 21 do servidor FTP para portas> 1024 (servidor responde à porta de controle de clientes) em portos do servidor FTP> 1024 a partir de qualquer lugar (o cliente inicia a conexão de dados com a porta aleatória especificada pelo servidor )
portas do servidor FTP> 1024 para portas remotas> 1024 (o servidor envia ACKs (e dados) para porta de dados do cliente)
Na etapa 1, o cliente contata o servidor na porta de comando e emite o comando PASV.
O servidor então responde na etapa 2 com PORT 2024, informando o cliente que porta está escutando para a conexão de