iptables里面仅仅开放了80、21等常用端口,这样就导致了vsFTPd在被动模式时无法使用随机端口,从而造成了客户端连接FTP时无法列出目录这样的问题。解决方式很简单,给vsFTPd增加随机端口的范围,然后把这个端口范围添加到iptables。
具体做法如下:

1、修改/etc/vsftpd/vsftpd.conf的配置文件,在文件末端添加:
复制代码 代码如下:
pasv_max_port=6666
pasv_min_port=5555
/etc/init.d/vsftpd restart

2、添加一条防火墙规则
复制代码 代码如下:
/etc/init.d/iptables stop
iptables -I INPUT -p tcp --dport 5555:6666 -j ACCEPT
/etc/init.d/iptables save
/etc/init.d/iptables start

最后再次进行ftp连接,成功。

第二种方法:

添加附加模块,链接追踪模块
复制代码 代码如下:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
modprobe ip_conntrack_ftp //临时加载

/etc/sysconfig/iptables-config//这个是永久的
IPTABLES_MODULES="ip_conntrack_netbios_ns ip_conntrack_ftp"

service iptables restart

标签:
iptables防火墙规则,vsftp登录,显示文件目录

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com