OPNSense 防火墙计划规则不起作用

OPNSense 防火墙计划规则不起作用

我为虚拟机 (10.0.64.43/27) 创建了互联网访问时间表,该规则在 WAN 接口上实施,但似乎不起作用。互联网访问应在每周一、周四和周日的 21:30 - 21:45 之间允许,但虚拟机始终可以访问互联网。

日程 -https://i.ibb.co/qm5FCMF/Schedules.png

WAN 规则 -https://i.ibb.co/TgxLTY7/WAN-Rules.png

规则无效 -https://i.ibb.co/QcBzVpD/Schedule-Failure.png

是否可能是在数据包到达 WAN 之前已将 NAT 应用于 10.0.64.0/27 网络,因此该规则无效。

您认为该案例中可能存在什么问题?

更新

我很难理解防火墙的内部和外部与源和目标之间的关系。

无论我理解什么,我都实施了,但只有部分预定规则有效,网络 192.168.28.0 具有预定的互联网访问并且运行良好。网络 10.0.64.0 似乎无效

整个网络为客户端虚拟机提供互联网路由 -https://i.ibb.co/9gHG3y3/Dell-Network.png

从客户端进行 Tracert (192.168.1.21 是 1_dell 接口192.168.47.2 是 VMware Workstation 中的 NAT 网络) -https://i.ibb.co/PG8YKs5/W10-Tracert-Internet.png

日程 -https://i.ibb.co/JFqL03v/Schedule.png

按计划没有互联网的服务器 -https://i.ibb.co/HVbMPcv/Server-No-Internet.png

RFC1918 网络的别名 -https://i.ibb.co/9HXZ7t0/RFC1918.png

10.0.64.32 /27 的互联网规则 -https://i.ibb.co/9Wn5RQv/firewallwm-RFC1918.png

互联网仍可访问 -https://i.ibb.co/TB7jRhd/W10-Internet.png

WAN 规则 -https://i.ibb.co/YN28rzs/firewallwm-WAN-Rule.png

不确定我的规则是否不正确或者它是一个我无法理解如何实现的故障。

答案1

有一个默认规则“从防火墙主机本身释放任何东西”您可以查看漂浮的防火墙规则。

您的规则只是告诉允许特定时间间隔的流量。此外,您已将其配置为“第一个匹配”。防火墙按照您的规则工作如下:

  1. 检查您的条件以应用规则(在您的情况下为时间表、来源、目的地和网关)
  2. 如果满足条件,则允许流量并停止处理规则
  3. 如果条件不满足,则继续处理规则
  4. 最终它将处理“从防火墙主机本身放出任何东西”,允许流量

因此,您的防火墙永远不会阻止流量,而只会允许“再次”。

为了解决这个问题,请将计划更改为有 2 个间隔: 00:00 to 21:2921:46 to 23:59。同时将防火墙规则操作更改为blockreject

这样就会有一条规则来阻止交通。

答案2

因此,我添加一个答案并不是为了与很好地回答了这个问题的 Eduardo 竞争,而是为了用适当的格式解释选项。

正如我们所讨论的,带有时间表的规则只有在当前时间处于时间表定义的时间范围内时才会生效。时间表不关心阻止或允许。

另请注意,您有一个默认允许规则,允许所有流量(ALLOW From Any To Any on Any Port using Any Protocol at Any Time)。如果您想更改流量处理方式,只能使用阻止规则,并且必须将其列在默认规则之前。任何允许规则都无法更改处理方式,因为所有内容都是允许的。无论哪条规则处理流量,最终结果都是相同的。

有两种方法可以做你想做的事。

这是 Eduardo 的建议。如果你能把两个时间跨度放在一个时间表里,那将是一个很棒的方法。简洁又漂亮。

Block From <VMSubnet> To Any on Any Port using Any Protocol at 00:00:00 - 21:29:59 or 21:45:00 - 23:59:59
ALLOW From Any To Any on Any Port using Any Protocol at Any Time
  • 如果流量来自非虚拟机 IP,则允许(默认规则)
  • 如果流量在 22:50 来自 VM IP,则将被阻止(计划规则)
  • 如果流量在 21:35 来自虚拟机 IP,则允许(默认规则)

另一种方法是添加一条阻止规则,该规则始终阻止来自虚拟机的所有流量,并添加一条允许规则,该规则在计划的时间段内允许流量。在这种情况下,您的计划时间将是 21:30-21:45。

Allow From <VMSubnet> To Any on Any Port using Any Protocol at 21:30:00 - 21:45:00    
Block From <VMSubnet> To Any on Any Port using Any Protocol at Any Time
ALLOW From Any To Any on Any Port using Any Protocol at Any Time
  • 如果流量来自非虚拟机 IP,则允许(默认规则)
  • 如果流量在 21:31 来自 VM IP,则允许(预定规则)
  • 如果流量在 22:15 来自 VM IP,则将被阻止(阻止规则)

希望这有助于澄清这一点。

相关内容