在提到 of the FreeBSD Handbook部分时,我看到了下面的示例文本:
一种解决方案是让来自本地网络的所有ICMP流量通过,同时阻止来自网络之外的所有探测:
pass inet proto icmp from $localnet to any keep statepass inet proto icmp from any to $ext_if keep state
我将其理解为:“将源自IPv4的$localnet数据包传递到任何主机/端口,并保持状态。将来自任何主机/端口的IPv4 ICMP数据包传递到$ext_if,并保持状态。”
如何停止从网络之外进行探测?我的理解有限,但这让我相信,第二条规则实际上是允许从网络之外进行探测。
是吗,如果不是,我该怎么读这条规则呢?
发布于 2016-12-09 21:16:27
从我所看到的(我绝对是而不是a FreeBSD或PF家伙),您在步骤29.3.3中创建的基本pf.cfg包含block in all。如果我正确理解,这基本上使PF过滤器成为默认拒绝,并且只允许明确允许的通信量(使用pass规则)。因此,pass规则将允许所有出站ICMP数据包(及其答复),允许所有目标IP仅为$ext_if 的入站 ICMP数据包,而所有其他ICMP数据包都将被默认block in all阻塞。
这种特殊的设置在非NAT网关中是最有意义的,因为当NAT生效时,外部节点无论是否启用这些规则都不能对内部节点进行平分。
如果弄错了,请随时纠正我,因为这是可能的。
https://stackoverflow.com/questions/41027646
复制相似问题