我有现有的验证和 webui 私钥,希望在新的 chef-server 部署中使用。我的引导模板的一部分将这些密钥复制到 /etc/chef/。当 chef-solo 运行并启动 chef-server 时,我如何防止它覆盖 /etc/chef/validation.pem 和 /etc/chef/webui.pem。
或者,是否有一个流程可以用我手上的另一对密钥替换 validation.pem 和 webui.pem?我能找到的只是让服务器重新生成它们的说明。
答案1
validation.pem 是 chef 服务器中一个特殊客户端的私钥,名为chef-validator。而webui.pem是chef client webui的私钥。
您可以通过 knife API 或 chef 服务器 Web UI 重新生成任何客户端的私钥/公钥。
我个人不建议“替换”私钥,而是建议重新生成私钥,因为这是敏感数据,最好不要长期使用特殊私钥。出于安全原因,请在一定时间内重新生成私钥。
但是,可以破解/var/opt/chef-server/bookshelf/data
chef 11 服务器主机下的 bookshelf 数据存储,以更改存储在对象文件中的公钥。例如,您可以在执行命令时提取对象 URL knife client show chef-validator -VV
。我强烈不推荐这种方式,因为它是黑客行为。