iptables 是一个状态包检测防火墙stateful packet inspection。
实际上由netfilter和iptables两个组件构成。netfilter是集成在内核中的一部分,其作用是定义、保存相应的规则,而iptables是一种工具,用来修改信息的过滤规则及其他配置。
netfilter是Linux核心中的一个通用架构,其提供了一系列的表(tables),每个表由若干个链(chains)组成,而每条链可以由一条或若干条规则(rules)组成。
详细的可以参见 参考资料 1 2
环境:linux .winxp两台
Linux eth2:ip:10.1.10.251 接外网
linux eth1:ip:6.6.6.6 接内网(winxp)
1、配置默认策略
开启转发:修改/etc/sysctl.conf的net.ipv4.ip_forward=1
#不要修改/proc/sys/net/ipv4/ip_forward重启不保存
iptables -F:清空所选链中的规则,如果没有指定链则清空指定表中所有链的规则
iptables -X:清除预设表filter中使用者自定链中的规则
iptables -Z:清除预设表filter中使用者自定链中的规则
iptables -P INPUT DROP
iptables -P FORWARD DROP
2.允许环回
iptables -A INPUT -i lo -j ACCEPT
3.连接状态设置
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state –state ESTABLISHED,RELATED -j ACCEPT
4.实施NAT
iptables -t nat -A POSTROUTING -j MASQUERADE
#此设置比较危险,推荐按照入接口,源地址,出接口进行NAT
#该设置会使所有接口都成为NAT入接口包括eth2
5.允许内部上网
iptables -A FORWARD -p tcp –dport 80 -j ACCEPT
iptables -A FORWARD -p tcp –dport 53 -j ACCEPT
iptables -A FORWARD -p udp –dport 53 -j ACCEPT
6.保存
iptables-save或service iptables save
7.测试,ok,QQ能上,网页能上
参考资料:
1.http://redking.blog.51cto.com/27212/143185
2.http://linux.vbird.org/linux_server/0250simple_firewall.php
精彩评论:
wss8848 | #1
June 6, 2010 at 2:12 pm
ip6tables 操作基本相同 无NAT表
易棋牌 | #2
June 7, 2010 at 2:14 pm
不错 哦““`
rayyn | #3
June 11, 2010 at 6:40 pm
v4的NAT很强大。。VPN全靠它了。。
v6没NAT了。。希望v6早日普及。。
rayyn | #4
June 11, 2010 at 6:41 pm
。。。半天没打开。。。
DNS lookup failure for: ggssl.com。。
转载请注明:IPCPU-网络之路 » linux下基于ipables的NAT的配置