Centos 7 防火墙命令设置不持久

Centos 7 防火墙命令设置不持久

我决定进行一些春季大扫除,并刷新一些底层基础设施。

我正在大修的一个关键组件是网络网关服务器。我更新了测试环境(与生产环境完全相同,但功耗更低),一切运行良好,但当我将其应用到生产系统时,防火墙命令规则在重新启动后不会保留。

我必须在启动时运行以下命令:

# firewall-cmd --remove-interface=eth0 --zone=public
# firewall-cmd --remove-interface=eth1 --zone=public
# firewall-cmd --remove-interface=eth0 --zone=public --permanent
# firewall-cmd --remove-interface=eth1 --zone=public --permanent
# firewall-cmd --add-interface=eth0 --zone=external
# firewall-cmd --add-interface=eth1 --zone=internal
# firewall-cmd --add-interface=eth0 --zone=external --permanent
# firewall-cmd --add-interface=eth1 --zone=internal --permanent
# firewall-cmd --complete-reload

此时恢复正常服务。当我# firewall-cmd --list-all-zones重启后运行时,两个接口都已离开internalexternal区域,并已返回到public区域。

有人可以解释一下为什么这些设置没有持久吗?

答案1

仅当您(也)使用 ...将所做的更改持久化时,所做的更改firewall-cmd才会持久化--permanent

man firewall-cmd

- 永恒的
永久选项--permanent可用于永久设置选项。这些更改不会立即生效,只有在服务重启/重新加载或系统重启后才会生效。如果没有该 --permanent选项,则更改仅是运行时配置的一部分... 如果您想更改运行时和永久配置,请
使用
有和没有相同的调用选项--permanent

相关内容