IP 表 - 阻止传入流量

IP 表 - 阻止传入流量

这个问题在某种程度上相关

我的问题是关于使用 iptables 阻止传入连接。我在 unix.stackexchange.com 上阅读了不同的帖子,并对 iptables 有了基本的了解。但我不明白一些具体的点。任何帮助表示赞赏。

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT                              
iptables -P INPUT DROP

我想用这个代码。它必须阻止所有传入连接(所有端口都将对外部人员关闭),除了我发送的请求的响应。我想这很简单。

  1. 传入的 ICMP ping 请求会被上面显示的代码阻止吗?如果没有,为什么?

  2. 如果上面显示的代码没有阻止 ICMP ping 请求,添加iptables -I INPUT -j DROP -p icmp --icmp-type echo-request会阻止它吗?

  3. 从被阻止的 IP 进行端口扫描可以获取有关我的计算机的信息吗?

  4. 我应该添加特定规则(例如-p tcp --tcp-flags FIN,SYN FIN,SYN -j DROP阻止特定洪水攻击)还是我的第一个代码可以处理它?

答案1

  1. 是的。所有非现有会话的入站流量都将被阻止
  2. 仅当(a)您已连接到该恶意主机,或者(b)它知道您应该在那里,并且根据您的缺乏响应,它可以推断您有防火墙
  3. 你已经被 #1 覆盖了

答案2

@roaima 的答案很好,但前提是你不开始允许某些事情。

我会推荐:

  1. 我会放入一个明确的 DROP 规则。它应该放在最后。
    iptables -A INPUT -j DROP
    
    请注意,也制定政策。
  2. 如果您打算允许某些输入(例如 SSH 或 Web 服务器),请将 #4 放在任何“允许”之前。还可以阻止其他不好的东西,例如碎片。
  3. 你的第2点是正确的,但仅适用于IPv4。 IPv6 有不同的 ping。以及(经典的)一组不同的过滤器。
  4. 不要忘记也过滤 IPv6。

相关内容