iptables默认拒绝允许访问特别的网站该怎么写
发表于 : 2012-03-30 16:23
如题,最近有这样一个需求,写一个客户端程序,这个程序的功能是限制本客户端访问任何外网的网站,但是会给一些特别的允许访问的网站,比如www.baidu.com.
我用iptables来做,我先到的是默认拒绝允许访问特别的策略:
我是这样写的:
1.首先将iptables中所有的规则清空:
iptables -F
iptables -X
2.INPUT和FORWARD保持ubuntu11.04的默认规则ACCEPT,将OUTPUT设置为DROP
iptables -P OUTPUT DROP
这个时候的确不能访问任何网站了。
3.我允许访问www.baidu.com。问题就来了,还不止不一个。我是这么写的:
iptables -A OUTPUT -d www.baidu.com -j ACCEPT
第一个问题:直接命令行直接报错,
iptables v1.4.10: host/network `www.baidu.com' not found
Try `iptables -h' or 'iptables --help' for more information.
不是应该支持域名的吗?
后来我直接改用ip地址,220.181.111.147
iptables -A OUTPUT -d 220.181.111.147 -j ACCEPT
第二个问题:命令行不包错了,可是
我用火狐访问www.baidu.com依然打不开;
然后我直接访问220.181.111.147 能打开百度首页!
我用iptables来做,我先到的是默认拒绝允许访问特别的策略:
我是这样写的:
1.首先将iptables中所有的规则清空:
iptables -F
iptables -X
2.INPUT和FORWARD保持ubuntu11.04的默认规则ACCEPT,将OUTPUT设置为DROP
iptables -P OUTPUT DROP
这个时候的确不能访问任何网站了。
3.我允许访问www.baidu.com。问题就来了,还不止不一个。我是这么写的:
iptables -A OUTPUT -d www.baidu.com -j ACCEPT
第一个问题:直接命令行直接报错,
iptables v1.4.10: host/network `www.baidu.com' not found
Try `iptables -h' or 'iptables --help' for more information.
不是应该支持域名的吗?
后来我直接改用ip地址,220.181.111.147
iptables -A OUTPUT -d 220.181.111.147 -j ACCEPT
第二个问题:命令行不包错了,可是
我用火狐访问www.baidu.com依然打不开;
然后我直接访问220.181.111.147 能打开百度首页!