SSL証明書の指紋を検証しますか?


26

私はPuppetエージェントとPuppetマスターをいじっていますが、Puppet certユーティリティが署名を要求したときにエージェントの公開キーのフィンガープリントを提供していることに気付きました。

$ 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エージェントで、 sha256sumと劇的に異なるものが得られます。

$ sha256sum /var/lib/puppet/ssl/public_keys/dockerduck.pem
f1f1d198073c420af466ec05d3204752aaa59ebe3a2f593114da711a8897efa3

正しく思い出せば、証明書は実際のキーファイル自体の公開キーのチェックサムを提供します。キーの指紋にアクセスするにはどうすればよいですか?


1
証明書のフィンガープリントはpemファイルのハッシュではなく、特定の形式と順序で配置された証明書の特定のフィールドに基づいて計算されます。
ベスヴァンダーメール

回答:


39

OpenSSLコマンドラインユーティリティを使用して、証明書(および秘密キーなど)を検査できます。証明書内のすべてを表示するには、次を実行できます。

openssl x509 -in CERT.pem -noout -text

SHA256フィンガープリントを取得するには、次のようにします。

openssl x509 -in CERT.pem -noout -sha256 -fingerprint

1
unable to load certificate 140640672884384:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: TRUSTED CERTIFICATE何か案は?
ナフトゥリケイ14

@NaftuliTzviKayたぶん、彼らはPEM形式ではありません。ファイルはどのように見えますか?(または、使用しないテストを生成し、どこかに投稿できますか?)
derobert 14

ここでは、公開鍵は、元の記事で言及します:pastebin.com/ae2Qtexc
Naftuliケイ

@NaftuliKay証明書はpem形式である必要があります。
M_AWADI

9

少なくともPuppet 3.6では、エージェントのフィンガープリントを確認する最良の方法は、エージェントで次のコマンドを実行することです。

puppet agent --fingerprint
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.