Linux 怎么使用 firewall-cmd 导出和导入防火墙配置

冰川箭仙

冰川箭仙

2026-08-05

196人浏览

原创

firewall-cmd 无原生导出导入命令,需通过备份/还原 /etc/firewalld/ 下的 xml 配置文件实现;导出即复制 zones、services 等子目录,导入需停止服务、替换配置、修复权限并重载。

linux 怎么使用 firewall-cmd 导出和导入防火墙配置

firewall-cmd 本身不提供直接的“导出/导入”命令,它没有像 iptables-save / iptables-restore 那样的原生导出导入机制。但你可以通过操作 firewalld 的配置文件来实现等效效果——本质是备份和还原 /etc/firewalld/ 下的 XML 配置。


firewall-cmd 配置怎么“导出”

导出 = 备份当前所有永久生效的规则配置文件:

  • firewalld 的永久规则全部保存在 /etc/firewalld/ 目录下
  • 关键子目录包括:
    • /etc/firewalld/zones/:每个 zone(如 public.xml)对应一个规则集
    • /etc/firewalld/services/:自定义服务定义(如 myapp.xml
    • /etc/firewalld/icmptypes//etc/firewalld/ipsets/ 等(按需)

推荐导出方式(手动备份):

# 创建备份目录
sudo mkdir -p /backup/firewalld-$(date +%Y%m%d)

# 复制全部永久配置(含 zones、services 等)
sudo cp -r /etc/firewalld/* /backup/firewalld-$(date +%Y%m%d)/

# 压缩归档(可选)
sudo tar -czf /backup/firewalld-$(date +%Y%m%d).tar.gz -C /backup firewalld-$(date +%Y%m%d)

⚠️ 注意:

  • firewall-cmd --list-all --permanent 只显示当前默认 zone 的规则,不能反映所有 zone 或自定义 service
  • 运行时(非永久)规则不会被保存,导出前请先确保已用 --permanent 添加并执行 --reload

firewall-cmd 配置怎么“导入”

导入 = 将备份的 XML 文件复制回 /etc/firewalld/ 并重载:

宝塔Linux面板11.8.1
宝塔Linux面板11.8.1

宝塔Linux面板11.8.1为官网当前正式版,新增AI建站能力并经过宝塔网站工程师深度调教,开放自定义AI功能API,同时对WAF进行界面重构和深度优化,提升拦截能力与运维效率。

下载

标准导入步骤:

# 1. 停止 firewalld(避免文件被锁或冲突)
sudo systemctl stop firewalld

# 2. 替换配置目录(谨慎!建议先备份原配置)
sudo mv /etc/firewalld /etc/firewalld.bak
sudo cp -r /backup/firewalld-20260729 /etc/firewalld

# 3. 恢复文件权限(重要!否则 firewalld 启动失败)
sudo chown -R root:root /etc/firewalld
sudo chmod -R 644 /etc/firewalld/*.xml
sudo chmod 755 /etc/firewalld/

# 4. 启动并重载
sudo systemctl start firewalld
sudo firewall-cmd --reload

✅ 补充说明:

  • 如果只导入某个 zone(如 public.xml),可单独覆盖 /etc/firewalld/zones/public.xml,再执行 firewall-cmd --reload
  • 导入后建议验证:firewall-cmd --list-allfirewall-cmd --list-servicesfirewall-cmd --list-ports
  • 不要直接编辑 XML 文件(除非熟悉 schema),优先用 firewall-cmd --permanent 命令修改,再备份。

替代方案:用 firewall-offline-cmd(离线场景)

如果你在系统未启动或 firewalld 不运行时需预置规则,可用:

# 查看当前永久配置结构(不依赖服务运行)
firewall-offline-cmd --list-all

# 生成 zone 配置(示例)
firewall-offline-cmd --zone=public --add-port=8080/tcp --permanent
firewall-offline-cmd --set-default-zone=public

但它仍不生成可移植的“导出包”,只是离线写入 XML —— 所以核心仍是管理 /etc/firewalld/ 文件。


不复杂但容易忽略:导出导入成败关键在 XML 文件完整性 + 权限正确 + reload 触发。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

355

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

617

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

1216

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

428

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

324

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

190

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

1031

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

1847

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

322

5

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习

Apifox下载与安装手册
Apifox下载与安装手册

共0课时 | 0人学习

安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 128人学习