Hen*_*gel 5

  • systemctl restart firewalld将终止该进程并启动一个新进程。

  • firewall-cmd --reload将要

reload 命令会删除所有运行时配置并应用永久配置。来源

每个没有该--permanent标志的配置都是运行时配置

重新引导或重新启动 FirewallD 时不会保留运行时配置更改,而永久更改不会应用于正在运行的系统。

正如 @mircea-vutcovici 所指出的,如果自上次守护程序重新启动以来已更新,则使用firewall-cmd重新加载防火墙规则不会导致系统使用潜在的新的firewalld可执行文件。但是,根据您的发行版,包更新时包管理器可能已完成此操作。文档指出

要重新加载,您可以使用命令firewalld行工具firewall-cmd --reload,也可以使用.SIGHUPfirewalldkillall -HUP firewalld

killall -HUP firewalld运行时执行该步骤systemctl reload firewalld。看看firewalld的基本设计,它本质上是一个前端iptables或类似的后端。因此杀死firewalld进程不应该影响实际的防火墙规则。因此,两种重新加载firewalld规则的方法具有相同的效果。我个人更喜欢 systemd 方式,以确保使用最新的 firewalld 可执行文件。