我正在尝试阻止使用系统上的浏览器访问特定 IP 地址。我添加了一条简单的规则,如下所示
iptables -A OUTPUT -d <IP> -j DROP
站点在命令行中被阻止,即 ping、nmap 等。但是当我尝试使用浏览器访问 IP 时,它已连接。我的 iptables 上没有任何额外的规则。我可以知道这是什么问题吗?我正在运行 Ubuntu 12.04。
答案1
发生这种情况很可能是由于以下两个原因之一。
更可能的原因是表中有一条规则专门允许访问端口 80,而该规则在此规则之前匹配。如果是这种情况,您可以将规则“插入”到表的顶部,而不是使用以下行“附加”它
iptables -I 输出 -d -j 删除
或者(可能性较小)如果你在充当路由器的 Linux 机器上发出此命令,并且浏览器位于通过该机器连接的计算机上,则需要使用前向链,而不是输出链
iptables -I FORWARD -d -j DROP