Puppet CA列表操作失败,SSL自签名证书链验证错误求助
解决Foreman/Puppet证书请求检查时的SSL证书验证失败问题
确认CA证书信任链
- 找到Puppet CA根证书,常见路径为
/etc/puppetlabs/puppet/ssl/certs/ca.pem(开源Puppet环境)或/var/lib/puppet/ssl/certs/ca.pem(Foreman关联环境) - 将证书添加到系统信任存储:
- RHEL/CentOS系统:
cp /etc/puppetlabs/puppet/ssl/certs/ca.pem /etc/pki/ca-trust/source/anchors/ update-ca-trust extract - Debian/Ubuntu系统:
cp /etc/puppetlabs/puppet/ssl/certs/ca.pem /usr/local/share/ca-certificates/puppet-ca.crt update-ca-certificates
- RHEL/CentOS系统:
- 找到Puppet CA根证书,常见路径为
配置Puppet工具使用正确CA证书
- 编辑
/etc/puppetlabs/puppet/puppet.conf,在[main]段添加或修改:localcacert = /etc/puppetlabs/puppet/ssl/certs/ca.pem - 保存后重启Puppet服务(若有需要):
systemctl restart puppet
- 编辑
临时指定CA证书执行命令
- 执行
list操作时直接通过参数指定CA证书路径,绕过系统信任问题:puppet cert list --cacert /etc/puppetlabs/puppet/ssl/certs/ca.pem
- 执行
验证证书链完整性
- 用OpenSSL检查目标服务器的证书链,确认根CA与本地信任的一致:
openssl s_client -connect xxxxxxx:8140 -showcerts - 若输出中的根CA与本地的不一致,重新从Puppet CA服务器获取正确的根证书。
- 用OpenSSL检查目标服务器的证书链,确认根CA与本地信任的一致:
极端情况:重置本地SSL证书
- 若上述方法均无效,删除本地SSL证书目录并重新申请:
rm -rf /etc/puppetlabs/puppet/ssl puppet agent -t - 执行前确保Puppet CA服务器正常运行,能接收新的证书请求。
- 若上述方法均无效,删除本地SSL证书目录并重新申请:
内容的提问来源于stack exchange,提问作者Tema Shaposhnikov
相关产品推荐
相关产品推荐

