Supongamos que en nuestra empresa tenemos instalado un Microsoft Certification Authority en local que nos proporciona todos los certificados que necesitamos. Por ejemplo para nuestros sitios web ASP de IIS.

Voy a utilizar esta autoridad de certificación para generarme un certificado para Zimbra. De esta forma como todas mis maquinas de Windows de la empresa tienen instalado dentro de sus “autoridades de certificación de confianza” el certificado raiz de mi autoridad, cuando entren en Zimbra por SSL no tendrán ningún problema.

He de suponer que ya tienes instalado el Microsoft Certification Authority en tú server y que sabes más o menos como funciona. Si no lo tienes instalado haz “Inicio->Configuración->Panel de control->Añadir o quitar programas->Añadir o quitar componentes de Windows”. Selecciona servicios de certificación e instálalo. Créate una autoridad de certificación por ejemplo con el nombre “miempresa_CA”.

Una vez instalado tienes que tener la consola accesible desde las Herramientas Administrativas de tú Windows Server.

Comenzamos:

+ Primero tenemos que decirle a Zimbra que queremos hacer una petición de certificado a una autoridad de certificación externa. Ya sea comercial como Verisign o local como en nuestro caso.

Necesitamos generar un CSR (Certification Signing Request). Nos vamos a la consola de admin y buscamos Configuracion->Certificados->Instalar certificado.

Seleccionamos nuestro nombre de servidor. Por ejemplo misrvzimbra.miempresa.com. Luego le decimos que genere la función CSR.

Luego rellenamos los datos que nos piden para generar el certificado. El campo más importante es el “Nombre común”. Este debe coincidir con el nombre de URL que utilizarás para acceder a tú webmail. Es decir, tú servidor se llama misrvzimbra.miempresa.com, pero cuando accedas vía Web lo harás con webmail.miempresa.com. Si no colocas este nombre correctamente el IE te dirá que estas accediendo a un sitio peligroso porque el certificado no es correcto.

Para finalizar debes descargarte el fichero .csr. Este es el archivo que tendrías que enviar a la autoridad de certificación.

+ Una vez tengamos nuestro .csr nos vamos a nuestra CA. Para ello cargamos la pagina web de nuestra autoridad de certificación de Microsoft. Accedemos a http://miserverwindows/certsrv y nos aparece algo como:

Lo primero que haremos es descargamos el certificado raíz de la CA. Para ello vamos a “Download CA certificate…”. Seleccionamos Base64 y descargamos el certificado con “Download CA certificate”. Este es el certificado que tendríamos que instalar en todas nuestras maquinas dentro de “Autoridades de certificación de confianza”.

+ Ahora ya podemos generar nuestro certificado Zimbra con la ayuda del .csr. Nos vamos otra vez a http://miserverwindows/certsrv y le decimos “Request a certificate->Advanced certificate request”. Seleccionamos la opción “Submit a certificate request by using a base-64…”.

Abrimos con el notepad el .csr anterior y pegamos dentro de la web su contenido. Además tendremos que decirle que lo que estamos pidiendo es un certificado para un servicio web.

Una vez enviada la petición nos generará nuestro certificado. Seleccionamos base-64 y le decimos “Download certificate”.

+ Ya tenemos los dos certificados. El de la autoridad de certificación y el que hemos pedido para Zimbra. Ahora como paso excepcional para Zimbra tenemos que hacer una pequeña modificación dentro de los dos archivos .cer. Esta modificación consiste en abrirlos con el notepad y dejar una linea en blanco después del “—–END CERTIFICATE—– “. Esto es debido a un bug de Zimbra que no es capaz de detectar el final del archivo.

+ Estamos listo para cargar el certificado dentro de Zimbra. Volvemos a la consola de administración de Zimbra y le volvemos a decir “Instalar certificado”.

Esta vez no volvemos a generar la función CSR otra vez sino que le diremos “Instalar certificado firmado comercialmente”.

Para finalizar le diremos el path donde se encuentra nuestro nuevo certificado para Zimbra como el propio certificado de la autoridad de certificación.

Una vez instalado y sin ningún error ya podemos reiniciar Zimbra y comprobar como nuestro webmail se carga por SSL con el nuevo certificado.

Si hay algún otro problema para instalar los certificados comerciales lo mejor es hacerlo desde la linea de comandos como root:

# zmcertmgr deploycrt comm /tmp/certnew.cer  /tmp/certificado_empresaCA.cer

Más información:
+ Conceptos básicos sobre SSL
+ Zimbra-grupo
+ Commercial certificates in Zimbra