如何使用Puppet强制实施本地组成员身份?

前端之家收集整理的这篇文章主要介绍了如何使用Puppet强制实施本地组成员身份?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
从Ask @ PuppetLabs交叉发布此信息. (那里交通不足.)

我已经看到了一些使用Augeas将用户添加到%wheel的示例.这些都是同一件事的变种;在最后插入用户节点.

> Quick Tip: Add users to a group with augeas
> How to manage configurations in Linux with Puppet and Augeas
> Puppet Group Management Module

我需要做的是删除在配置管理之外添加用户.对于Puppet来管理组,只有我的Puppet类中定义的用户应该存在并且其他任何用户都被删除.

看起来像执行一个简单的Sed命令会容易得多,但是很多人都说试图远离执行官.在这种情况下,这是一个糟糕的解决方案吗?

解决方法

以这种方式定义轮子用户会导致它们被添加,但如果你从类中删除jane,她将不会在下一个Puppet运行时从轮组中删除.
class wheel {
  augeas { "wheelgroup":
    context => "/files/etc/group/wheel",changes => [
      'set user[1] bob','set user[2] jane',]
  }
}

我找到的唯一方法是清除轮组并每次重新添加它们.

class wheel {
  augeas { "wheelgroup":
    context => "/files/etc/group/wheel",changes => [
      'rm user','set user[1] bob',]
  }
}

我认为只有匹配我定义的用户才能阻止它在每个Puppet运行时运行.但是,这也是删除Puppet外部添加用户的唯一方法,以确保%wheel仅由Puppet管理.

解决方案也不适合于重用参数化.

猜你在找的Linux相关文章