Crear certificado para Webserver
Si tiene la necesidad de crear un certificado con la PKI para una web interna. Suponiendo que el dominio de la web va a ser test.psc.local, desde un equipo Linux o un Windows con el paquete OpenSSL ejecute el siguiente comando.
Crearlo
Crear request desde un nodo externo:
openssl req -nodes -new -newkey rsa:4096 \
-keyout test.psc.local.key \
-out test.psc.local.csr \
-addext "subjectAltName = DNS:test.psc.local" \
-subj "/C=ES/ST=Barcelona/L=Barcelona/O=GRG-CA/OU=GRG-CA/emailAddress=your@email.dot/CN=test.psc.local/"
openssl req -nodes -new -newkey rsa:4096 \
-keyout test.psc.local.key \
-out test.psc.local.csr \
-addext "subjectAltName = DNS:test.psc.local" \
-subj "/C=ES/ST=Barcelona/L=Barcelona/O=GRG-CA/OU=GRG-CA/emailAddress=your@email.dot/CN=test.psc.local/"
Crearlo desde la misma SUBCA:
cd /root/ca
openssl req -config intermediate/sub-ca-openssl.cnf \
-key intermediate/private/test.psc.local.key \
-new -sha512 -out intermediate/csr/test.psc.local.csr \
-addext "subjectAltName = DNS:test.psc.local" \
Se le preguntará por una password (en el caso de generarla con la propia SUBCA) y los datos.
Este comando generará dos ficheros,
- test.psc.local.key: Clave privada que no debe compartir con nadie
- test.psc.local.csr: Certificate Sign Request (petición de firma) que ha de firmar con la PKI para generar el certificado público (.crt / .pem)
Copie el fichero en la SUBCA y firmelo con el siguiente comando
cd /root/ca
openssl ca -config intermediate/openssl.cnf \
-extensions server_cert \
-days 1460 -notext -md sha512 \
-in test.psc.local.csr.pem \
-out test.psc.local.com.crt.pem
Se le solicitará la contraseña de la clave privada de la SubCA. Envie el certificado de vuelta al equipo donde va a usarlo (o al usuario que lo ha solicitado)