创建用户时如何让木偶只设置密码?

Bel*_*dez 9 linux user-management puppet

我希望 Puppet 不管理密码(即在更改时重置密码),而是在 Puppet 创建用户时设置初始密码。

我正在考虑对设置密码notifyExec资源执行 a 操作,但是当 Puppet 管理的任何属性被修改(例如,组成员身份、主目录等)时,就会触发此操作。我不要那个。

有任何想法吗?

fre*_*eit 9

Puppet 本身不支持“在用户创建时设置密码,否则不支持”。

一种选择是设置外部身份验证源,例如 LDAP。

另一个是你notifyExec想法,但让这个想法Exec更聪明一点。

exec {
  "/usr/sbin/usermod -p '${password}' ${user}":
    onlyif => "/bin/egrep -q '^${user}:[*!]' /etc/shadow",
    require => User[$user];
}
Run Code Online (Sandbox Code Playgroud)

我没有测试过,但是通过检查Exec资源中是否没有设置密码,你应该得到你想要的结果。我认为这样设置,notify/refreshonly东西不是必需的,但可能不会受到伤害。