解决ftp的pasv模式下iptables设置问题

关于ftp的两个模式我就不再缀述,这里主要说下pasv模式下,iptables的设置

大家都知道,pasv模式下,控制端口是21,而数据传输端口再是大于1024的随机端口,这样iptables要想全部放开这些端口显然不太实际。

当然可以用固定端口的方式还减少开放端口的数量,但这不是本文的目的。

iptables有状态的防火墙

直接上命令:

/sbin/iptables -A INPUT  -p tcp  --dport 21 -j ACCEPT         <----开放控制端口

/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  <-------允许状态是RELATED(正是ftp发送数据时的状态),ESTABLISHED的封包通过。

iptables -P INPUT DROP  <------规则外的包直接丢弃

只完成以上还是不行的,还要有ip_conntrack_ftp模块的支持

防火墙规则保存后,直接执行 modprobe  ip_conntrack_ftp,或者添加到iptables的配置文件中,

vi /etc/sysconfig/iptables-config

添加:IPTABLES_MODULES="ip_conntrack_ftp"

之后重启iptables服务即可。

posted @ 2014-06-05 18:39  [言_午]  阅读(298)  评论(0编辑  收藏  举报