我正在尝试使用Chef创建新用户并在用户尚不存在时使用户密码过期.
我已经设法通过使用bash脚本并在代理服务器上执行它来实现它,但我想要一种更清洁的方式.
当前的Bash脚本:
http://i.gyazo.com/fdd49630f58f9b0e0acdc324143e3481.png
想要在食谱中使用:
inituser do
username => "username"
password => "password"
group => "group":
end
Run Code Online (Sandbox Code Playgroud)
使用上面的代码创建一个新用户(如果它尚不存在)并使其密码到期.
谢谢!
更新:对不起我糟糕的沟通,但我想要做的是拥有自己的自定义资源,将"解析"用户名,密码和组到我上面的预先写好的bash资源.
小智 7
您只需使用用户资源即可创建新用户.
user "newuser" do
supports :manage_home => true
home "/home/newuser"
shell "/bin/bash"
password "$1$JJsvHslV$szsCjVEroftprNn4JHtDi."
not_if "getent passwd newuser"
end
Run Code Online (Sandbox Code Playgroud)
请注意,密码是密码阴影哈希,可以按如下方式生成:
openssl passwd -1 "theplaintextpassword"
有关更多信息:http://docs.opscode.com/resource_user.html