星期一, 二月 28, 2011

linux iptables


一直想试试linux下的iptables,终于2月份有时间尝试了一次。


调试的过程是痛苦的,痛苦在于services iptables restart之后很久,还是老的规则在生效,也不知道是缓存还是啥,反正很郁闷。


最终是好用的,记录如下。


简单说就是修改3文件。
vi /etc/modprobe.conf
vi /etc/sysconfig/iptables-config
vi /etc/sysconfig/iptables


vi /etc/modprobe.conf
[root@mxinews2 ~]# cat /etc/modprobe.conf
。。。。。。
options ip_conntrack_ftp ports=21,2131,2132,2133
options ip_nat_ftp ports=21,2131,2132,2133
重点是红色的部分哦。如果您的ftp server不是标准端口,在这里设置才好用。


vi /etc/sysconfig/iptables-config
[root@mxinews2 ~]# cat /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_conntrack"
IPTABLES_MODULES="ip_conntrack_ftp"
IPTABLES_MODULES="ip_nat"
IPTABLES_MODULES="ip_nat_ftp"


vi /etc/sysconfig/iptables
[root@mxinews2 logs]# cat /etc/sysconfig/iptables
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.11.0/24 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p udp -m udp --dport 694 -j ACCEPT
-A INPUT -s 192.168.11.0/24 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.11.0/24 -p udp -m multiport --dports 137,138 -j ACCEPT
-A INPUT -s 192.168.11.0/24 -p tcp -m multiport --dports 139,445 -j ACCEPT
#-A INPUT -j REJECT --reject-with icmp-port-unreachable
COMMIT