Soy un desarrollador web y quiero probar mis sitios web localmente con un certificado SSL autofirmado.
Todo funcionó muy bien hasta hace unos días, cuando Chrome comenzó a quejarse de una propiedad AltName
que falta.
OpenSSL CA
He creado mi propia autoridad usando:
openssl req
-x509
-sha256
-new
-out dev.root.ca.crt
-keyout dev.root.ca.key
-days 3650
CNF
He creado un archivo openssl.cnf
al agregar esos valores a los predeterminados:
[ CA_default ]
copy_extensions = copy
[req]
req_extensions = v3_req
[ v3_req ]
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = $ENV::ALTNAME
ALTNAME via shell
Luego uso este comando para generar un archivo .csr
y .key
:
set ALTNAME=DNS:dev.example.com
openssl req
-newkey rsa:2048
-out dev.example.com.csr
-pubkey
-new
-keyout dev.example.com.key
-sha256
-config openssl.cnf
El archivo csr
generado contiene el nombre alternativo como se esperaba.
Altname no lo hace desde CSR a CRT
Luego uso este comando para generar los archivos .crt
y .key
:
openssl x509
-req
-in dev.example.com.csr
-CA dev.root.ca.crt
-CAkey dev.root.ca.key
-CAcreateserial
-out dev.example.com.crt
-days 3650
-sha256
Pero los nombres alternativos ya no están presentes en el archivo crt
generado.
¿Qué pasa ahora?
¿Debo agregar parámetros adicionales al comando openssl x509 -req
?