当我们使用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错误的帮助都将深表感谢。
答案 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界面)匹配