Transferir certificado SSL de windows a Linux Apache

Después de investigar un poco he conseguido transferir un certificado SSL desde un windows server 2008 R2 a un Apache2 en Linux Ubuntu. Aquí va la receta…

Primero se exporta el certificado desde el IIS en el servidor windows a formato PFX, esto es algo que siempre deberías hacer para tener una copia de seguridad del certificado.

Ejecutar mmc.exe
Clic en el menú ‘Consola’ y selecciona ‘Agregar/Quitar complemento’.
En la lista de complementos selecciona el complemento «Certificados» y haces click en «Agregar»
Selecciona ‘Cuenta de equipo’y haz click en ‘Siguiente’
Selecciona ‘Equipo Local’ y click en Finalizar.
Clic en Aceptar
Expandir el menú para ‘Certificados’ y click en la carpeta ‘Personal’.
Botón derecho en el certificado que quieras exportar y seleccionas «Todas las tareas > Exportar»

Aparece un asistente. Asegúrate de chequear la opción para incluir la clave privada y continúa a través del asistente hasta que obtengas un fichero .PFX

A continuación ejecuta, desde Linux, el comando openssl para extraer la clave privada y el fichero con el certificado.

# Exportar la clave privada desde el fichero pfx
openssl pkcs12 -in filename.pfx -nocerts -out key.pem
# Exportar el certificado desde el fichero pfx
openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem
# Esto elimina la frase de seguridad de la clave privada para que Apache no la solicite cuando se inicie.
openssl rsa -in key.pem -out server.key

Ahora, un paso extra para hacer que el certificado funcione, necesitamos incluir en el fichero de configuracion del host virtual las siguientes lineas:

SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile /path/to/certificate/cert.pem
SSLCertificateKeyFile /patch/to/key/server.key

El fichero de host virtual estará localizado normalmente en “/etc/apache2/sites-available/virtualhostname.conf”
reiniciar apache con el comando

sudo apache2ctl restart

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Copyright 2018 Javier Antó | Javi