Não é possível conectar-se ao servidor FTP a partir do host externo

1

Eu tenho um servidor FTP (vsftpd) configurado em uma caixa Linux (servidor Ubuntu). Quando tento me conectar a um computador na mesma rede, tudo funciona bem como esperado.

Mas assim que o IP for externo, ele não será conectado ...

Assumi pela primeira vez que a porta estava bloqueada, mas depois:

localserver:$ sudo tail -f /var/log/vsftpd.log
Wed Jan 13 14:21:17 2010 [pid 2407] CONNECT: Client "xxx.xxx.107.4"
remotemachine:$ netcat svn-motion.no-ip.biz 21
220 FTP Server

E fica pendurado lá. Alguma porta diferente de 21 precisa estar aberta?

    
por h3. 13.01.2010 / 20:21

3 respostas

1

Ao colocar um servidor FTP atrás de um NAT, você não só precisa encaminhar a porta 21 / TCP para o servidor, mas também precisa de um gateway NAT que possua um FTP ALG que suporta servidores FTP atrás do NAT (nota: este é um recurso raro, e raramente anunciado na caixa ou na página de especificações técnicas ou mesmo no manual), e sabe assistir o fluxo de dados de controle FTP para comandos de clientes que indicam que o cliente deseja que o servidor FTP use o modo passivo (onde o servidor FTP inicia a escuta de uma conexão TCP de dados em outra porta, envia esse número para o cliente e aguarda passivamente para o cliente iniciar a conexão TCP de dados para o servidor). O ALG de FTP precisa observar em qual porta o servidor solicitou que o cliente se conecte e, em seguida, criar automaticamente uma entrada de encaminhamento de porta temporária para permitir que essa conexão chegue ao servidor.

Basicamente, o modo Passivo FTP, que é ótimo quando o cliente está por trás de um NAT, é um grande problema quando o servidor está por trás do NAT. Se o seu cliente não estiver por trás de um NAT, diga ao seu cliente para usar o modo FTP "ativo" tradicional, e você não precisa ter um sofisticado "servidor atrás do NAT" FTP ALG no seu gateway NAT. / p>

Outra opção seria tornar seu servidor FTP seu host DMZ (também conhecido como "host padrão", "host bastião"). Como todas as tentativas inesperadas de conexão de entrada são encaminhadas para a DMZ, todas essas conexões TCP de dados FTP de modo passivo passariam automaticamente pelo servidor FTP.

    
por 01.08.2012 / 06:17
0

Se o servidor estiver atrás de qualquer tipo de firewall, talvez seja necessário verificar se o remotemachine está usando o modo passivo FTP.

    
por 13.01.2010 / 20:27
0

Você está tentando se conectar ao IP externo do servidor de um computador interno? Nesse caso, e se você estiver usando um roteador doméstico típico em uma configuração NAT, o problema pode ser o roteador.

Provavelmente, você configurou o roteador para encaminhar o FTP para o servidor Ubuntu e está tentando testar se isso funciona. Mas quando você testa o IP externo diretamente de sua rede interna, seu roteador tem que suportar uma rota "hairpin". Seu roteador deve enviar tráfego de um host interno , através do IP externo , de volta para o IP externo , e finalmente encaminhar isso de volta para o seu IP interno do servidor - tudo no mesmo dispositivo. A maioria dos roteadores de consumidores não lida corretamente com essa situação.

Então você precisa testar a partir de um host externo real. Você tem várias opções:

  • Use um serviço de teste de portas da Internet como Você pode me ver .
  • Envie seu tráfego de teste por meio de um proxy.
  • Peça a um amigo que teste na rede.
  • Encontre uma cafeteria local com WiFi e teste a partir daí.
por 02.04.2010 / 09:30