首页/系统/信创系统运维速查/firewalld 区域管理与接口绑定
安全加固65 条

firewalld 区域管理与接口绑定

区域决定接口默认接受哪些流量:接口绑定到哪个 zone,该接口就套用该 zone 的规则;调整默认区域与接口归属是初始化加固的常见动作。

信创系统运维速查系统更新于 2026-10-13

区域决定默认策略

firewalld 把规则组织成区域:每个区域有一套默认行为与规则集,接口或来源地址被归入某个区域后,就套用该区域的策略。public 默认只放行 ssh 等少量服务,internal、trusted 则信任程度更高。多网卡服务器按用途分区域绑定——对外的收紧、内网的放宽——比在一个区域里堆大量来源限制更清晰,也更不容易漏配。

基本信息

默认区域firewall-cmd --get-default-zone、--set-default-zone=
接口绑定--add-interface、--change-interface、--zone=<zone> --add-interface=
查看绑定--get-zone-of-interface=ens33、--list-all-zones
典型区域public 对外、internal 内网、trusted 完全信任、drop 丢弃
持久化操作加 --permanent 后 firewall-cmd --reload
权限要求root 或 sudo

典型使用场景

  • 多网卡服务器按业务面划分区域,管理网与业务网策略分离
  • 新系统初始化时把默认区域从默认值调整为符合基线的区域
  • 排查某张网卡为什么被放行了某些端口,先确认它归属哪个区域
  • 临时把接口切到受限区域做安全演练
  • 批量交付时统一各机器的区域绑定关系

区域操作

区域操作
firewall-cmd --get-default-zone                        # 看默认区域
firewall-cmd --set-default-zone=public                 # 设为永久生效
firewall-cmd --get-zone-of-interface=ens33             # 查某接口当前归属(操作前先记录)
firewall-cmd --zone=internal --add-interface=ens192    # 运行时绑定
firewall-cmd --zone=internal --change-interface=ens192 --permanent   # 永久变更归属
firewall-cmd --zone=internal --list-all                # 核对该区域接口、服务与端口
firewall-cmd --reload                                  # 让永久配置生效

多网卡典型布局

多网卡典型布局
# 对外网卡放 public,只放行业务端口
firewall-cmd --zone=public --add-interface=ens160 --permanent
firewall-cmd --zone=public --add-service=https --permanent
# 管理网卡放 internal,按来源允许管理流量
firewall-cmd --zone=internal --add-interface=ens192 --permanent
firewall-cmd --zone=internal --add-service=ssh --permanent
firewall-cmd --zone=internal --add-source=10.10.0.0/24 --permanent   # 也可按来源归区
firewall-cmd --reload
firewall-cmd --list-all-zones | head -40               # 逐区域核对配置结果

区域属性读法

字段含义判读要点
interfaces归属该区域的接口为空说明该区域当前没有生效接口
sources归属该区域的来源地址按来源归区适合单网卡多网段场景
services已放行服务名服务名对应 /usr/lib/firewalld/services 定义
ports已放行端口与 services 有重叠时注意重复放行
target该区域的默认动作default 拒绝入站未匹配流量,ACCEPT/DROP 语义不同
masquerade是否开启地址伪装出网 NAT 场景需要,内网互联不需要
多网卡服务器建议按用途分区域绑定:对外网卡用 public 收紧,内网互信网卡用 internal 或 trusted,规则边界比在单一区域里堆来源限制更清晰。
change-interface 会把接口从原区域移出:执行前先用 --get-zone-of-interface 记录现状,远程操作时避免把管理面接口切到拒绝入站的区域。

易错点

  • 直接改默认区域而没核对接口清单,未显式绑定的接口全部套用新区域,管理通道可能被一并收紧
  • 用 change-interface 把管理网卡切到受限区域,远程会话丢失且无法及时恢复
  • 只做运行时绑定不加 --permanent,重启后绑定关系丢失,规则看起来『自己变了』
  • 按来源归区与按接口归区混用却不记录,同一网段流量命中的区域与预期不符,排查耗时
  • 区域里同时按服务和端口放行同一业务,规则重复且后续清理时容易漏掉一处

数据来源与参考

  • firewalld 官方手册(zone 概念)
  • man 5 firewalld.zone
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