Certificado Exchange

3 febrero 2015
Josep Ma Solanes 0

Cuando todo se concentra en un único punto en el tiempo, todo tiene que volar, tiene que correr, pero la verdad es que no llegas a todas partes y las cosas corriendo, la mayoría salen mal. Para hacer una entrada semanal torpe prefiero dejar en su lugar, una chuletilla que muchas y muchas veces debes tener a mano a toda prisa: cambiar el certificado de Microsoft Exchange.

¿Por que lo tienes que hacer siempre a toda prisa? Pues porque cuando el certificado está vigente nadie se acuerda de él, sólo cuando ya ha caducado el certificado del servidor de correo electrónico Microsoft Exchange a correr todos: los usuarios no pueden acceder con normalidad al correo electrónico.

Sé que el tema certificados cuesta, es un mundo desconocido para la mayoría, ya no de mortales, sino también para administradores de sistemas. Pero sólo es eso, un desconocido. Si te lo presentan las cosas se vuelven más fáciles para todos.

Lo que debemos saber de este certificado en concreto es que lo tiene que emitir una entidad certificadora en la que confien todos los dispositivos que tengan que conectarse como usuarios (ordenadores, smartphones), por ejemplo la propia de la empresa o también se puede adquirir en una entidad comercial un certificado multidominio. Usuarios, son todas aquellas personas que tienen un buzón en el servidor de Microsoft Exchange y utilizan un cliente de correo para conectarse, ya sea Microsoft Outlook, OWA, iPhone, Android, etc…

El certificado lo que hace es cifrar la capa de transporte, es decir, la comunicación entre el servidor y el cliente de correo electrónico. No, no es un certificado para validar usuarios o firmar, como el caso del DNIe, el de Hacienda, idCat, etc… Este certificado sólo se instala en los frontales de los servidores de correo electrónico, no en los usuarios. Su petición a la entidad certificadora es mediante una plantilla de servidor Web, pero a diferencia de una web, este certificado debe incluir todos los nombres alternativos que pueda utilizar el servidor de correo: autodiscover, webmail, el nombre del servidor, el nombre del dominio, etc….

Instrucciones PowerShell

La petición (el archivo request a pasar a la entidad certificadora) se realiza mediante la PowerShell de Microsoft Exchange con una instrucción que varía según sea Microsoft Exchange 2007 o bien Microsoft Exchange 2010 y 2013:

No obstante, antes de hacer la petición, conviene hacer un listado y tomar nota de los certificados actuales con su huella digital, a fin de poder localizar mejor el nuevo para activarlo en los diferentes servicios:

Get-ExchangeCertificate

Desglosando un poco la instrucción a pasar tenemos que saber para que sirven ciertos parámetros:

  • SubjectName. Los datos de quien genera el certificado: nombre, dirección, población, provincia, país. Especial atención al parámetro cn que debe contener el nombre principal con la que se accede al servidor de correo electrónico.
  • DomainName. Los diferentes nombres con el que se puede acceder a alguno de los servicios del servidor de correo electrónico. Forzosamente debe incluirse el nombre NetBIOS del servidor, el nombre del dominio de Active Directory, la combinación de los dos y el alias autodiscover en todos los posibles dominios del servidor de correo. Además de los nombres con el que se llaman a los diferentes servicios: webmail, correo, pop, smtp…
  • FriendlyName. Otra vez el nombre principal con el que se accede al servidor de correo electrónico. Por ejemplo: correo.jmsolanes.cat.

 

Microsoft Exchange 2007

La instrucción para generar la petición de certificado a pasar a la entidad certificadora es:

New-ExchangeCertificate -GenerateRequest -SubjectName "c=ES,s=Tarragona,l=VALLS,o=JMSolanes,cn=correo.jmsolanes.cat" -DomainName srvcorreo, jmsolanes.cat, srvcorreo.jmsolanes.cat, correo.jmsolanes.cat,pop.jmsolanes.cat, autodiscover.jmsolanes.cat, imap.jmsolanes.cat -FriendlyName "correo.jmsolanes.cat" -PrivateKeyExportable $True -Force -Path "c:\peticion_de_certificado.req" -keysize 2048

Microsoft Exchange 2010 y 2013

En este caso, primero se asigna la petición a una variable y después se guarda el resultado en un archivo:

$Data = New-ExchangeCertificate -GenerateRequest -SubjectName "c=ES,s=Tarragona,l=VALLS,o=JMSolanes,cn=correo.jmsolanes.cat" -DomainName srvcorreo, jmsolanes.cat, srvcorreo.jmsolanes.cat, correo.jmsolanes.cat,pop.jmsolanes.cat, autodiscover.jmsolanes.cat, imap.jmsolanes.cat -FriendlyName "correo.jmsolanes.cat" -PrivateKeyExportable $True -keysize 2048
Set-Content -path "c:\peticion_de_certificado.req" -Value $Data

El contenido del archivo «peticion_de_certficado.req» es el que se debe copiar y pasar a la Entidad Certificadora para obtener el certificado. Una vez tengamos el certificado, hay que importarlo. ¡Es MUY importante hacerlo desde el mismo equipo que es quien se ha quedado la clave PRIVADA!.

Para Microsoft Exchange 2007 la importación se hace con la siguiente instrucción:

Import-ExchangeCertificate -path "c:\correo.jmsolanes.cat.cer"

En Microsoft Exchange 2010 y 2013, según el tipo de codificación del certificado, hay que utilizar una instrucción (extensión p7b):

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\correo.jmsolanes.cat.p7b -Encoding byte -ReadCount 0))

O bien la otra (extensión cer):

Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\correo.jmsolanes.cat.cer -Encoding byte -ReadCount 0))

Si la importación es correcta, al terminar, aparece la huella digital (Thumbprint) del mismo. Es necesaria para hacer la asignación del certificado en los diferentes servicios del servidor de correo electrónico. En caso de no verla correctamente, se puede hacer un listado de los certificados con la siguiente instrucción y localizarlo:

Get-ExchangeCertificate

Finalmente, se activa el certificado en los diferentes servicios. Este cambio es inmediato:

Enable-ExchangeCertificate -Thumbprint 999999999999999999999999999999 -Services "IIS,SMTP,POP,IMAP"

Ya está el certificado de Microsoft Exchange cambiado y por lo tanto, ya podéis volver a respirar.

En caso de disponer de más de un servidor frontal de Microsoft Exchange o un proxy reverso delante suyo, hay que exportar el certificado con su clave privada, por entorno gráfico mismo y como cualquier otro certificado, y importar a otros servidores, asociándolo a los servicios correspondientes (correo electrónico, proxy reverso, etc…)

 

¿Te ha gustado el artículo? Lo puedes compartir en las redes sociales. También puedes dejar tu opinión, comentario o sugerencia. ¡Gracias!

Similar Posts by The Author:

 

Deixar un comentari

Recorda que no es contestaran preguntes personals, només d´interés comú que ens enriqueixin a tots.
La teva adreça de correu electrònic no serà publicada. Els camps obligatoris estan indicats.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.