2.7. 例如:使用 nftables 脚本保护 LAN 和 DMZ
使用 RHEL 路由器上的 nftables
框架编写并安装防火墙脚本,该脚本可保护内部 LAN 中的网络客户端以及 DMZ 中的 Web 服务器不受互联网和其他网络的未授权访问的影响。
重要
这个示例仅用于演示目的,并描述了具有特定要求的场景。
防火墙脚本高度依赖于网络基础架构和安全要求。当您为自己的环境编写脚本时,请使用此示例了解 nftables
防火墙的概念。
2.7.1. 网络状况
本例中的网络具有以下条件:
路由器连接到以下网络:
-
通过接口
enp1s0
的互联网 -
内部 LAN 通过接口
enp7s0
-
DMZ through
enp8s0
-
通过接口
-
路由器的互联网接口同时分配了静态 IPv4 地址(
203.0.113.1
)和 IPv6 地址(2001:db8:a::
1)。 -
内部 LAN 中的客户端仅使用范围
10.0.0.0/24
中的专用 IPv4 地址。因此,从 LAN 到互联网的流量需要源网络地址转换(SNAT)。 -
内部 LAN 中的管理员 PC 使用 IP 地址
10.0.0.100
和10.0.0.200
。 -
DMZ 使用范围
198.51.100.0/24
和2001:db8:b::/56
的公共 IP 地址。 -
DMZ 中的 Web 服务器使用 IP 地址
198.51.100.5
和2001:db8:b::5
。 - 路由器充当 LAN 和 DMZ 中的主机的缓存 DNS 服务器。