我正在尝试在我的 Ubuntu 服务器 12.04 中使用 iptables 阻止一个 IP。
外部IP是117.16.18.95.dyna。你可以看看下图:
我已使用以下命令将此 IP 添加到 iptables:
sudo iptables -A INPUT -s 117.16.18.95 -p tcp -j DROP
sudo service iptables-persistent save
sudo service iptables-persistent restart
然而,当我再次运行该命令时netstat -tap
,该IP并没有被阻止。
我如何从我的 Ubuntu 服务器移除/阻止/删除此 IP?
答案1
IP 地址仅包含数字。因此“117.16.18.95.dyna”肯定不是 IP,而是 FQDN。我怀疑真实 IP 被反转了。因此,尝试阻止 95.18.16.117
或者只是为了确保尝试使用“-n”参数的 netstat,它将阻止 IP 解析为 FQDN
答案2
iptables-A
会将规则附加到规则集的末尾。如果该 IP 之前有任何规则以某种方式允许这些连接,则该规则将永远不会被命中,因为 iptable 规则中的处理顺序是从上到下。此外。还可能有像有状态 iptable 规则(例如RELATED,ESTABLISHED
)这样的规则,如果会话是由您的主机发起的,它将允许连接。
检查iptables -L -v -n
并阅读输出。那里有计数器可以判断您的规则是否曾经生效。
-A
另外,您可以将(附加)替换为(插入),将规则附加到 INPUT 链的顶部而不是底部-I
。