防火墙拒绝特定入站流量的目的是什么?

防火墙拒绝特定入站流量的目的是什么?

许多常见的防火墙规则都包含一些阻止特定入站流量的行。以 ipfw 为例:

# Fragments
$cmd 00420 deny all from any to any frag in via $pif

# ACK packets that did not match the dynamic rule table
$cmd 00430 deny tcp from any to any established in via $pif

然而,最后人们通常会阻止任何不符合任何规则的内容:

# Deny any other inbound traffic, with logging
$cmd 00998 deny log all from any to any in via $pif

# Deny any other traffic, with logging
$cmd 00999 deny log all from any to any

如果我们如上所示阻止所有其他流量,那么包含第一组规则会带来什么好处呢?

答案1

我不能说ipfw,但这iptables很有道理,因为首场决定性比赛获胜,并且在顶部的明确拒绝和底部的全面拒绝之间通常存在宽松的规则(除非您正在构建一个非常非常安静的设备!)。

例如,如果你明确想排除所有火星人,你需要有这样的线条

iptables -A INPUT -s 10.0.0.0/8     -j DROP
iptables -A INPUT -s 172.16.0.0/12  -j DROP
iptables -A INPUT -s 192.168.0.0/16 -j DROP

在类似这样的行之前

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP

因为否则,ssh 的 ACCEPT 行将在火星人看到全面的 DENY 之前允许他们这样做。

感谢 Michael Hampton 证实同样的逻辑也适用于ipfw规则集。

相关内容