¡Bienvenidos de nuevo! Hoy os voy a hablar del certificado “Microsoft Exchange Server Auth Certificate”.
Este certificado autofirmado o «self-signed» se crea cuando se instala Exchange y realiza una autenticación servidor a servidor mediante OAuth. Esto puede afectar a diversos aspectos: características que emplean EWS (Exchange Web Service) tales como Free/Busy o OOF (Out Of Office), integraciones de software tipo SharePoint, Exchange Online o Add-Ins de archivado en Outlook (como por ejemplo Enterprise Vault de Veritas) e incluso ocasionar problemas con OWA (Outlook Web App).
En las últimas actualizaciones de Exchange 2013 y 2016 (Cumulative Update) hemos visto que en ciertos escenarios el certificado desaparece. También es posible que tengamos el certificado pero que esté caducado, siendo así podríamos renovarlo desde la consola de Administración de Exchange. Esto crearía un certificado nuevo, por lo que aún tendríamos que hacer algunas configuraciones a mayores desde EMS (Powershell de Exchange). Yo os recomiendo directamente realizar los pasos de borrado del existente y creación de uno nuevo desde EMS.
Incluso es posible que no detectemos ningún problema de producción en nuestro entorno, pero al mirar el visor de eventos veamos muchos errores y advertencias que hagan referencia a este certificado:
Este certificado es único para todos los Servidores de Exchange. Imaginemos que instalamos un Exch01 con el cual se crea este certificado; si luego instalamos un Exch02, aparecerá automáticamente ese mismo certificado con el mismo Thumbprint en el nuevo servidor, ya que se replicará desde el Exch01 al Exch02 sin intervención alguna.
Así pues, vamos a centrarnos en un servidor de Exchange. Seguiremos los pasos y luego tendremos que confirmar si el nuevo certificado se ha replicado al resto de máquinas:
1 – Abrimos Exchange Management Shell con permisos de Administrador.
2 – Vamos a crear un nuevo certificado:
New-ExchangeCertificate -KeySize 2048 -PrivateKeyExportable $true -SubjectName “CN= Microsoft Exchange Server Auth Certificate” -DomainName “*.DomainName.com” -FriendlyName “Microsoft Exchange Server Auth Certificate” -Services SMTP
3 – Tras ejecutar el comando, nos aparecerá un prompt indicando si queremos sobrescribir el certificado por defecto de SMTP, al cual indicaremos que no pulsando la tecla “n” y Enter.
4 – Si el comando se ejecuta correctamente, nos mostrará el nuevo certificado creado. Copiaremos el Thumbprint que aparece ya que lo necesitaremos luego.
5 – Vamos a guardar la fecha en una variable que necesitaremos para configurar el apartado de AuthConfig:
$date = Get-Date
6 – Configuramos AuthConfig, usando el Thumbprint y la variable que guardamos previamente:
Set-AuthConfig -NewCertificateThumbprint certificate_thumbprint –NewCertificateEffectiveDate $date
7 – Nos saldrá un mensaje referente a la fecha del certificado, el cual ignoramos pulsando “Enter”:
8 – Luego publicaremos el certificado:
Set-AuthConfig –PublishCertificate
9 – También tendremos que borrar el Thumbprint del certificado borrado o expirado:
Set-AuthConfig -ClearPreviousCertificate
Ahora solamente nos queda hacer un IISreset en cada servidor Exchange y dar tiempo para que replique el certificado nuevo en el resto de los servidores Exchange de la organización. Para confirmar que el nuevo certificado se está aplicando en la configuración usaremos este comando:
(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate
Idealmente, al cabo de 24 horas, todos los servidores de Exchange deberían de tener el nuevo certificado. De no ser así, siempre se puede exportar el nuevo certificado manualmente (con la clave privada) e importarlo en aquel servidor Exchange que no replicase, colocándolo en la carpeta de certificados «Personal» mediante una consola MMC. Esto nos indicaría que tenemos algún que otro problema subyacente, pero se escapa del propósito de este artículo.
Para terminar, es posible que cuando listéis los certificados de Exchange con el comando “Get-ExchangeCertificate” os muestre más de un certificado “Microsoft Exchange Server Auth Certificate”. No os va a causar ningún problema, pero os recomiendo como buena práctica borrar todos los certificados que no se usen o hayan expirado. OJO, debemos de tener claro que esos certificados no se están usando, y en el caso de “Microsoft Exchange Server Auth Certificate” solamente se usará el certificado que su Thumbprint coincida con el del comando “Get-AuthConfig”.
Espero que este articulo os ayude a solventar vuestras incidencias, y a entender un poco mejor este certificado. Un saludo! 😉
ese certificado da muchos problemas, genial articulo. Gracias!
Buenas Pablo. Muchas gracias por el comentario!