AI创新网络AI INNOVATION NETWORK
LEARN / PRACTICE

firewalld 排查:确认区域和监听,再按需放行服务

官方资料已核对 · 核验日期 2026-10-21

firewalld 当前官方命令文档核对;未修改本站或其他服务器防火墙

本轮按官方资料重新整理,保留原地址和原始发布日期。文内步骤未在本站生产服务器执行,使用前请确认你自己的版本、权限和恢复方式。

先确认服务是否真的在监听

ss -lnt
firewall-cmd --state
firewall-cmd --get-active-zones

命令可能需要维护权限,或系统没有使用 firewalld。监听在 127.0.0.1 的服务不会因为打开防火墙就自动变为公网服务;云安全组、反向代理与服务访问控制也可能单独影响连接。旧文所指 CentOS Linux 7 已结束生命周期,应安排迁移。

读取实际区域的规则

下面仅假定已从上一步确认目标网卡或来源属于 public 区域。不是 public 时使用实际区域;不要照抄默认值。

firewall-cmd --zone=public --list-all
firewall-cmd --zone=public --query-service=https
firewall-cmd --permanent --zone=public --query-service=https

只为目标业务增加规则

确认服务应当公开、端口和访问范围正确,并保留控制台或备用管理连接后,才由维护方变更规则。对于已确认的标准 HTTPS 服务,可以先添加限时运行规则:

firewall-cmd --zone=public --add-service=https --timeout=600

规则在运行时生效并按超时撤销。验证外部连接及原有管理连接;若确需长期保留,再单独写入永久配置,不用重载整套规则来完成这一步:

firewall-cmd --permanent --zone=public --add-service=https

撤回前先看原状态

只有确认本次新增加的规则原来不存在时,才使用同一区域的 remove-service 撤回相应运行或永久规则。不要移除已有规则,也不要删除不属于这次变更的端口。涉及来源限制或自定义端口,按该业务单独设计规则。

不要把所有保护一起关闭

防火墙与 SELinux 是不同层面的机制。本文不再提供全局关闭二者作为通用排障的方法;如果日志指向 SELinux,需要按具体拒绝记录处理。旧文中混入的 Hadoop、格式化和 SSH 配置片段已移除。

来源与延伸阅读

更新记录

2026-10-21:移除停用防火墙、SELinux 和无关 Hadoop/格式化步骤;补充区域、限时规则和撤回范围。

继续探索

同一方向的资料与实践。

查看全部 →