尝试安装 Puppet 模块时,如何解决 OpenSSL 中包含的 CA 包可能无效或不是最新的问题?

尝试安装 Puppet 模块时,如何解决 OpenSSL 中包含的 CA 包可能无效或不是最新的问题?

尝试获取模块时,我得到以下输出

注意:准备安装到 /usr/local/etc/puppet/modules ...
注意:从 https://forgeapi.puppetlabs.com 下载...
错误:无法通过 HTTPS 连接到 https://forgeapi.puppetlabs.com
  无法验证 SSL 证书
    该证书可能未由有效 CA 签名
    OpenSSL 附带的 CA 包可能无效或不是最新的

但是我的/etc/ssl/cert.pem链接正确,并且包ca_root_nss-3.16.3是最新的。我可以从 Puppet 获得有关如何继续诊断此问题的任何信息吗?也许它查找的位置不对?

答案1

我想我应该明确说明我的解决方案。按照 Felix Frank 的建议在 FreeBSD 中使用strace( ),我执行了ktrace

ktrace -d puppet module install puppetlabs/apache

-d 标志只是为了防止涉及子进程。然后,为了以人类可读的格式恢复跟踪,

kdump | less

其中透露了以下内容

84579 ruby​​19 调用打开(0x804453968,0,0x1b6)
 84579 ruby​​19 NAMI“/usr/local/openssl/cert.pem”
 84579 ruby​​19 RET open -1 errno 2 没有这样的文件或目录

我还不清楚我的系统是否只是配置不正确(这cert.pem应该是存在的);或者是否有其他问题。无论如何,它解决了无法安装模块的直接问题。

相关内容