El camino de un ITPro » 13/03/2012

Daily Archives: 13/03/2012

Exchange 2010

Instalación de Exchange 2010 IX – Generación de Certificados.

Published by:

Este es el tercero y espero que el último Post de este rol …. que no termino nunca y se me acumulan las cosas.

Tercero, generación de los certificados de cada servicio/servidor:

Para la publicación de todos nuestros servicios, ya sea interna o externamente, necesitamos generar certificados SSL (Secure Sockets Layer). Exchange 2010 por defecto genera unos certificados self-signed pero, a nosotros, que controlamos este tema, nos gustan mas los certificados de nuestra CA de producción o una CA externa como Verisign, etc. Asimismo, podríamos utilizar certificados Wildcard pero, en nuestro caso, vamos a utilizar SAN, o sea, certificados con nombres alternativos.

Necesitamos los siguientes certificados:

  •  Para Servidor:
    • Nombre corto de cada Servidor.
    • FQDN de cada Servidor.
  • Para Servicio:
    • Servicio SMTP.
    • Servicio POP3/IMAP4.
    • Web Services:
      • Outlook Anywhere
      • Autodiscover
      • ActiveSync
    • Unified Messaging.
  • Legacy Exchange Server.- Este se utiliza en entornos de coexistencia mientras se realiza la migración de usuarios.

Podemos realizar a través de la consola (EMC) o a través de la shell (EMS), al contrario que en Exchange 2007.Desde la consola:

Seleccionamos el servidor CAS, en este caso. botón derecho y elegimos «Nuevos Certificados»

 Escribimos un nombre (amigable)

Habilitamos, si es nuestro caso, la posibilidad de certificados Wildcard, que no lo es

 Nos aparecen todos los posibles certificados a generar:

Certificados «Sharing», para el caso de realizar una delegación federada

Para el certificado, tanto interno como externo, para Outlook Web App (OWA):

Para el certificado de ActiveSync:

Y ahora viene lo bueno, habilitamos tanto Exchange Web Services, Outlook Anywhere como Autodiscoer, a nivel interno y/o externo:

Certificado para POP3 e IMAP, si es necesario:

Certificados para encriptar la comunicación entre los Hub Transport utilizando MTLS:

Asi como el certificado denominado «legacy» para casos de migración:

Si os fijais, en todo momento nos aparece el botón de Reset por si queremos volver a empezar porque se nos haya olvidado algo:

 Review de lo solicitado:

Nos pide datos de nuestra organización y la ubicación del fichero que se va a generar:

Sumario:

Y… fin. Nos indica los pasos a seguir:

El fichero generado tendrá este formato:

Una vez realizada la solicitud a la Entidad Certificadora, procederemos a completar nuestra petición pendiente de certificados:

 Lanzamos el Asistente, seleccionamos el archivos que la Entidad Certificadora nos ha devuelto:

Y completamos la petición:

Y el proceso de asignación de los certificados a los servicios será el siguiente:

Seleccionamos el o los servidores sobre los que actuar:

Seleccionamos los certificados a asignar:

Realizamos la asignación:

En mi caso, me solicita la sobreescritura del certificado SMTP existente:

Y ya esta. No os olvideis de eliminar aquellos certificados Selfsigned que se crearon inicialmente y que, ahora, no sirven:

Podemos verificar, por ejemplo, el certificado que se ha instalado en el IIS con todos sus SAN (Subject Alternative Name):

Podemos abrir una consola mmc con los certificados del servidor o verificar desde un explorador qué certificados aparecen y si se aceptan al abrir un OWA.

Desde la Shell, pues esto tendría un formato similar a este:

New-ExchangeCertificate -GenerateRequest -Path c:tempCertReq.req -SubjectName «c=CA,o=RobeznoSA, cn=mail.robezno.com» -DomainName mail.robezno.com, autodiscover.robezno.com, ROBSRVFJ, ROBSRVFJ.robezno.com -PrivateKeyExportable $true

Y el resultado algo como esto:

Podemos ejecutar el cmdlet anterior utilizando variables y, posteriormente, exportar el contenido a un fichero:

$ReqCert = New-ExchangeCertificate -GeneraleRequest -SubjectName «c=CA,o=RobeznoSA, cn=mail.robezno.com» -DomainName mail.robezno.com, autodiscover.robezno.com, ROBSRVFJ, ROBSRVFJ.robezno.com -PrivateKeyExportable $true

Set-content -path c:tempCertReq.req -Value $ReqCert

La principal diferencia, básicamente, entre un método y otro es que no tenemos una path o ruta a usar con los cmdlets que gestionan los certificados.

Bibliografia.
Msexchange.org
Sitting on IT.