para - instalar certificado ssl linux
¿Cómo funciona un paquete de cadena de certificados SSL? (2)
Creé una jerarquía de cadenas como esta.
root-ca ==> signing-ca ==> subordinate-ca ==> server
Se menciona que para crear un paquete de cadenas, el más bajo debe ir primero.
$ cat server.crt subordinate-ca.crt signing-ca.crt > server.pem
Pero la verificación falla.
$ openssl verify -CAfile root-ca.crt server.pem
error 20 at 0 depth lookup:unable to get local issuer certificate
Sin embargo, si cambio el orden parece funcionar.
$ cat signing-ca.crt subordinate-ca.crt server.crt > server.pem
$ openssl verify -CAfile root-ca.crt server.pem
server.pem: OK
Entonces, ¿cuál sería el error aquí?
La cadena después de "gato" se ve a continuación.
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
Más información: de acuerdo con " http://www.herongyang.com/crypto/openssl_verify_2.html ", realizo la siguiente prueba que funciona.
$ cat signing-ca.crt subordinate-ca.crt > inter.crt
$ openssl verify -CAfile root-ca.crt -untrusted inter.crt server.crt
server.crt: OK
¿Eso significa que todos los enlaces son buenos?
OK, finalmente descubro que esto no se puede hacer a través de la línea de comandos de OpenSSL (o al menos fácilmente). http://openssl.6102.n7.nabble.com/check-certificate-chain-in-a-pem-file-td43871.html
La orden original es, de hecho, al revés. Los certificados deben ser seguidos por el certificado de emisión hasta que el último certificado sea emitido por una raíz conocida según la Sección 7.4.2 del RFC 5246 de IETF.
Esta es una secuencia (cadena) de certificados. El certificado del remitente DEBE ser el primero en la lista. Cada certificado siguiente DEBE certificar directamente el que lo precede.
Ver también SSL: error: 0B080074: rutinas de certificado x509: X509_check_private_key: los valores clave no coinciden con las técnicas de resolución de problemas.
Pero todavía no sé por qué escribieron la especificación para que el pedido importe.
Necesita utilizar el openssl pkcs12 -export -chain -in server.crt -CAfile ...