GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Hpkp-Fingerabdrücke für alle Zertifikatsketten generieren?

Von unten kann der Befehl Base64-Pin nur für das erste Tiefenzertifikat generieren. Aber Sie müssen eine PIN für alle Zertifikatstiefen generieren.

openssl s_client -servername example.com -connect example.com:443 -showcerts 
| openssl x509 -pubkey -noout | openssl rsa -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64

Gibt nur einen Schlüssel statt drei,

cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=

Wie können wir also alle drei Ebenen von Pins generieren?

Akzeptierte Antwort:

Obwohl ich Romeo größtenteils zustimme, dass Sie die Zertifikatsdateien bereits auf dem Server haben sollten, wenn Sie tun müssen die mehreren Zertifikate von einem s_client verarbeiten Sie können so etwas tun:

 openssl s_client ..... -showcerts 
   | awk '/-----BEGIN/{f="cert."(n++)} f{print>f} /-----END/{f=""}'
 # or input from bundle or chain file
 for c in cert.*; do
   openssl x509 <$c -noout -pubkey .....
 done
 rm cert.* 
 # use better temp name/location if you want

Linux
  1. Generieren Sie CSR von Cpanel

  2. So generieren Sie einen Schlüssel und eine CSR in cPanel für Ihr SSL-Zertifikat

  3. So generieren Sie eine Certificate Signing Request (CSR) für ein SSL

  4. Wie erstelle ich eine Certificate Signing Request (CSR) mit OpenSSL?

  5. So generieren Sie SSL-Schlüssel, CSR und selbstsigniertes Zertifikat für Apache

So generieren Sie selbstsignierte SSL-Zertifikate mit OpenSSL

Zertifizierungsstelle mit OpenSSL

Thumbnails für Text generieren?

Wie generiert man CSRs für SSL in cPanel?

So generieren Sie eine CSR (Certificate Signing Request) unter Linux

Wie erstelle ich ein Openssl-Zertifikat mit einem Ablauf von weniger als einem Tag?