我的一个主厨服务器服务器坏了。 我有.pem文件,并且已经设置了一个具有相同IP和主机名的新主厨服务器。
我尝试在/ etc / chef-server下替换相同的.pem文件,但它不起作用。
为了让其他主厨服务器使用来自不同主厨服务器的.pem文件,我是否需要更改任何部分?
答案 0 :(得分:3)
admin.pem
和chef-validator.pem
?
是的,您必须更新这两个客户端。使用admin.pem
访问新的Chef-Server并编辑chef-validator
和admin
个客户端knife client edit admin
,然后在替换行时设置public_key
条目打破\n
)。
答案 1 :(得分:3)
/etc/chef-server/
下的这些关键文件是两个主厨客户以及一位厨师用户的只读私钥文件:
chef-webui.pem
- chef-webui
chef-validator.pem
- chef-validator
admin.pem
- 管理员用户你只需要更新2)和3)因为1)永远不会共享厨师服务器。
除了@StephenKing的第一个答案,我建议使用另一个管理员用户来更新2)和3)因为用管理员用户自己更新管理员的公钥是有风险的(一个错误会导致你失去管理)。所以步骤是:
knife configure -i
,创建另一个管理员用户openssl rsa -in chef-validator.pem -pubout
chef-validator
生成的客户knife client edit chef-validator
生成的公钥替换为
knife user edit admin
为管理员用户重复步骤3)和4),无需担心任何错误,因为您可以随时重做。答案 2 :(得分:1)
我建议只需下载新的厨师服务器密钥并丢弃旧密钥:
ssh myusername@chefserver sudo cat /etc/chef-server/admin.pem > ~/.chef/admin.pem
ssh myusername@chefserver sudo cat /etc/chef-server/chef-validator.pem > ~/.chef/chef-validator.pem
knife configure --server-url https://chefserver \
--user admin \
--key ~/.chef/admin.pem \
--validation-client-name chef-validator \
--validation-key ~/.chef/chef-validator.pem
将密钥放入“/ etc / chef-server”目录将无法正常工作。和你一样,我也发现无法将现有私钥上传到新的厨师服务器。
如果您查看与密钥维护相关的各种API:
您会注意到他们都返回了私钥。当想要创建或重新生成用户时,这会镜像UI中的行为。显示私钥时会显示一个警告,厨师不会保存它。
因此,Chef生成密钥对并返回并丢弃私有部分。