我正在使用 Puppet 代理和 Puppet master,我注意到 Puppet 证书实用程序为我的代理的公钥提供了指纹,因为它已请求签名:
$ puppet cert list
"dockerduck" (SHA256) 1D:72:C5:42:A5:F4:1C:46:35:DB:65:66:B8:B8:06:28:7A:D4:40:FA:D2:D5:05:1A:8F:43:60:6C:CA:D1:FF:79
我如何验证这是正确的密钥?
在 Puppet 代理上,采取 asha256sum
给了我一些截然不同的东西:
$ sha256sum /var/lib/puppet/ssl/public_keys/dockerduck.pem
f1f1d198073c420af466ec05d3204752aaa59ebe3a2f593114da711a8897efa3
如果我没记错的话,证书在实际密钥文件中提供了公钥的校验和。我如何才能访问密钥指纹?
答案1
OpenSSL 命令行实用程序可用于检查证书(和私钥以及许多其他内容)。要查看证书中的所有内容,您可以执行以下操作:
openssl x509 -in CERT.pem -noout -text
要获取 SHA256 指纹,您需要执行以下操作:
openssl x509 -in CERT.pem -noout -sha256 -fingerprint
答案2
确认代理指纹的最佳方法(至少在 Puppet 3.6 中)是在代理中运行以下命令:
puppet agent --fingerprint