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..

Crear request desde SUBCA

Si usted se encarga de generar los certificados y administrar las web del entorno, entonces puede generar el certificado directamente desde la Subca y luego mover los ficheros al servidor que hara uso de ellos.

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. Recuerde mantener en medida de lo posible, todos aquellos datos que identifican la empresa.

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 comandocomando. Se eligen 375 días ya que navegadores como Chrome no permiten una longitud mas larga y darán error. Si no usa Chrome en el entorno, puede aumentar los dias (siempre y cuando no superen el máximo de la SubCA, 10 años).

cd /root/ca
openssl ca -config intermediate/openssl.cnf \
    -extensions server_cert \
    -days 1460375 -notext -md sha512 \
    -in intermediate/certs/test.psc.local.csr.pemcsr \
    -out intermediate/certs/test.psc.local.com.crt.pemcrt

Se le solicitará la contraseña de la clave privada de la SubCA. EnvieCopie los ficheros .key y .crt al servidor que alojará la web y configure el certificadoservidor Web con dichos certificados.

Generar request desde 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/"

Convertir a formato PFX

Los servidores Web IIS de vueltaMicrosoft alsolo equipoadmiten dondeel vaformato PFX. Puede convertir el .key y el .crt a usarlodicho (oformato alhaciendo usuariouso quedel losiguiente ha solicitado)comando.

openssl pkcs12 -export \
	-out test.psc.local.pfx \
	-inkey test.psc.local.key \
	-in test.psc.local.pem