Tengo algunas preguntas sobre las extensiones X.509 v3. ¿Qué extensiones deberían aparecer en un certificado adecuado para un servidor SSL?
Tengo algunas preguntas sobre las extensiones X.509 v3. ¿Qué extensiones deberían aparecer en un certificado adecuado para un servidor SSL?
Ninguna extensión es estrictamente necesaria en el certificado del servidor SSL, pero algunas solo pueden ayudar:
Authority Key Identifier
ayudará a los clientes a vincular el certificado con la CA emisora. CRL Distribution Points
(no crítica) para apuntar a la URL donde se debe encontrar la CRL. Authority Information Access
para incluir un puntero (URL) al certificado de la propia CA emisora; la misma extensión puede apuntar a un respondedor OCSP, si corresponde. Key Usage
, debe incluir algunas marcas: keyAgreement
y keyEncipherment
para que las claves RSA se usen con conjuntos de cifrado TLS_RSA_ *, digitalSignature
para que las claves RSA y DSA se usen con el TLS_DHE_ * conjuntos de cifrado (existe cierta confusión sobre si se debe usar keyAgreement
o keyEncipherment
en el caso de intercambio de claves basado en RSA, por lo que es más seguro incluir ambas marcas). Subject Alt Name
debe usarse para indicar el nombre del servidor SSL. En ausencia de una extensión de este tipo, todos los navegadores retrocederán al componente CN del subjectDN, pero esta extensión sigue siendo nominalmente "preferida" (consulte RFC 2818 para más detalles). Por supuesto, todas estas extensiones deben ser aplicadas por la CA emisora, por lo que si ya tiene la CA, no debería haber ninguna pregunta adicional aquí.
Si tiene dudas, consulte el perfil de la PKI de Internet X.509 . El perfil define lo que deberías moralmente seguir. Si te conformas totalmente con él, tus certificados funcionarán en todas partes. Los navegadores son en realidad mucho más indulgentes que eso.
Lea otras preguntas en las etiquetas public-key-infrastructure tls certificates openssl x.509