不可能从远端服务器连接到VSFTPD

我的FTP服务器是带有VSFTPD的CentOS 5.4。

当我尝试使用FTP连接到我的服务器后ls我得到这个:

 ftp> ls 229 Entering Extended Passive Mode (|||12206|) ftp: Can't connect to `000.000.000.000': Connection refused 500 Illegal PORT command. 425 Use PORT or PASV first. 

我可以做任何问题mkdir

当我从同一台服务器连接到我的FTP服务器时,我没有问题。

端口20和21在我的iptable中打开。 我该如何解决这个问题?

谢谢!!

更新:

 telnet myftpserver.com 20 Trying 000.000.000.000... telnet: connect to address 000.000.000.000: Connection refused telnet: Unable to connect to remote host 

 [root@internal vsftpd]# /sbin/iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0 SSH_CHECK tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 state NEW Chain FORWARD (policy ACCEPT) target prot opt source destination RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain RH-Firewall-1-INPUT (2 references) target prot opt source destination ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:33988 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:20 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255 ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0 ACCEPT ah -- 0.0.0.0/0 0.0.0.0/0 ACCEPT udp -- 0.0.0.0/0 224.0.0.251 udp dpt:5353 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:631 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:631 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain SSH_CHECK (1 references) target prot opt source destination all -- 0.0.0.0/0 0.0.0.0/0 recent: SET name: SSH side: source DROP all -- 0.0.0.0/0 0.0.0.0/0 recent: UPDATE seconds: 60 hit_count: 4 name: SSH side: source 

这个问题与Passive FTP使用20和21以外的端口有关。请阅读http://slacksite.com/other/ftp.html

通常我会在被动FTP的vsftpd.conf文件中设置一个端口范围,然后在防火墙上打开这些端口。

此外,我主要是一个freebsd的家伙,但我敢肯定,有一种方法在Linux上dynamic地打开FTP PASV端口,但其他人将不得不在那个钟声。 我会看看我能find什么。

在Linux中,运行命令:

 modprobe ip_conntrack_ftp 

应在“进入扩展被动模式”时更正连接问题。

编辑:

首先击中谷歌: http : //www.cyberciti.biz/faq/iptables-passive-ftp-is-not-working/

更好的解释: http : //www.sns.ias.edu/~jns/wp/2006/01/12/iptables-connection-tracking-ftp/