伪装代理证书validation失败

我设置了一个木偶大师/代理,并已成功为主代理签署了代理证书。 然而,当我运行puppet agent --test我得到一个失败,看起来像这样:

 Warning: Unable to fetch my node definition, but the agent run will continue: Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Info: Retrieving plugin Error: /File[/var/lib/puppet/lib]: Failed to generate additional resources using 'eval_generate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Error: /File[/var/lib/puppet/lib]: Could not evaluate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Could not retrieve file metadata for puppet://hostname.domain.com/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Error: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run Error: Could not send report: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] 

hostname.domain.com是主

我该如何解决? 我已经确定两个时钟都在同一时区的正确时间,我删除了代理/var/lib/puppet/ssl目录中的所有内容,并且辞职,我不知道该怎么办。

重新创build整个客户端证书设置。 这总是解决了我们以前遇到的任何证书问题。 以下指令假设您的代理主机名为agenthost.hostname.com

在客户端上,删除所有存储的证书,包括CA:

 find /var/lib/puppet/ssl -name '*.pem' -delete 

在主服务器上,删除此客户端的任何挂起的CSR或旧客户端证书:

 find /var/lib/puppet/ssl -name agenthost.domain.com.pem -delete 

然后,在客户端上,重新连接到主服务器并发送一个CSR:

 puppet agent -t --waitforcert=60 

并且当它在等待时(如果你还没有设置autosigning),那么在主站上批准CSR,以便发回一个新的客户证书:

 puppet cert sign agenthost.domain.com 

这应该使代理人重新下载傀儡CA证书,并重新申请自己的证书。

过去当我们改变puppet服务器和CA证书改变时,或者当我们用相同的主机名重build一个主机时,我们不得不使用这个过程。

确保你的代理知道它的真正完全合格的主机名; 使用“主机名”命令来确保它是你所期望的。

我有一个类似的问题。 我和一个傀儡大师和几个客户build立了一个stream浪的环境。 问题是当我摧毁和创造傀儡主,客户发现新的傀儡主作为冒充者。

删除客户端上的/etc/puppet/ssl解决了这个问题。

请记住,您的sslconfiguration将被caching,因此如果您决定也删除该主机上的/etc/puppet/ssl ,则需要重新启动puppet master

 sudo /etc/init.d/puppetmaster restart