【问题标题】:Is it possible to make iptables on RHEL idempotent with Chef?是否可以使用 Chef 在 RHEL 上使 iptables 具有幂等性?
【发布时间】:2016-05-28 02:28:12
【问题描述】:

我想对我的系统的 iptables 强制执行策略,以便如果有人手动更改 iptables,那么 Chef 会在下次运行时将其恢复到正确的状态。这只是一个梦吗?一本名为“防火墙”的社区食谱说,如果其他人添加了防火墙规则,它将无法处理通知。

编辑:为了让事情更清楚:我在问如何在 Chef/Ruby 中编写一个幂等资源,这对于 iptables 来说是幂等的。

【问题讨论】:

  • 另外,如果只使用标准的 iptables 工具来存储和恢复配置呢? iptables-saveiptables-restore 是你的朋友。
  • @MarcusMüller 这直接涉及编程工具,正如问题所述,它是关于使 iptables 与 Chef 幂等。如果你不知道 Chef 是什么,它是一个使用 Ruby 的配置管理工具。
  • @MarcusMüller 我添加了说明。我特别问如何编写一个幂等的 Chef 资源/Ruby code_block。我编辑了原始帖子以进行澄清。您的第二条评论的问题是,这样做需要使用 Chef 的执行资源,根据定义,该资源是非幂等的,并在此处的文档中说明:docs.chef.io/resource_execute.html
  • 谢谢!是的,这很有意义;收回我对此的投票。
  • 为了使其真正具有幂等性,您必须为 iptables 的输出编写一个解析器。根据我的经验,这会很快变得混乱。重置整个规则集并重新应用会更容易,但这样做会导致流量激增:(.

标签: linux configuration centos chef-infra rhel


【解决方案1】:

是的,这是可能的,但我不知道有任何以这种方式工作的食谱,因此您必须编写它。查看 Facebook 关于 Chef 中托管对象与托管集合的一些文章,您可能希望为此使用集合模式。

通常不会这样做,因为通过禁用端口 22 很容易意外地“破坏”机器,因此请确保为此设置一些特殊情况,或者设置辅助访问机制,如 ILO 等。

【讨论】:

    猜你喜欢
    • 2015-06-05
    • 2011-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多