GNU/Linux >> Tutoriales Linux >  >> Linux

¿Generar huellas dactilares Hpkp para toda la cadena de certificados?

Desde abajo, el comando puede generar el pin Base64 solo para el primer certificado de profundidad. Pero necesita generar pin para toda la profundidad del certificado.

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

Da solo una clave en lugar de tres,

cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=

Entonces, ¿cómo podemos generar los tres niveles de pines?

Respuesta aceptada:

Aunque estoy mayormente de acuerdo con Romeo en que ya debería tener los archivos de certificado en el servidor, si los tiene necesita procesar los certificados múltiples de un s_client puedes hacer algo como:

 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. Generar CSR desde Cpanel

  2. Cómo generar una solicitud de firma de certificado (CSR) para un SSL

  3. Cómo generar una clave SSL, una CSR y un certificado autofirmado para Apache

  4. Openssl:certificado autofirmado de error en la cadena de certificados

  5. No se pudo configurar la cadena de certificados de CA

Cómo generar certificados SSL autofirmados usando OpenSSL

Autoridad de certificación con OpenSSL

¿Generar miniaturas para texto?

¿Cómo generar CSR's para SSL en cPanel?

Cómo generar una CSR (Solicitud de firma de certificado) en Linux

¿Cómo generar un certificado de openssl con vencimiento inferior a un día?