Memverifikasi sidik jari sertifikat SSL?


26

Saya bermain-main dengan agen Wayang dan master Wayang dan saya perhatikan bahwa utilitas Wayang memberikan sidik jari untuk kunci publik agen saya karena telah meminta untuk ditandatangani:

$ 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

Bagaimana saya memverifikasi bahwa ini adalah kunci yang tepat?

Pada agen Wayang, mengambil sha256summemberi saya sesuatu yang berbeda secara dramatis:

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

Jika saya ingat dengan benar, sertifikat memberikan checksum untuk kunci publik mereka di file kunci yang sebenarnya. Bagaimana saya bisa mendapatkan sidik jari kunci?


1
Sidik jari dari sertifikat bukan hash dari file pem, itu dihitung berdasarkan bidang tertentu dalam sertifikat yang diatur dalam format dan urutan tertentu.
Dobes Vandermeer

Jawaban:


39

Utilitas baris perintah OpenSSL dapat digunakan untuk memeriksa sertifikat (dan kunci pribadi, dan banyak hal lainnya). Untuk melihat semua yang ada dalam sertifikat, Anda dapat melakukan:

openssl x509 -in CERT.pem -noout -text

Untuk mendapatkan sidik jari SHA256, Anda harus:

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 CERTIFICATEAda ide?
Naftuli Kay

@NaftuliTzviKay Mungkin mereka tidak dalam format PEM. Seperti apa file itu? (atau, dapatkah Anda membuat tes yang tidak akan Anda gunakan, dan mempostingnya di suatu tempat?)
derobert

Berikut kunci publik yang dimaksud dalam pos asli: pastebin.com/ae2Qtexc
Naftuli Kay

@NaftuliKay Anda harus memiliki sertifikat dalam bentuk format pem.
M_AWADI

9

Cara terbaik untuk mengonfirmasi sidik jari agen, setidaknya di Puppet 3.6, adalah dengan menjalankan perintah berikut di agen Anda:

puppet agent --fingerprint
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.