Chef infra 如何编写厨师菜谱以自动在节点中创建新用户和密码?

Chef infra 如何编写厨师菜谱以自动在节点中创建新用户和密码?,chef-infra,chef-recipe,Chef Infra,Chef Recipe,我是厨师新手。请帮忙!我试过这个 user "newuser" do password: xyz end 及 的正确格式如下所示: user“newuser”do 密码密码密码 结束 请记住,密码必须采用阴影格式: 密码阴影散列。此属性要求安装ruby shadow。这是Debian包的一部分:libshadow-ruby1.8 请参阅以了解如何生成影子密码: $ openssl passwd -1 "theplaintextpassword" 要从cookbook生成影子密码,可以使

我是厨师新手。请帮忙!我试过这个

user "newuser" do
  password: xyz
end


的正确格式如下所示:

user“newuser”do
密码密码密码
结束
请记住,密码必须采用阴影格式:

密码阴影散列。此属性要求安装ruby shadow。这是Debian包的一部分:libshadow-ruby1.8

请参阅以了解如何生成影子密码:

$ openssl passwd -1 "theplaintextpassword"
要从cookbook生成影子密码,可以使用cookbook helpers生成密码:

Chef::Recipe.send(:include,OpenSSLCookbook::RandomPassword)
密码='xyz'
salt=随机密码(长度:10)
crypt_password=password.crypt($6$#{salt})
用户“newuser”do
密码密码密码
结束
不要忘记在跑步列表中包含
openssl
cookbook

无论如何,请记住,这将产生不同的盐在每个厨师运行,所以也许这不是最好的方法使用


我还鼓励您阅读以了解如何与Chef一起管理密码。

user'newuser'do comment'A random user'uid'1234567'gid'1234567'home'/home/saxuser'shell'/bin/bash'password'newpassword'end~也尝试过这个。。。而且它不起作用。我哪里出错了?欢迎来到stackoverflow。我已经更新了你的问题。还请包括您遇到的错误。“不工作”不是一个很好的错误描述。这就是我所做的…:(没有肯定的结果。我得到“身份验证失败”在节点中!我认为您的问题是密码必须是阴影格式。谢谢您的回答。是否可以给出一个通用示例。好的。我添加了一个示例,以从配方生成阴影密码。设置随机密码似乎是一件奇怪的事。只需不设置密码,用户将在没有密码的情况下创建。
$ openssl passwd -1 "theplaintextpassword"