Exportar e Importar Certificados SSL en Exchange 2013 (PowerShell)
En un entorno empresarial con múltiples servidores Microsoft Exchange, es común necesitar mover certificados SSL de un servidor a otro. El proceso de exportación e importación mediante Exchange Management Shell es la forma más rápida y precisa de replicar la configuración de seguridad sin tener que generar nuevas solicitudes de firma (CSR).
Configurar Exchange puede ser complejo. Simplifica tu infraestructura con nuestros Servidores VPS Windows, que incluyen recursos dedicados y soporte para entornos Microsoft.
Ver Planes VPS Windows
Parte 1: Exportar el Certificado
Para exportar un certificado instalado en un archivo .pfx (que incluye la clave privada), puedes usar el nombre de dominio o la huella digital (Thumbprint).
Método A: Usando el Nombre de Dominio
Este comando busca el certificado asociado a un dominio específico y lo exporta.
Get-ExchangeCertificate -DomainName "midominio.com" | Export-ExchangeCertificate -BinaryEncoded:$true -Password (Get-Credential).password | Set-Content -Path "C:\cert_exportado.pfx" -Encoding Byte
Explicación del proceso:
- Al ejecutar el comando, aparecerá una ventana emergente pidiendo credenciales.
- En el campo Usuario, puedes poner cualquier cosa (ej: admin).
- En el campo Contraseña, escribe la clave que protegerá el archivo
.pfx. ¡Guarda esta contraseña! La necesitarás para importar el archivo después.

Método B: Usando la Huella Digital (Thumbprint)
Si tienes varios certificados para el mismo dominio, es más seguro usar la huella digital única (SHA1).
1. Obtén la lista de certificados para ver las huellas:
Get-ExchangeCertificate
2. Copia la huella digital (Thumbprint) deseada y ejecuta:
Export-ExchangeCertificate -Thumbprint A1B2C3D4E5F6... -BinaryEncoded:$true -Password (Get-Credential).password | Set-Content -Path "C:\cert_exportado.pfx" -Encoding Byte

Parte 2: Importar el Certificado
Una vez que tengas el archivo .pfx en el servidor de destino (copialo a C:\ por ejemplo), usa el siguiente comando para instalarlo.
Import-ExchangeCertificate -FileData ([byte[]](Get-Content -Path "C:\cert_exportado.pfx" -Encoding Byte -ReadCount 0)) -Password (Get-Credential).password
Nota: Si quieres importarlo a un servidor específico dentro de un clúster, añade el parámetro -Server NombreDelServidor al final.

Al igual que en la exportación, se te pedirá usuario y contraseña. Debes ingresar la misma contraseña que creaste al exportar el archivo.
Si todo sale bien, la consola mostrará los detalles del certificado importado (Thumbprint, Subject, etc.).

Paso Final: Habilitar el Certificado
Importar el certificado no lo activa automáticamente. Debes asignarlo a los servicios de Exchange (IIS, SMTP, POP, IMAP) con el siguiente comando:
Enable-ExchangeCertificate -Thumbprint A1B2C3... -Services "IIS,SMTP,POP,IMAP"
Preguntas Frecuentes
¿Qué hago si olvidé la contraseña del archivo .pfx?
No se puede recuperar. Deberás volver al servidor original y repetir el proceso de exportación (Parte 1) para generar un nuevo archivo .pfx con una nueva contraseña que sí recuerdes.
¿Puedo importar el certificado en un servidor que no sea Exchange?
Sí. El archivo .pfx es un estándar (PKCS#12) que contiene la clave pública y privada. Puedes importarlo en cualquier servidor Windows (IIS), Apache o Nginx, aunque los comandos de importación serán diferentes según el sistema.
