Mover o copiar un certificado SSL desde un servidor Apache hacia un servidor Windows

Mover o copiar un certificado SSL desde un servidor Apache hacia un servidor Windows

Si tienes varios servidores que requieren utilizar el mismo certificado SSL, como en un ambiente de carga balanceada o cuando utilices un wildcard, puedes convertir el certificado y clave privada en un archivo extensión .pfx y luego importar el certificado hacia el servidor Windows de manera que pueda ser utilizado por el IIS o Exchange.

Este movimiento incluso puede requerirse cuando cambias de proveedor de hospedaje. En este artículo veremos el proceso completo y exacto, con instrucciones paso a paso, para lograrlo sin problema. De ser necesario el proceso inverso, copia el certificado SSL desde un servidor Windows hacia uno Apache.

Asumiremos que tienes ya instalado satisfactoriamente el certificado SSL en el servidor Apache. Sigue los pasos siguientes para mover o copiar un certificado ya instalado en Apache hacia un servidor Windows.

1. Convertir los archivos individuales del certificado y la clave privada en un archivo extensión .pfx.
2. Copiar el archivo .pfx hacia el servidor Windows.
3. Importar el archivo .pfx hacia el Windows store.
4. Configura el IIS para utilizar el certificado.

Crear el archivo .pfx utilizando OpenSSL

El certificado SSL instalado en tu servidor Apache consiste de un certificado primario, una clave privada y probablemente uno o más certificados intermedios. Es necesario que ubiques estos archivos y los conviertas en un archivo .pfx utilizando OpenSSL (puedes utilizar también el SSL Converter  para convertir archivos .pem/.crt en un archivo .pfx).

1. Ubicar los archivos individuales en tu servidor Apache. La ubicación exacta está especificada en el archivo de configuración de Apache en caso esté en instalado. Asegúrate que tienes OpenSSL instalado en el servidor.

2. Ejecuta el siguiente comando OpenSSL para crear un archivo de texto con el contenido del archivo .pfx.

openssl pkcs12 -export -out mydomain.pfx -inkey mydomain.key -in mydomain.crt -certfile intermediateCA.crt

Asegúrate que mydomain.key es el archivo de tu clave privada, mydomain.crt es tu certificado primario para el nombre de dominio y el intermediateCA.crt es el certificado privado, en caso tengas uno.

Ahora puedes ya copiar el archivo .pfx al servidor Windows y también importarlo utilizando las instrucciones siguientes. Las pantallas corresponden a un servidor Windows 2008 pero se hacen notar las diferencias con respecto a  Windows Server 2003.

Importar el certificado en la Windows MMC Console

Nota: estas instrucciones son para importar el certificado utilizando la consola MMC. Si utilizas Windows Server 2008 (IIS7) puedes también importar y exportar certificados directamente en la sección de Certificados de Servidor en el ISS.

1. Click en el menú de Inicio y click en Ejecutar (Run).
2. Escribe mmc y da click en Aceptar (Ok).

Windows-SSL-Export-1

3. Da click en el menú Archivo y luego Agregar o Quitar complemento (Add/remove Span-in).

Windows-SSL-Export-2

4. Si utilizas Windows Server 2003, da click en el botón Agregar. Da doble click en Certificados.

Windows-SSL-Export-3

5. Click en Cuenta del Equipo (Computer Account).

Windows-SSL-Export-4

6. Deja seleccionado Equipo Local (Local Computer) y luego da click en Finalizar.

Windows-SSL-Export-5

7. Si utilizas Windows Server 2003, da click en el botón Cerrar. Luego da click en Aceptar.

Windows-SSL-Export-6

8. Click derecho sobre el folder Personal y luego Todas las Tareas (All Tasks) y luego Importar.

Windows-SSL-Import-1
9. En el Wizard para importar certificado da click en Siguiente.

Windows-SSL-Import-2

10. Click en el botón Examinar y luego cambia el tipo de archivo de “X.509…” hacia “Personal Information Exchange (*.pfx, *.p12)”. Busca el archivo .pfx que copiaste previamente y da click en Abrir y luego Siguiente.

Windows-SSL-Import-3

11. Coloca el password que colocaste al exportar el archivo .pfx y da click en “Mark this key as exportable” para que puedas exportar el certificado desde esta máquina así como desde la máquina original. Da click en Siguiente.

Windows-SSL-Import-4

12. Click en “Automatically select the certificate store based on the type of certificate” y luego click en Siguiente.

Windows-SSL-Import-5

13. Click en Finalizar para completar el wizard.

Windows-SSL-Import-6

14. Ahora puedes dar click en el botón Refresh (Recargar) en la barra de herramientas para recargar y encontrar tu certificado en el folder de Certificados dentro de Personal. Puedes verificar que el certificado fue importado correctamente dando doble click sobre el mismo y ver “You have a private key that corresponds to this certificate” en la parte inferior de la pantalla del certificado.

Windows-SSL-Import-7

15. Cierra la consola MMC. No se requiere que guardes ningún cambio.

Asignar el certificado SSL

Después que has importado el archivo .pfx, requeires ya sea asignar el certificado en el IIS, habilitar el certificado para los servicios de Exchange o seleccionar el certificado en cualquier otro software que pudieras estar utilizando. Ya que el IIS es el lugar más común para el uso de certificados SSL, se incluyen las instrucciones para Windows Server 2008.

1. En la columna de Conexiones en la izquierda, expante la carpeta de Sitiios y luego da click en el sitiio web al que deseas asignar el certificado. Click on Bindings… en la columna derecha.

10-edit-bindings

2. Click en el botón Agregar.

11-site-bindings

3. Cambia el Tipo hacia https y luego selecciona el certificado que instalaste. Da click en Aceptar.

12-add-site-binding
4. Ahora puedes ver listada la asignación del certificado en el puerto 443. Da click en Cerrar.

13-site-bindings2