0

0

Linux防火墙规则不生效_规则加载问题排查

舞夢輝影

舞夢輝影

发布时间:2026-03-16 14:31:45

|

988人浏览过

|

来源于php中文网

原创

firewalld规则未生效主因是未永久保存或未重载、zone不匹配、rich rule语法错误、服务名未定义;须用--permanent加规则并执行--reload,确认活跃zone一致,rich rule严格校验语法,自定义service需放/etc/firewalld/services/并重载。

linux防火墙规则不生效_规则加载问题排查

firewalld 规则添加后看似执行成功,但外部始终连不上,大概率不是服务没起、也不是网络不通,而是规则根本没真正加载进运行时——常见于“只加了临时规则却忘了重载”,或“加到了错误 zone”,又或者“语法有硬伤导致 reload 时被静默跳过”。

确认规则是否已永久保存并重载

firewalld 的规则分“运行时”和“永久配置”两套。只用 firewall-cmd --add-port=8080/tcp 这类命令,规则只存在内存中,firewall-cmd --reload 或重启后立刻消失。

  • 添加规则时必须带上 --permanent 参数,例如:
    firewall-cmd --permanent --add-port=8080/tcp
  • 执行 firewall-cmd --reload 才会把永久配置刷入当前运行环境
  • 验证是否生效:运行 firewall-cmd --list-ports(看端口)或 firewall-cmd --list-all(看完整配置),确认输出里包含你刚加的项

检查活跃 zone 是否与规则所在 zone 一致

firewalld 按 zone 管理规则,默认 zone 是 public,但你的网卡可能绑定在 internal、docker 或 custom zone 上。规则加在 public,而流量走的是 docker zone,自然不生效。

社研通
社研通

文科研究生的学术加速器

下载
  • 查当前活跃 zone:firewall-cmd --get-active-zones
  • 查默认 zone:firewall-cmd --get-default-zone
  • 加规则时显式指定 zone,例如:
    firewall-cmd --permanent --zone=docker --add-port=3306/tcp
  • 确保网卡已正确绑定到目标 zone:firewall-cmd --zone=docker --add-interface=docker0

排查富规则(rich rule)语法错误

富规则对格式极其敏感,漏引号、错顺序、少关键字都会导致 --reload 时解析失败,整条规则被跳过,且无报错提示。

  • 正确写法示例:
    firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="22" protocol="tcp" accept'
  • 常见错误:
    • 把 sourceport 位置颠倒
    • 写成 protocol="tcp" 却漏掉 port 子项
    • 引号不匹配或用了中文引号
    • 忘记写 accept 动作
  • 调试建议:先用 --query-rich-rule=... 检查是否存在;再用 --remove-rich-rule=... 清除后重试

验证服务名是否真实可用

--add-service=http 可以,但 --add-service=myapp 若未提前定义 service 文件,则命令虽返回 success,实际不生效。

  • 列出所有已知服务:firewall-cmd --get-services
  • 查看某服务具体内容:cat /usr/lib/firewalld/services/http.xml
  • 自定义服务需放入 /etc/firewalld/services/ 目录,文件名须为 xxx.xml,且格式合法
  • 添加后必须 firewall-cmd --reload 才能识别新 service

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1950

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2119

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1175

2024.11.28

go中interface用法
go中interface用法

本专题整合了go语言中int相关内容,阅读专题下面的文章了解更多详细内容。

78

2025.09.10

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

237

2023.12.07

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

280

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

517

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

417

2024.04.08

C++多线程并发控制与线程安全设计实践
C++多线程并发控制与线程安全设计实践

本专题围绕 C++ 在高性能系统开发中的并发控制技术展开,系统讲解多线程编程模型与线程安全设计方法。内容包括互斥锁、读写锁、条件变量、原子操作以及线程池实现机制,同时结合实际案例分析并发竞争、死锁避免与性能优化策略。通过实践讲解,帮助开发者掌握构建稳定高效并发系统的关键技术。

4

2026.03.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.7万人学习

Git 教程
Git 教程

共21课时 | 4.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号