Leandro,
o seu problema parece ser de um firewall do lado do cliente que não é esperto o suficiente para alterar os endereços dos clientes nos pacotes ftp ou o firewall do lado do cliente está bloqueando as tentativas do servidor ftp de se conectar a uma porta alta do lado do cliente.
Talvez uma solução possível seja configurar a sessão ftp no lado do cliente como passiva.
Veja uma explanação sobre o protocolo ftp aqui:
http://slacksite.com/other/ftp.html
2009/11/15 Leandro Moreira <leandro@leandromoreira.eti.br>Caros,
Eu tenho no meu firewall uma regra de nat, redirecionando porta 20 e 21 tcp e upd para o meu servidor interno, como podem ver o log abaixo eu consigo logar no ftp:
Sun Nov 15 16:37:38 2009 [pid 18355] CONNECT: Client "201.73.248.83"
Sun Nov 15 16:37:38 2009 [pid 18354] [lmoreira] OK LOGIN: Client "201.73.248.83"
Ele so nao ta listando o diretório,:
tatus: Conectando com XXX.XXX.XXX.XXX:21...
Status: Conexão estabelecida, esperando a mensagem de boas vindas...
Resposta: 220 Bem vindo a Selva
Comando: AUTH TLS
Resposta: 234 Proceed with negotiation.
Status: Inicializando TLS...
Status: Verificando o certificado...
Comando: USER lmoreira
Status: Conexão TLS/SSL estabelecida.
Resposta: 331 Please specify the password.
Comando: PASS ***********
Resposta: 230 Login successful.
Comando: OPTS UTF8 ON
Resposta: 200 Always in UTF8 mode.
Comando: PBSZ 0
Resposta: 200 PBSZ set to 0.
Comando: PROT P
Resposta: 200 PROT now Private.
Status: Conectado
Status: Recuperando a listagem de pastas...
Comando: PWD
Resposta: 257 "/"
Comando: TYPE I
Resposta: 200 Switching to Binary mode.
Comando: PORT 172,16,0,254,12,62
Resposta: 500 Illegal PORT command.
Erro: Falhou em recuperar a listagem de diretórios
Configurei o filezila para usar ftp ativo, como foi sugerido o uso do tcpdum, ja tinha feito anteriormente e repeit o teste, loguei as conexões em direção ao meu servidor de ftp com o iptables, elas estao passando normalmente pelos meus 2 firewalls (tenho um firewall de borda e um para a DMZ), inclusios modulos sugeridos pelo Thiago ja estavam levantados no 2 firewalls
firewall de borda:
Nov 15 17:14:39 atena kernel: FTPIN=eth0 OUT=eth1 SRC="" DST=172.20.0.143 LEN=40 TOS=0x00 PREC=0x00 TTL=117 ID=20360 DF PROTO=TCP SPT=3188 DPT=21 WINDOW=16201 RES=0x00 ACK URGP=00
Forewall DMZ:
Nov 15 17:08:37 frankwall kernel: FTPIN=eth0 OUT=eth2 SRC="" DST=172.20.0.143 LEN=40 TOS=0x00 PREC=0x00 TTL=116 ID=21549 DF PROTO=TCP SPT=3196 DPT=21 WINDOW=16201 RES=0x00 ACK URGP=0
E no servidor FTP conforme o log acima a conexao esta funcionando, o cliente autentica ele ta com problemas para lista o conteudo do diretorio, abaixo segue a minha configuração do ftp
tipo de servidor: ftpes - ftp sobre tls/ssl explicito
Modo: Ativo
Agradeço a atenção.
Att.
Leandro Moreira2009/11/15 Thiago Silveira de Oliveira <thiagocpv@ig.com.br>
Queridão, adiciona no seu firewall.....modprobe ip_nat_ftpmodprobe ip_conntrack_ftpIsso já deve resolver seu problema...Abraços!!!!2009/11/14 Leandro Moreira <leandro@leandromoreira.eti.br>Caros,
Instalei um servidor ftp usando vsftpd com TLS, na empresa conecta sem problema algum, fora da empresa quanto mando conectar ele me retorna a seguinte mensage:
Falhou em recuperar a listagem de diretórios
No log do vsftpd vi a seguinte mensagem:
Sat Nov 14 22:18:33 2009 [pid 14765] [lmoreira] OK LOGIN: Client "187.16.186.247"
Pelo que entendi ele conecta no servidor mas nao lista o conteudo do diretórios, estou usando nodo ativo para o ftp, com as devidas portas liberadas nos firewall, abaixo segue o meu vsfptd.conf:
listen=YES
local_max_rate=100000
anonymous_enable=NO
syslog_enable=no
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
ftpd_banner=Bem vindo a Selva
use_localtime=YES
chroot_local_user=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_file=/etc/ftpusers
max_per_ip=3
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=NO
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
Agradeço desde ja a atenção.
Att.
--
Leandro Moreira
Linux Administrator: LPIC-1
e-mail/msn: leandro@leandromoreira.eti.br
Tel.: + 55(32) 9906-5713
--
Leandro Moreira
Linux Administrator: LPIC-1
e-mail/msn: leandro@leandromoreira.eti.br
Tel.: + 55(32) 9906-5713