Skip to main content

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/"

Crearlo desde la misma SUBCA:

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)