我在Linux 16.04系统上有本地(家用)计算机。我如何才能阻止除一个/几个网址以外的所有互联网流量?
我正在尝试使用iptables
规则:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -s facebook.com -p tcp --sport www -j ACCEPT
但是这种实现方式不起作用。我在哪里有错误?或者,也许我需要使用其他内容代替
iptables
。 最佳答案
如果需要阻止除特定范围外的所有传入通信,则应首先将INPUT链的默认策略更改为DROP:
iptables --policy INPUT DROP
然后,应为
iptables
设置一个网络掩码,以允许全部例外的IP地址。例如,如果只需要将74.231.64.1
,74.231.64.2
允许为74.231.64.255
,则可以使用以下命令:iptables -A INPUT -s 74.231.64.0/24 -j ACCEPT
74.231.64.0/24
告诉iptables将相同的角色应用于74.231.64.1
至74.231.64.255
之间的所有不同IP。同样,您可以通过传递74.231.0.0/16
或74.0.0.0/8
来扩大此范围。重要说明:在应用此更改之前,最好直接访问系统,而不是通过网络访问。这是因为未命中类型可能会阻止您访问服务器。
关于linux - 如何阻止本地linux计算机上的所有Internet通信期望一个URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39450095/