为什么Chef在Chef-Workstation上使用knife命令时会抛出SSL错误?

时间:2013-03-13 09:12:42

标签: ssl chef

当我们使用knife命令验证Chef-Workstation的成功设置或我们尝试上传Chef-Cookbook时,会发生SSL错误。使用以下命令:

knife client list
knife node list
knife cookbook upload cookbookname

我们在Chef-Workstation上收到以下错误:

OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: unknown protocol

要解决此错误,我们尝试使用rackfile软件创建以下3个文件:

hostname.key
hostname.pem
hostname.crt
在Chef-Server上

我们将hostname.pem放在服务器本身的chef文件夹中以及工作站上的certs文件夹中。最后我们尝试再次运行命令但没有成功。任何有助于解决SSL错误的帮助都将深表感谢。

2 个答案:

答案 0 :(得分:1)

尚未将 Chef Server 证书拉入工作站的 trust_certs 目录中。

运行命令 knife ssl fetch 从您的厨师工作站。 这将从 Chef 服务器中提取证书并将其放置在工作站的 trust_certs 目录中。 Trusted_certs 的默认位置在您的 Chef-repo 目录中的 .chef/trusted_certs 目录中。

然后运行 knife ssl check 验证证书。

trusted_certs 目录中的证书将被执行任何 Knife 命令所信任。

https://docs.chef.io/workstation/getting_started/#get-ssl-certificates

答案 1 :(得分:0)

您需要在每个工作站上注册该证书。此外,请确保证书与正确的URL(即API端点,而不是Web界面)匹配