ryuuaki42, após algumas pesquisas e alguns testes, tenho chegado a algumas conclusões a respeito dos meus últimos questionamentos (no meu último post).
desde já, adianto que esses meus últimos questionamentos (no meu último post) contém algumas pressuposições que estão imprecisas ou mesmo equivocadas.
também desde já, adianto as novas conclusões a que tenho chegado:
- a questão central para a distinção entre o FTP Ativo e o Passivo não diz respeito às portas. o elemento central é se a conexão é estabelecida pelo Cliente (ftp Passivo) ou se é estabelecida pelo Servidor (ftp Ativo).
- tanto no modo Ativo quanto no Passivo as portas configuradas no arquivo /proc/sys/net/ipv4/ip_local_port_range são observadas.
tendo exposto já as conclusões, vamos aos seus detalhamentos...:
quando se tenta (a partir do cliente) baixar um arquivo por meio do FTP Ativo, no processo de negociação da conexão é o servidor que estabelece a conexão de dados com o cliente (a conexão de comando foi o cliente que estabeleceu).
nesse processo de estabelecimento das conexões o ranger de portas (/proc/sys/net/ipv4/ip_local_port_range) é observado tanto o do cliente quanto o do servidor. o ranger de portas que finalmente será utilizado será composto por aquelas portas que estejam presentes tanto no ranger do servidor quanto no do cliente (as portas que formas uma intercessão dos dois ranger's. (como o ranger do servidor tende a ser todo o conjunto de portas altas, então na prática o ranger utilizado é o do cliente). [Editado: esse parágrafo contém um equívoco, que explico quatro tópicos meus à frente]
o complicador do modo FTP Ativo (considerado "padrão', embora atualmente seja pouco utilizado) é que, de certa forma, contraria um princípio da filosofia Cliente-Servidor: neste caso, será o servidor que vai estabelecer uma conexão no cliente.
o complicador é que, em geral, os firewall's bloqueiam conexões que tentam se conectar à um cliente (por que em tese apenas servidores deveriam ser conectados.
já no modo Passivo, as possíveis portas a serem utilizadas são acordadas, igualmente como no modo Ativo, observando as portas configuradas no arquivo /proc/sys/net/ipv4/ip_local_port_range tanto do servidor quanto do cliente.
sendo que neste modo de FTP é o cliente que estabelece a conexão.
fiz os seguintes testes para chegar a essas conclusões...
defini o ranger de portas com um intervalo curto e pouquíssimo usual: