LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 872|回复: 7

请教:要禁止内网访问某站点,iptables语句该如何写?

[复制链接]
发表于 2004-3-3 16:08:44 | 显示全部楼层 |阅读模式
我用iptables -A FORWARD -p tcp -s www.100bao.com -j DROP后,还是能打开网站。
发表于 2004-3-3 17:19:07 | 显示全部楼层
这样是没用的 以前我试过 要根据你的规则来写的
最简单的方法是
iptables -t nat -A PREROUTING -p tcp -i ethX -d www.100bao.com -s 192.168.0.0/24 -j SNAT --to-source 192.168.0.1 哈哈
 楼主| 发表于 2004-3-3 18:02:05 | 显示全部楼层
???

iptables -t nat -A PREROUTING -p tcp -i eth0 -d www.100bao.com -s 192.168.0.0/24 -j SNAT --to-source 192.168.0.250

iptables: Invalid argument
 楼主| 发表于 2004-3-3 18:03:27 | 显示全部楼层
你的意思我把他映射到本地服务器上,是吗?
发表于 2004-3-3 20:09:42 | 显示全部楼层
写错了 应该是DNAT
发表于 2004-3-4 12:23:33 | 显示全部楼层
还有一种方法是将总policy配置成DROP再配置哪些网站不能上,最后配置all accept。 比如象封杀www.yahoo.com这样的网站, 最好将INPUT/FORWARD/OUTPUT都配置好。但一般的单一IP-web服务器对应的网站,只要封INPUT或OUTPUT就行了。版主用NAT专发到本地也是不错,只是如果没有NAT 的网络就行不通了。

e.g. (单单实现封www.yahoo.com的功能)
iptables -P INPUT DROP
iptables -A INPUT -s www.yahoo.com -d 192.168.0.0/16 -j DROP
或iptables -A INPUT -s www.yahoo.com -d 192.168.0.0/16 -j REJECT (还能有error返回,DROP 的话就什么都不返回。)
iptables -A INPUT -j ACCEPT

iptables -P FORWARD DROP
iptables -A FORWARD -s 192.168.0.0/16 -d www.yahoo.com -j DROP
....
接下去都一样。 虽然这个办法麻烦一点,但是好处是很易懂, 而且不用管网络类型,通用。我测试了,还是挺好使的。
发表于 2004-3-4 12:27:58 | 显示全部楼层
对不起,其实没有NAT的网络还是可以实现IP包转发的。我想的太直了,其实如果没有NAT而将IP包转到192.168网,不就相当于DROP了吗。。。
发表于 2004-3-5 08:31:08 | 显示全部楼层
如果用squid那就太简单了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表