Ansible firewalld - 保证最终状态?

Ansible firewalld - 保证最终状态?

安西波防火墙模块非常适合添加规则,但旧规则仍然保留。

如何使用firewalld模块达到有保证的最终状态?

具体来说,我想要一个角色,使每个主机都具有相同的防火墙规则,无论其初始状态如何,并且无需了解所有先前的规则。

我尝试将区域设置为缺席,然后返回当前,但这对于内置区域是不允许的。

答案1

您可以制作一个剧本(不是角色或其他任何东西的一部分),它使用某种逻辑来执行以下步骤:

  1. 关闭并禁用防火墙。

    检查它是否确实被禁用(因为您有可能将自己锁定在主机之外)。

  2. 重置防火墙并清除所有规则。

  3. 应用新规则。

  4. 打开并启用防火墙。

相关内容