分页: 1 / 1

写iptables限制外部访问

发表于 : 2017-02-04 21:44
whaha
仅仅允许本机访问 58.83.238.20 ,
/sbin/iptables -A INPUT -i eth1 -p tcp -s 58.83.238.20 --dport 80 -j ACCEPT
这句话允许本机访问 58.83.238.20 ,如何再写一条,禁止它访问其他网站?

Re: 写iptables限制外部访问

发表于 : 2017-02-04 22:49
lilydjwg
更改默认策略:

代码: 全选

iptables -P OUTPUT DROP
不太明白你的「其他网站」指的是什么。这样加之后会禁止向外的所有通讯(除非之前允许过)。如果只是限制 80 端口,你加句 iptables -A OUTPUT -p tcp --dport 80 -j REJECT/DROP 就可以了。

另外,你那行加到了 INPUT chain 上,是说允许指定 IP 访问本地。

Re: 写iptables限制外部访问

发表于 : 2017-02-05 20:14
whaha
仅仅允许访问 58.83.238.20 ,其他的都不可以。

Re: 写iptables限制外部访问

发表于 : 2017-02-14 10:39
frostfall
whaha 写了:仅仅允许访问 58.83.238.20 ,其他的都不可以。
并不清楚你的意思,看标题貌似是限制外部访问本机,看着一楼貌似又是限制本机访问外部
两者操作的链是不一样的,前者是INPUT链,后者是OUTPUT链

如果是前者:
iptables -A INPUT -i eth1 -p tcp -s 58.83.238.20 --dport 80 -j ACCEPT
然后执行iptables -P INPUT DROP,注意如果你是ssh连接,要先执行iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT

如果是后者:
iptables -A OUTPUT -i eth1 -p tcp -s 58.83.238.20 --dport 80 -j ACCEPT
然后执行iptables -P OUTPUT DROP,同样如果你是ssh连接,要先执行iptables -A OUTPUT -i eth1 -p tcp --sport 22 -j ACCEPT