解决方法

1.在服务端配置被动模式就可以从根源上解决这问题。

编辑 Vsftpd  配置文件

vi /etc/vsftpd/vsftpd.conf

在最下面添加以下信息

 

 

pasv_enable=YES         #开启被动模式(切记,YES后面不能有空格,否则启动报错)

pasv_min_port=7000      #随机最小端口

pasv_max_port=8000      #随机最大端口

 

2.加载内核 ip_conntrack_ftp  ip_nat_ftp

写入 /etc/rc.local 

 

modprobe ip_conntrack_ftp

modprobe ip_nat_ftp

3.配置 iptables 开放 7000  8000 端口,和20 ,21 端口

vi /etc/sysconfig/iptables 在 ssh 规则下下加入下

-A INPUT -m state --state NEW -m tcp -p tcp --dport 7000:8000 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

 

4.重启 iptables 

service  iptables  restart

 

5.  重启 Vsftpd

service vsftpd restart

6 测试连接

 Linux Vsftpd 解决被动模式-LMLPHP

12-09 16:22