7.2. 防火墙区
您可以使用 firewalld
实用程序根据您在该网络中的接口和流量具有的信任级别将网络划分为不同的区。连接只能是一个区的一部分,但您可以对许多网络连接使用这个区域。
firewalld
遵循与区相关的严格的原则:
- 流量入口只有一个区。
- 流量只出站一个区。
- 区域定义了信任级别。
- 默认情况下,允许区域流量(在同一区中使用)。
- 默认情况下,Interzone 流量(从区域到区)被拒绝。
原则 4 和 5 是原则 3 的后果。
原则 4 可以通过区选项 --remove-forward
进行配置。原则 5 可以通过添加新策略来进行配置。
NetworkManager
通知接口区的 firewalld
。您可以使用以下工具为接口分配区:
-
NetworkManager
-
firewall-config
工具 -
firewall-cmd
工具 - RHEL web 控制台
RHEL web 控制台、firewall-config
和 firewall-cmd
只能编辑适当的 NetworkManager
配置文件。如果您使用 web 控制台、firewall-cmd
或 firewall-config
更改接口区,则请求将转发到 NetworkManager
,且不会由firewalld
处理。
/usr/lib/firewalld/zones/
目录存储预定义的区域,您可以立即将它们应用到任何可用的网络接口。只有在修改后,这些文件才会被拷贝到 /etc/firewalld/zones/
目录中。预定义区的默认设置如下:
block
-
适合:任何传入的网络连接都会被拒绝,并带有
IPv4
的 icmp-host-prohibited 消息,对于IPv6
的 icmp6-adm-prohibited 消息。 - 接受:只有从系统中启动的网络连接。
-
适合:任何传入的网络连接都会被拒绝,并带有
dmz
- 适用于:您的 DMZ 中的计算机可通过有限访问您的内部网络。
- accept: 只有所选传入的连接。
drop
适合:任何传入的网络数据包都会丢失,没有任何通知。
- 接受:只有传出的网络连接。
external
- 适用于:启用伪装的外部网络,特别是路由器。不信任网络中的其他计算机的情况。
- accept: 只有所选传入的连接。
home
- 适用于:您主要信任网络中其他计算机的主页环境。
- accept: 只有所选传入的连接。
internal
- 适用于:您主要信任网络中其他计算机的内部网络。
- accept: 只有所选传入的连接。
public
- 适用于:您不信任网络上其他计算机的公共区域。
- accept: 只有所选传入的连接。
trusted
- 接受:所有网络连接。
work
适用于:您主要信任网络上其他计算机的运行环境。
- accept: 只有所选传入的连接。
这些区中的一个被设置为 default 区。当接口连接被添加到 NetworkManager
中时,它们会被分配到默认区。安装时,firewalld
中的默认区是 public
区。您可以更改默认区。
使网络区域名称自我解释,以帮助用户快速了解它们。
要避免安全问题,请查看默认区配置并根据您的需要和风险禁用任何不必要的服务。
其他资源
-
您系统上的
firewalld.zone (5)
手册页