Verificación Certicate con la línea de comandos OpenSSL

0

Estoy intentando verificar un certificado aleatorio con OpenSSL en Windows. He instalado Win32 OpenSSL , pero ¿cómo verifico un certificado aleatorio con la línea de comandos OpenSSL? Sé que hay otras formas, pero quiero usar la línea de comandos de OpenSSL :)

¡Gracias por tu ayuda!

EDITAR: Cuando uso openssl verify cacert.pem me da este error:

Nuevoerror:

    
pregunta hudhud 30.09.2016 - 21:34
fuente

3 respuestas

1

El primer error se debió a que intentaste "leer" (y verificar) un archivo inexistente.

El segundo parecería no ser un error, sino un error 'correcto' para verificar.

Lo que realmente dice el mensaje es que no puede encontrar la CA que emitió el certificado que está probando y, por lo tanto, no puede validar la cadena (lo que generalmente sería, en el mínimo de CA > su certificado).

La línea SSLeay demo server en su segunda salida tendería a indicar que una razón para esto es que, de hecho, acaba de generar una nueva CA.

También parece que está intentando validar su propio certificado de CA, que es un poco redundante, pero si realmente quiere hacerlo, debe ejecutar:

openssl verify -CAfile cacert.pem cacert.pem

Un ejemplo más útil / práctico sería validar un certificado de bien conocido (con suerte). No estoy seguro de poder canalizar en Windows, pero en Linux, podría hacerlo:

openssl s_client -connect google.com:443 </dev/null | openssl verify

Si desea ver el certificado, puede ejecutar:

openssl s_client -connect google.com:443 </dev/null | openssl x509 -text

Creo que es posible que desee pasar un poco de tiempo leyendo sobre cómo funciona la PKI: en general, una PKI se crea cuando una entidad "confiable" (una Autoridad de certificación) emite un certificado para otra entidad; básicamente, responde por eso otra entidad (que puede ser una organización, un servidor, un usuario, etc.) que es quien dice ser.

Por lo tanto, la validación / verificación de un certificado implica lo siguiente (a continuación se presenta una explicación simplificada):

  • de su certificado de usuario final (es decir, el certificado utilizado en el dominio que está verificando; el usuario aquí es cualquier cosa que haga uso del certificado, no necesariamente un ser humano), el Emisor se verifica y la clave pública del Emisor también es extracto (para comparación con claves conocidas para ese emisor).
  • luego, puede verificar primero que su certificado de usuario final está firmado correctamente (es decir, la firma contenida en el certificado está firmada por la clave privada vinculada a la clave pública del Emisor, que se incluye en el certificado)
  • luego, puede validar el certificado del Emisor, ya sea revisando una lista de certificados de productos en buen estado (que es lo que hace la tienda de certificados del sistema operativo), o repitiendo los dos pasos anteriores si el Emisor ha recibido su certificado por algún otro entidad.

En algún momento, usted termina en un certificado autofirmado que pertenece a una entidad como Verisign / LetsEncrypt / YourCAHere, que es la raíz de la cadena de confianza que refleja la PKI.

    
respondido por el iwaseatenbyagrue 28.02.2017 - 12:28
fuente
0

Hace pocos minutos otra publicación relacionada aparecido en este sitio. El autor enlazó esta página , lo que me hace creer que debería revisar

openssl verify
    
respondido por el kaidentity 30.09.2016 - 21:46
fuente
0

openssl verificar -CAfile ca-bundle.crt certificate.crt

o

openssl Verify -CApath cadirectory certificate.crt

Para verificar un certificado, necesita la cadena, que se remonta a una Autoridad de certificación raíz, de las autoridades de certificación que lo firmaron. Si se trata de un certificado de servidor en la Internet pública, es probable (pero no necesariamente) una de las CA raíz de cientos de dólares en las que confían los navegadores. Esas claves públicas de la CA raíz se envían con cada navegador (en el equivalente del directorio ca en el segundo comando openssl). En última instancia, cada usuario de certificados raíz debe decidir en qué autoridades confiarán; para los navegadores, esa decisión la toman los fabricantes de los navegadores y es un gran acuerdo (tm). Puede encontrar la CA raíz en cada confianza, y usarla en su directorio raíz de CA, si lo desea, o elegir la suya.

    
respondido por el crovers 30.09.2016 - 21:48
fuente

Lea otras preguntas en las etiquetas