Para resolver o problema de IP dinamico, posso ter um servidor de FTP (ProFTPD) com no-ip? Funciona ou as configurações do servidor de FTP são diferentes nesse caso?
Obrigado.
Para resolver o problema de IP dinamico, posso ter um servidor de FTP (ProFTPD) com no-ip? Funciona ou as configurações do servidor de FTP são diferentes nesse caso?
Obrigado.
Funciona sim, mas preste atenção em um detalhe: o ftp inicia a conexão pela porta 21, então ela tem que ficar aberta no firewall. Só que liberar somente esta porta não resolve, porque na configuração padrão (modo ativo) é o cliente que determina, de modo aleatório, quais serão as portas que serão usadas para a transferência de dados, então você tem que liberar o acesso para todas as portas acima da 1024, o que traz um compromisso sério na segurança. No caso do ProFTP há um jeito de minimizar o risco, libere apenas uma faixa de portas no firewall e configure o ProFTP para usá-las no modo passivo. No meu caso, ficou assim:
no arquivo /etc/proftpd/proftpd.conf
PassivePorts 60000-60999
no firewall:
iptables -t filter -A INPUT -p tcp -dport 60000:60999 -j ACCEPT
Obs: O cliente tem que estar em modo passivo e, se você tiver um número muito grande de conexões ftp simultâneas, aumente a quantidade de portas.
MHP,Postado originalmente por MHP
Entendi tudo certinho, mas sempre tive a seguinte dúvidas e penso que essa seria uma ótima oportunidade para tal.
Por genteliza o que vem a ser exatamente FTP Ativo e FTP Passivo?
Muito obrigado e aguardo retorno.
Caro aprendiz_ce,
Texto retirado do site da Micro$oft:
"O FTP suporta dois modos. Eles são chamados Padrão (ou PORT ou Ativo) e Passivo (ou PASV). O cliente FTP no modo Padrão envia os comandos PORT para o servidor FTP. O cliente no modo Passivo envia os comandos PASV para o servidor FTP. Esses comandos são enviados pelo canal do comando FTP ao estabelecer a sessão FTP.
Os clientes FTP no modo Padrão estabelecem primeiro uma conexão com a porta TCP 21 e com o servidor FTP. Essa conexão estabelece o canal do comando FTP. O cliente envia um comando PORT sobre o canal do comando FTP quando ele precisa enviar ou receber dados, como uma lista de pasta ou arquivo. O comando PORT contém informações sobre em qual porta o cliente FTP recebe a conexão de dados. No modo Padrão, o servidor FTP sempre inicia a conexão de dados da porta TCP 20. O servidor FTP deve abrir uma nova conexão para o cliente quando envia ou recebe dados e o cliente FTP solicita isso usando o comando PORT novamente.
Clientes FTP no modo Passivo também iniciam estabelecendo uma conexão para a porta TCP 21 no servidor FTP para criar o controle do canal. Quando o cliente envia um comando PASV sobre o canal de comando, o servidor FTP abre uma porta efêmera (entre 1024 e 5000) e informa o cliente FTP para se conectar a essa porta antes de solicitar a transferência de dados Assim como no modo Padrão, o cliente FTP deve enviar um novo comando PASV antes de cada transferência nova e o servidor FTP irá esperar uma conexão em uma nova porta para cada transferência."
Sintetizando: No modo ativo é o cliente que escolhe as portas e no modo passivo o servidor diz ao cliente quais portas ele pode usar. De qualquer forma, nos dois modos, a transferência é iniciada pelo cliente. por isso o firewall tem que liberar o acesso externo às respactivas portas.
O protocolo FTP é um dos mais antigos e é meio complicado para passar por NAT e firewall.
P.S.: Errata: Sobrou um tracinho no exemplo de configuração do ProFTP no e-mail anterior :-P.
O correto é:
PassivePorts 60000 60999
Espero ter ajudado,