我的系统用户名为myuser
,但我尝试使用chef-validator.pem
然后blah.pem
文件引导计算机,并收到以下错误消息:
ERROR: Failed to authenticate to https://mychef01 as blah with key
/etc/chef/blah.pem.
Response: Invalid signature for user or client 'blah'
这是否意味着blah.pem
文件无效,或者是否意味着它需要与我的系统用户名匹配(所以,myuser.pem
)?无论哪种方式,根本问题是什么,修复是什么?
答案 0 :(得分:4)
从chef name-validator.pem中的Administration选项卡是从Organization级别生成的,而name.pem是从User级别生成的。您可能尚未生成用户级别的pem。
答案 1 :(得分:2)
这是客户端密钥的问题。我也遇到过这个问题。我为用户重新生成了密钥并添加到{user} .pem文件中,它对我有用。
答案 2 :(得分:0)
我遇到了同样的问题。在我的情况下,我从左侧边栏生成密钥并得到相同的问题。但是,当我单击用户行“Gear”(操作列),然后单击重置键再次下载它(并将其放置在.chef目录中)时,它运行正常。
可能发生的其他事情是你的.pem文件未在knife.rb文件中正确引用
希望有所帮助
答案 3 :(得分:0)
确保将pem文件从Chef Server复制到Workstation计算机,
chef-server-ctl user-create USERNAME FIRSTNAME LASTNAME email-id@domain.com 'password' --filename ~/.chef/user-chef.pem
chef-server-ctl org-create ORG_NAME "orgname" --association_user USERNAME --filename ~/.chef/org-chef.pem
将这些* .pem文件复制到工作站后,在ruby文件config.rb中进行配置
node_name 'node_name'
client_key "user-chef.pem"
node_name的值应为在Chef服务器上创建的USERNAME。
更改client_key下的user-chef.pem以反映用户的.pem文件。
答案 4 :(得分:0)
启动Response: Invalid signature for user or client 'blah'
之后,我遇到了相同的错误kitchen test
,但是有不同的解决方案。
我犯了一个错误,我的Policyfile.rb
包含一个default_source
部分,该部分指向与设置为当前活动的不同的CHEF服务器组织。
default_source :chef_server, 'https://chef.awesome.com/organizations/bacon' do |s|
s.preferred_for 'chef-client', 'cron', 'apt'
end
与包含我喜欢的某些资源来源的组织相比,我当前有效的刀具档案需要一个不同 pem
文件。
答案 5 :(得分:-1)
您需要从左侧边栏中选择 Users (用户)标签,该标签会向您显示您的用户名。
然后,您需要点击右侧部分的Gear图标,然后点击Reset Key
。它将为您生成一个私钥,您需要将该私钥保留在名称为.chef
的{{1}}目录中。同样,请在您的<username>.pem
文件中保留相同的配置。例如
knife.rb
答案 6 :(得分:-2)
进入https://api.chef.io/organizations
管理标签。转到“用户”菜单。生成一个新密钥。然后转到“组织”菜单项并生成新的knie和新密钥验证器。再次运行它。