ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OPNsense防火墙规则设置示例

2021-06-07 15:04:51  阅读:1545  来源: 互联网

标签:示例 VLAN 端口 防火墙 接口 目标 OPNsense 规则 any


为便于使用者理解并使用防火墙规则,我将各种常用规则编辑成示例。这些示例中使用的任意IP地址可以替换为别名,以方便对不同的网络和设备进行管理。

下面分LAN和WAN两个接口来介绍不同的防火墙规则。

LAN规则

默认情况下,OPNsense 中的 LAN 网络有反锁定规则(防止你将自己锁定在 Web 界面之外)和允许访问所有本地和远程网络的“允许任何”规则。当你在另一个物理接口上创建新 VLAN 或网络时,默认情况下会阻止对所有其他网络的访问,因为没有为新网络定义防火墙规则(DHCP 运行所需的隐藏自动生成规则除外)。下面的示例假设你有多个本地网络,并且你希望允许不同网络中的设备之间进行通信。下面是一些示例:

允许 VLAN 10 上的单个设备访问 VLAN 20 上单个设备的任意端口

该规则允许 VLAN 10 上 IP 地址为 192.168.10.10 的设备访问VLAN 20上 IP 地址为 192.168.20.10 设备上运行的任何对外服务:

选项
动作pass
接口VLAN10
协议any
192.168.10.10
源端口any
目标192.168.20.10
目标端口any
描述允许设备到设备访问

允许 VLAN 10 上的任意设备访问 VLAN 20 上单个设备的任何端口

该规则允许 VLAN 10 上的所有设备访问VLAN20上地址为 192.168.20.10 的设备上运行的任何对外服务:

选项
动作pass
接口VLAN10
协议any
VLAN10
源端口any
目标192.168.20.10
目标端口any
描述允许 VLAN 10 访问设备

允许任何设备访问任何网络或设备(本地网络和 Internet)

这是安装 OPNsense 时由 OPNsense 在 LAN 接口上创建的默认“全部允许”规则。

选项
动作pass
接口LAN NET
协议any
any
源端口any
目标any
目标端口any
描述允许访问任何网络/设备

 

阻止 VLAN 10 上的单个设备访问 Internet

该示例阻止 VLAN 10 上 IP 地址为 192.168.10.10 的特定设备访问 Internet 和其他本地网络(例如 VLAN 20):

选项
动作阻止
接口VLAN10
协议any
192.168.10.10
源端口any
目标any
目标端口any
描述阻止访问 Internet

如果你的 VLAN 已经相互隔离,则对其他本地网络的访问已经被阻止,因此此规则实质上是阻止访问 Internet。

注意:此规则不会阻止 VLAN 10 内任意之间的访问,因为从一个设备到同一VLAN内另一设备的任意流量都被视为本地流量,不会通过路由器。

阻止 VLAN 10 上的所有设备访问 Internet

要阻止整个 VLAN 10 网络上的所有设备,不为 VLAN 10 接口添加任何防火墙规则就可以实现。默认情况下,所有出站流量都被阻止,因此该规则是多余的。但是,出于学习目的,以下规则将阻止所有出站流量:

选项
动作阻止
接口VLAN10
协议any
VLAN10 NET
源端口any
目标any
目标端口any
描述阻止访问 Internet

阻止 VLAN 10 上的所有设备访问 Internet 上的单个主机/服务器

该示例阻止 VLAN 10 上的所有设备访问 Internet 上的一个特定 IP 地址(例如 8.8.8.8):

选项
动作阻止
接口VLAN10
协议any
VLAN10 NET
源端口any
目标8.8.8.8
目标端口any
描述阻止访问主机/服务器 8.8.8.8

允许所有内部网络上的 ICMP 消息

一般情况下,管理员都会禁用内部和外部网络上的所有 ICMP 消息,以保证网络安全。但有时为了排除故障需要,可能需要在内部网络上允许 ping 来解决网络上的连接问题。

如果有多个 VLAN,建议创建防火墙规则组或使用浮动规则。对于防火墙规则组或浮动规则,只选择你希望使用 ICMP 的 LAN/VLAN 接口,然后创建下面的规则。下面的示例使用组名 ICMPGroup 作为接口(因为组已经知道应用规则的接口)。如果使用浮动规则,可以选择合适的 LAN/VLAN 接口列表,而不是使用组名称作为接口。这些是最常见和最有用的 ICMP 消息:

