Cómo ver el contenido de un certificado .pem

130

Estoy usando Java keytool. He exportado un .pemcertificado autofirmado de mi almacén de claves. ¿Hay un comando para ver los detalles del certificado directamente desde el .pemarchivo (no del certificado en el almacén de claves)?

Ashwin
fuente
Portecle también es muy útil para eso: portecle.sourceforge.net
endo64

Respuestas:

134

Use el -printcertcomando como este:

keytool -printcert -file certificate.pem
Drona
fuente
23
Recibo el error java.lang.Exception: no se pudo analizar la entrada
maxisme
10
@Maximilian puede suceder en los certificados APNS, que combina la clave privada y el certificado en uno .pem. Sepárelos en 2 archivos usando el editor de texto y el comando anterior funcionará. (Sugerencia: copie -- BEGIN CERTIFICATE --línea a -- END CERTIFICATE --línea al nuevo archivo)
Raptor
1
necesita java (jdk o jre)
Pieter
Verifique el nombre de su archivo pem.
Tksilicon
248

Una alternativa al uso keytool, puede usar el comando

openssl x509 -in certificate.pem -text

Esto debería funcionar para cualquier archivo .pem x509 siempre que lo haya opensslinstalado.

StampyCode
fuente
77
En realidad, me keytoolequivoqué con java.lang.Exception: Failed to parse inputalgunas piedras preciosas, pero esto funcionó para todas ellas
Csaba Toth
Si solo desea los alias:openssl x509 -in file.pem -text | grep -A 1 'Alternative Name'
qräbnö
2
En mi caso, tuve que cambiar "x509" con "rsa", así que supongo que depende del contenido de .pem. Usé el filecomando para saber que era "rsa" y no "x509" (por ejemplo file xyz.pem).
MegaTux
55
@megatux un archivo PEM puede contener algunos tipos diferentes de datos x509es el formato de los certificados, rsaes el formato de un par de claves pública / privada.
alfwatt