Solução de problemas de FTP

1

Eu tenho um centos 6.5 instalado no Virtual Box. Estou tentando configurar um servidor ftp básico. Abaixo estão os detalhes.

  1. vsftpd instalado do DVD / Yum: Status - > Bem sucedido

  2. Firewall desativado para fins de teste,

    chkconfig iptables off : successful
    
    service iptables stop : successful
    
  3. Também defina o selinux no modo desativado: com êxito

  4. Adicionada uma regra no VirtualBox para o encaminhamento de porta pelo NAT:

    Rule Protocol Host Port Guest Port
    Ftp  tcp.     2121.     21
    

Agora, quando tento me conectar com o usuário local ou anônimo, ele gera vários erros, sempre que ocorre um erro diferente.

Também estou adicionando mensagens de log mostradas pelo Filezila na minha máquina host.

- > LocalUserLogFromClient

Status: Disconnected from server
Status: Resolving address of localhost
Status: Connecting to [::1]:2121...
Status: Connection attempt failed with "ECONNREFUSED - Connection refused by
server", trying next address.
Status: Connecting to 127.0.0.1:2121...
Status: Connection established, waiting for welcome message...
Response:   220 Welcome to C6G FTP service.
Command:    AUTH TLS
Response:   530 Please login with USER and PASS.
Command:    AUTH SSL
Response:   530 Please login with USER and PASS.
Status: Insecure server, it does not support FTP over TLS.
Command:    USER FUser1
Response:   331 Please specify the password.
Command:    PASS *****
Error:  Connection timed out after 20 seconds of inactivity
Error:  Could not connect to server

- > AnonymousUserLog

Status: Resolving address of localhost
Status: Connecting to [::1]:2121...
Status: Connection attempt failed with "ECONNREFUSED - Connection refused by
server", trying next address.
Status: Connecting to 127.0.0.1:2121...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Status: Connected
Status: Retrieving directory listing...
Command:    PWD
Response:   257 "/"
Command:    TYPE I
Response:   200 Switching to Binary mode.
Command:    PASV
Response:   227 Entering Passive Mode (10,0,2,15,88,204).
Command:    LIST
Error:  The data connection could not be established: 10065
Error:  Connection timed out after 20 seconds of inactivity
Error:  Failed to retrieve directory listing
    
por Sollosa 15.09.2015 / 23:01

2 respostas

2

Seus registros mostram dois problemas diferentes:

  1. Para o usuário não anônimo, o login expirou. Após 20 segundos de espera para o login ser concluído, seu cliente de FTP desistiu. Isso provavelmente significa que sua configuração de autenticação (no servidor) não está funcionando - especialmente se você tentou configurar usuários virtuais, etc. Além disso, o servidor pode levar muito tempo para gravar em um log ou talvez executar um DNS resolução.

  2. Seu log de usuário anônimo provavelmente está com um problema de NAT. 227 Entering Passive Mode (10,0,2,15,88,204). significa que o cliente precisa fazer uma conexão com 10.0.2.15:22732/tcp e seu relatório atingiu o tempo limite. Esse é um endereço estranho para se conectar, já que a própria conexão FTP é para localhost.

(BTW: os dois últimos números são dois bytes do número da porta, na ordem de bytes da rede. Então, 88 × 256 + 204 = 22732.)

    
por 16.09.2015 / 17:57
1

Um servidor FTP atrás de um encaminhador de porta não pode atender no modo passivo, a menos que o software usado tenha um projeto especial para passar as conexões de dados FTP. Casos são:

  • O software NAT capaz de farejar 227 Entering Passive Mode na conexão de controle FTP, fazer o encaminhamento de porta de maneira adequada e algum processamento de dados de controle FTP.
  • O servidor FTP que está enviando o modo passivo com o endereço IP visível (NAT) e o encaminhamento de NAT dado o intervalo de portas.
    Obrigado a @derobert por apontar uma falha no meu raciocínio original.

O NAT do kernel Linux é fornecido com um suporte FTP (opcional). Mas se o Linux é o convidado, então seu NAT não tem nada a ver com o problema. O NAT do sistema host deve fazer NAT para o convidado, de fato. O software NAT do Windows questiona essa capacidade? Não sei, e não é uma questão do Linux de qualquer maneira. Solução recomendada: substitua o NAT pela ponte para a máquina virtual.

    
por 16.09.2015 / 20:30

Tags