选项
动作pass
接口ICMPGroup
协议ICMP
ICMP类型Echo Request
any
目标any
描述允许 ICMP 回显请求消息
选项
动作pass
接口ICMPGroup
协议ICMP
ICMP类型Echo Reply
any
目标any
描述允许 ICMP 回显回复消息
选项
动作pass
接口ICMPGroup
协议ICMP
ICMP类型Destination Unreachable
any
目标any
描述允许 ICMP 目标不可达消息
选项
动作pass
接口ICMPGroup
协议ICMP
ICMP类型超时
any
目标any
描述允许 ICMP 超时消息

如果想使用 ICMP 但阻止将其用于某些网络,例如管理 的VLAN 或其他敏感网络,可以在“允许”规则上方添加“阻止”规则。如下面所示,只需添加以下规则:

选项
动作阻止
接口ICMPGroup
协议ICMP
ICMP类型Echo Request
any
目标MGMT NET
描述阻止到管理 VLAN 的 ICMP 回显请求消息

通过端口转发将 LAN上的DNS请求重定向到Unbound DNS

如果希望将端口53上的所有出站DNS请求重定向到本地的Unbound DNS解析器,可以在LAN 网络上创建一个NAT端口转发规则。

选项
动作pass
接口LAN
协议TCP/UDP
any
源端口any
目标/反转选中
目标LAN net
目标端口53 (DNS)
重定向目标 IP127.0.0.1
重定向目标端口53 (DNS)
描述将外部 DNS 请求重定向到本地 DNS 解析器
过滤规则关联添加关联的过滤规则(或通过)

如果有多个希望重定向DNS请求的本地网络,可以转到“防火墙 > 组”页面并将所有需要的接口添加到组中来创建一个防火墙组。这将允许创建单个规则来重定向整个网络的 DNS请求。

选项
动作pass
接口MyGroup
协议TCP/UDP
any
源端口any
目标/反转选中
目标MyGroup net
目标端口53 (DNS)
重定向目标 IP127.0.0.1
重定向目标端口53 (DNS)
描述将外部 DNS 请求重定向到本地 DNS 解析器
过滤规则关联添加关联的过滤规则(或通过)

通过NAT端口转发将LAN 上的 NTP请求重定向到本地NTP服务

将端口123上的所有出站 NTP(网络时间协议)请求重定向到本地NTP服务器:

选项
动作pass
接口LAN
协议TCP/UDP
any
源端口any
目标/反转已选中
目标lan net
目标端口123 (NTP)
重定向目标 IP127.0.0.1
重定向目标端口123 (NTP)
描述将外部 NTP 请求重定向到本地 NTP 服务
过滤规则关联添加关联的过滤规则(或通过)
WAN规则

允许在WAN上远程访问OPNsense上的***服务器

由于 Open*** 服务托管在 OPNsense 路由器上,可以将以下规则添加到WAN接口。这适用于在路由器上运行的任何服务,因为正常情况下是不需要将任何端口转发到网络内的设备:

选项
动作pass
接口wan
协议UDP
any
源端口any
目标WAN address
目标1194
描述允许远程访问 Open***

使用NAT端口转发远程访问VLAN 10 上的Web服务器

转到“防火墙 > NAT > 端口转发”页面。创建规则的过程与其他 LAN/WAN 规则类似,这里还需要指定网络上内部设备的 IP/别名和端口号。

注意:创建NAT端口转发规则时,页面底部的“过滤规则关联”默认情况下设置为“无”,这意味着无法从网络外部访问内部服务器。如果不使用多WAN 配置,请选择“pass”;如果使用多 WAN 配置或希望在WAN 接口上自动创建相应的 WAN 规则,请选择“添加关联过滤规则”。使用“Pass”选项的好处是WAN 规则不会与 NAT 端口转发规则混淆。如果希望在 WAN 接口上查看规则,则需要选择“添加关联过滤规则”以使规则可见。

选项
动作pass
接口WAN
协议TCP
any
源端口any
目标WAN address
目标端口443 (HTTPS)
重定向目标 IP192.168.10.10
重定向目标端口443 (HTTPS)
描述允许远程访问Web 服务器
过滤规则关联添加关联的过滤规则(或通过)

外部端口和托管服务的内部设备上的端口可以不同。可以为一些服务(例如 SSH)使用不同的外部端口,这可以在一定程度上提升防火墙的安全性。


标签:示例,VLAN,端口,防火墙,接口,目标,OPNsense,规则,any
来源: https://blog.51cto.com/fxn2025/2875893

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有