Saludos, Let’s Encrypt ha lanzado su Beta hace unos días, llevaba siguiendo el proyecto desde hace unos meses, y parece que por fín está casi listo.
¿Qué es Let’s Encrypt?
Let’s Encrypt es una nueva Entidad Certificadora, es gratis, automatizada y además abierta. Es una buena opción para proteger entornos Zimbra con un Certificado SSL profesional, a coste cero. Hay que tener en cuenta que por ahora se encuentra en estado Beta, y pueden surgir problemas, o incidencias, usarlo siempre bajo vuestra responsabilidad.
Para seguir el proyecto de cerca por favor ir a la web Oficial del Proyecto – https://letsencrypt.org. Además, siempre es bueno leer las preguntas y respuestas frecuentes
Instalar Let’s Encrypt en nuestro servidor Zimbra
Let’s Encrypt debe ser instalado en una máquina Linux para obtener el Certificado SSL, la CA intermedia, y la Private Key, no requiere que sea en el servidor Zimbra, pero si usamos el servidor Zimbra, será más fácil posteriormente hacer la renovación y ahorrar tiempo.
El primero paso será detener el servicio de nginx o de jetty, ya que Let´s Encrypt se comunica usando el puerto 443 para generar el Certificado SSL.
zmproxyctl stop zmmailboxdctl stop
El segundo paso será instalar git en nuestro servidor (apt-get install git/yum install git) y clonar el proyecto letsencrypt en la carpeta que deseemos
- Nota: En RedHat/CentOS 6 necesitas habilitar los repositorios EPEL antes de instalar letsencrypt.
git clone https://github.com/letsencrypt/letsencrypt cd letsencrypt
En este ejemplo, vamos a ejecutar Let’s Encrypt de manera automática, y usar la opción de certonly, la cual nos generará los ficheros que necesitamos para después instalarlos en Zimbra
./letsencrypt-auto certonly
La primera vez que ejecutamos el entorno letsencrypt descargará las dependencias necesarias de los repositorios, puede durar unos minutos
Creating virtual environment...
Updating letsencrypt and virtual environment dependencies...../root/.local/share/letsencrypt/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
./root/.local/share/letsencrypt/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
El proceso nos preguntará por una dirección Email para usar en caso de emergencia o recuperar una Private Key en caso necesario

El proceso nos preguntará también si estamos de acuerdo con las Condiciones de Uso

- Nota: En caso de renovación del SSL, el proceso solamente tomará unos segundos, veremos algo parecido a lo siguiente
Updating letsencrypt and virtual environment dependencies....... Running with virtualenv: /root/.local/share/letsencrypt/bin/letsencrypt certonl
El último paso es introducir el FQDN que queremos proteger, en mi caso es zimbra86.zimbra.io:

El proceso tarda unos segundos y terminará de la siguiente manera:
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/zimbra86.zimbra.io/fullchain.pem. Your cert will expire on 2016-03-04. To obtain a new version of the certificate in the future, simply run Let's Encrypt again. - If like Let's Encrypt, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
¿Donde está el Certificado SSL?
Podemos encontrar todos los Certificados SSL en la siguiente ruta /etc/letsencrypt/live/$domain, donde $domain es el fqdn usado durante el proceso:
root@zimbra86:/etc/letsencrypt/live/zimbra86.zimbra.io# ls -al
total 8
drwxr-xr-x 2 root root 4096 Dec 5 16:46 .
drwx------ 3 root root 4096 Dec 5 16:46 ..
lrwxrwxrwx 1 root root 42 Dec 5 16:46 cert.pem -> ../../archive/zimbra86.zimbra.io/cert1.pem
lrwxrwxrwx 1 root root 43 Dec 5 16:46 chain.pem -> ../../archive/zimbra86.zimbra.io/chain1.pem
lrwxrwxrwx 1 root root 47 Dec 5 16:46 fullchain.pem -> ../../archive/zimbra86.zimbra.io/fullchain1.pem
lrwxrwxrwx 1 root root 45 Dec 5 16:46 privkey.pem -> ../../archive/zimbra86.zimbra.io/privkey1.pem
Construyendo el fichero con el Intermediate CA y el Root CA especial para Zimbra
Let’s Encrypt es casi perfecto, pero eso no quita que Zimbra tenga su particular manera de aceptar los Certificados SSL, donde necesitamos un fichero con las Intermediate CA y el Root CA, Let’s Encrypt ya nos genera el chain.pem donde se encuentra el Intermediate CA, pero necesitamos además añadir el root después del Intermediate:
Vuestro fichero chain.pem debe ser algo como lo siguiente:
-----BEGIN CERTIFICATE----- MIIEqDCCA5CgAwIBAgIRAJgT9HUT5XULQ+dDHpceRL0wDQYJKoZIhvcNAQELBQAw PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD Ew5EU1QgUm9vdCBDQSBYMzAeFw0xNTEwMTkyMjMzMzZaFw0yMDEwMTkyMjMzMzZa MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAJzTDPBa5S5Ht3JdN4OzaGMw6tc1Jhkl4b2+NfFwki+3uEtB BaupnjUIWOyxKsRohwuj43Xk5vOnYnG6eYFgH9eRmp/z0HhncchpDpWRz/7mmelg PEjMfspNdxIknUcbWuu57B43ABycrHunBerOSuu9QeU2mLnL/W08lmjfIypCkAyG dGfIf6WauFJhFBM/ZemCh8vb+g5W9oaJ84U/l4avsNwa72sNlRZ9xCugZbKZBDZ1 gGusSvMbkEl4L6KWTyogJSkExnTA0DHNjzE4lRa6qDO4Q/GxH8Mwf6J5MRM9LTb4 4/zyM2q5OTHFr8SNDR1kFjOq+oQpttQLwNh9w5MCAwEAAaOCAZIwggGOMBIGA1Ud EwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgGGMH8GCCsGAQUFBwEBBHMwcTAy BggrBgEFBQcwAYYmaHR0cDovL2lzcmcudHJ1c3RpZC5vY3NwLmlkZW50cnVzdC5j b20wOwYIKwYBBQUHMAKGL2h0dHA6Ly9hcHBzLmlkZW50cnVzdC5jb20vcm9vdHMv ZHN0cm9vdGNheDMucDdjMB8GA1UdIwQYMBaAFMSnsaR7LHH62+FLkHX/xBVghYkQ MFQGA1UdIARNMEswCAYGZ4EMAQIBMD8GCysGAQQBgt8TAQEBMDAwLgYIKwYBBQUH AgEWImh0dHA6Ly9jcHMucm9vdC14MS5sZXRzZW5jcnlwdC5vcmcwPAYDVR0fBDUw MzAxoC+gLYYraHR0cDovL2NybC5pZGVudHJ1c3QuY29tL0RTVFJPT1RDQVgzQ1JM LmNybDATBgNVHR4EDDAKoQgwBoIELm1pbDAdBgNVHQ4EFgQUqEpqYwR93brm0Tm3 pkVl7/Oo7KEwDQYJKoZIhvcNAQELBQADggEBANHIIkus7+MJiZZQsY14cCoBG1hd v0J20/FyWo5ppnfjL78S2k4s2GLRJ7iD9ZDKErndvbNFGcsW+9kKK/TnY21hp4Dd ITv8S9ZYQ7oaoqs7HwhEMY9sibED4aXw09xrJZTC9zK1uIfW6t5dHQjuOWv+HHoW ZnupyxpsEUlEaFb+/SCI4KCSBdAsYxAcsHYI5xxEI4LutHp6s3OT2FuO90WfdsIk 6q78OMSdn875bNjdBYAqxUp2/LEIHfDBkLoQz0hFJmwAbYahqKaLn73PAAm1X2kj f1w8DdnkabOLGeOVcj9LQ+s67vBykx4anTjURkbqZslUEUsn2k5xeua2zUk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw 7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ -----END CERTIFICATE-----
Verificando el Certificado SSL con Zimbra
Nos moveremos ahora a la carpeta donde tenemos todos los ficheros para operar más rápido, recordar /etc/letsencrypt/live/$domain y lanzaremos el siguiente comando cómo root:
root@zimbra86:/etc/letsencrypt/live/zimbra86.zimbra.io# /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem Verifying cert.pem against privkey.pem Certificate (cert.pem) and private key (privkey.pem) match. Valid Certificate: cert.pem: OK
Desplegar el Certificado SSL Let’s Encrypt SSL
Copiar la private key en el directorio adecuado de Zimbra
Antes de desplegar el Certificado SSL, debemos hacer este pequeño truco para copiar la privatekey que ha generado Let’s Encrypt en la ruta donde Zimbra guarda el SSL commercial:
cp /etc/letsencrypt/live/zimbra86.zimbra.io/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
Y ahora ya podemos lanzar el comando, cómo root en Zimbra 8.6, y como user zimbra desde Zimbra 8.7 en adelante, para instalar el Certificado SSL:
root@zimbra86:/etc/letsencrypt/live/zimbra86.zimbra.io# /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem chain.pem ** Verifying cert.pem against /opt/zimbra/ssl/zimbra/commercial/commercial.key Certificate (cert.pem) and private key (/opt/zimbra/ssl/zimbra/commercial/commercial.key) match. Valid Certificate: cert.pem: OK ** Copying cert.pem to /opt/zimbra/ssl/zimbra/commercial/commercial.crt ** Appending ca chain chain.pem to /opt/zimbra/ssl/zimbra/commercial/commercial.crt ** Importing certificate /opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt to CACERTS as zcs-user-commercial_ca...done. ** NOTE: mailboxd must be restarted in order to use the imported certificate. ** Saving server config key zimbraSSLCertificate...failed. ** Saving server config key zimbraSSLPrivateKey...failed. ** Installing mta certificate and key...done. ** Installing slapd certificate and key...done. ** Installing proxy certificate and key...done. ** Creating pkcs12 file /opt/zimbra/ssl/zimbra/jetty.pkcs12...done. ** Creating keystore file /opt/zimbra/mailboxd/etc/keystore...done. ** Installing CA to /opt/zimbra/conf/ca...done.
Y ya solamente nos queda reiniciar los servicios de Zimbra para que los cambios se apliquen correctamente y tengamos nuestro Certificado SSL
zmcontrol restart
Probando el nuevo Certificado SSL
El último paso es irnos a nuestro navegador preferido y abrir la URL de nuestro servidor Zimbra, para encontrarnos con el siempre agradable color verde en la URL, podemos hacer click en Certificate Information para ver el Certificado que protege el Servidor Zimbra:

Una vez hacemos click para ver más información acerca del Certificado SSL, veremos lo siguiente:

Solicitando Multi-SAN SSL Certificate y otros escenarios complejos
Let’s Encrypt nos permite muchas opciones diferentes, si queréis más información acerca de Multi-SAN, etc. lo mejor es dirigirse a la web oficial del proyecto.
Contenido adicional
- Manual de Usuario de Let’s Encrypt- https://letsencrypt.readthedocs.org/en/latest/using.html
- Web del Proyecto Oficial de Let’s Encrypt – https://letsencrypt.org/

El problema que veo es que para renovar tendras que parar otra vez el servicio, pegale un vistazo a como lo he automatizado en Debian, si puedes mapear un directorio en el puerto 80 (no hace falta el 443), lo puedes reutilizar.
https://blog.damia.net/2015/12/automatizacion-de-lets-encrypt-en-debian/
Luego le echo un vistazo, mi idea es crear un Script que lo renueve cada 89 dias con un cron, de esa manera te olvidas de problemas.
un saludo
Buscando sobre esto he visto que hay gente que habilita el proxy y redirige las peticiones a .well-known al servidor “standalone”. ¿se podría hacer con el proxy de zimbra? Al fin y al cabo es un nginx
Saludos,
Voy a investigar mas y comentaros.
Un saludo
Amigo Jorge antes que nada muchas felicidades por tan interesante sitio que me ha ayudado de mucho en mi andar con zimbra, te escribo pues tengo un problema que me esta creando un problema en mi trabajo, tengo zimbra 8.6 y tengo algunos usuario que ya no son trabajadores de mi centro laboral los mismos ya están eliminados del servidor zimbra, pero cuando inicio sección en el y voy a crear un nuevo correo y trato de escribir alguna de las cuentas de usuarios que ya no están el zimbra me las continua mostrando, espero por su atención y ayuda, un abraso
Adonis
Saludos Adonis,
Que raro, puede ser un problema de cache? No estoy seguro, intenta iniciar sesion como navegador anonimo, o en otro equipo, y prueba a hacer un zmcontrol restart para reiniciar los servicios de zimbra
Un saludo
Mi amigo sigue haciendo lo mismo
Tambien dejame contarte que yo hace un tiempo sin darme cuenta actualice el zimbra a la version network y antes tenia la comunity, crees q sea eso
Si estas usando Network Edition, tienes soporte oficial de zimbra, te recomiendo que contactes con ellos en https://support.zimbra.com
Un saludo
muchas gracias por el post, me ha resultado muy útil.
ahora, una consulta: en caso de tener un dominio y alias adicionales. por ej. mail.zimbra.com, imap.zimbra.com y smtp.zimbra.com
cómo habría que proceder para que el certificado también funcione en los alias?
Segui todo al pie de la letra y no consigo terminar el tutorial, ayuda por favor.
[root@mail mail.navesky.com]# /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem
** Verifying cert.pem against privkey.pem
Certificate (cert.pem) and private key (privkey.pem) match.
XXXXX ERROR: Invalid Certificate: cert.pem: C = US, O = Let’s Encrypt, CN = Let’s Encrypt Authority X1
error 2 at 1 depth lookup:unable to get issuer certificate
Este error parece ser a la hora de crear el fichero con el root y el CA, ese fichero puede estar erroneo, o tener un espacio indebido al final, etc. Intenta crearlo de nuevo y comentanos que tal.
Un saludo
Gracias Jorge, era como tu lo dijiste, un espacio, solucionado, funciona a la perfección.
Gracias!
Una consulta el tiempo de vida del certificado de cuanto es y de hay en adelante como seria la actualización.
A la espera de su grata respuesta.
Saludos David,
Puedes encontrar un Script que autorenueva el certificado aqui:
https://github.com/VojtechMyslivec/letsencrypt-zimbra o en otros links en github hay varios proyectos.
Un saludo
Muchas Gracias Jorge.. Excelente Post.
Hola Jorge,
Para comentarte que tu ayuda me sirvió para poder recibir finalmente los correos en mi servidor. Ahora tengo un problema con el certificado SSL. que no funciona (asi sea un self-signed o este de letsencrypt). Sigo los pasos descritos y todo se hace correctamente, pero el navegador siempre muestra una advertencia (y una tacha roja en chrome). Inclusive cuando hago un test desde ssllabs me da una calificación muy mala, como que no tuviera un certificado instando en mi sitio (aunque desde la interfaz de administración del zimbra si figura que hay un certificado, que caduca en 5 años (self-signed), o 3 meses cuando uso el de letsencrypt). Entonces, no veo por donde estará el problema, por lo que recurro a ti. Gracias
Jorge, el problema ya está arreglado… Era un tema de dominio y subdominio. El certificado es válido para el subdominio mail.dominiodeprueba.com pero no para dominiodeprueba.com. Gracias desde Peru!
Hola Jorge. Esta es la primera vez que instalo un servidor en Zimbra, así que aún tengo mucho que aprender. Mi servidor está funcionando prefecto, con mailscanner, mailwatch y un certificado de letsencrypt, pero lo implemente usando un dominio de prueba, y ahora para pasarlo a producción, debo cambiar este dominio por el adecuado. He visto cono hacer el procedimiento en la web de Zimbra, pero quiero saber si es aconsejable hacerlo así, y si funcionaria adecuadamente después de este cambio (obviando el mailscanner/mailwatch). Y también preguntarte sobre el certificado… Removeria el actual y crearía otro que encaje con el nuevo dominio? O hay otra forma? Gracias por tu ayuda…
Saludos Italo,
Lo mejor es que crees un nuevo dominio, puedes usar el dominio de prueba para “operar” Zimbra no pasa nada. Tambien puedes cambiar el nombre del servidor de Zimbra, pero al final el primer dominio que tienes en Zimbra seguira igual.
No estoy muy seguro del escenario entero para darte el mejor consejo 🙂 Si puedes explicanoslo mejor.
Un saludo
Gracias por tu ayuda Jorge. Me explico mejor: En la empresa estamos mudando nuestros servidores hacia amazon, y tengo actualmente un servidor de correo propio con postfix, dovecot, mailwatch y mailscanner, funcionando desde hace años. Entonces, para eso instalé en una instancia ec2 el zimbra con mailscanner/mailwatch y ssl, pero utilizando un dominio gratuito .tk que tengo. En dicho dominio configure mis dns con la ip publica de la instancia y empecé a hacer mis pruebas de envío y recepción de correos, así como las pruebas del antispam. Todo funcionó correctamente, con algo de esfuerzo. Entonces, ahora debo dar de baja mi servidor de correos local y utilizar mi instancia ec2 para que sea el nuevo servidor, pero lógicamente manteniendo mi nombre de dominio actual. Por esa razón, es que deseo cambiar mi nombre de host y dominio en el servidor de prueba, para que encaje con mi nombre de host y dominio reales, de la empresa. Entonces te preguntaba si haciendo este cambio en el zimbra no tendré mayor problema, o si debo reinstalar nuevamente todo en la instancia, utilizando está vez mi nombre de dominio real. Después de eso, lógicamente cambiar mis dns con la ip publica de la instancia. Y por último, si puedo hacer este cambio en el zimbra y evitarme todo el trabajo de reinstalación, como quedaría mi certificado ssl actual? Puedo eliminarlo y colocar uno nuevo, está vez con el nuevo nombre de dominio?.
Me imagino que a estas alturas ya habras migrado tu servidor Zimbra pero yo tambien e migrado Zimbras usando el dominio que uso en produccion sin problemas.
Saludos desde Peru
Hola Jorge, que fqdn tendria que colocar si mi servidor zimbra tiene multiples dominios.
por ej
mail.prueba1.com.ar
mail.pruebaserver.com.ar
Saludos
Saludos Emiliano, en la web de Letsencrypt tienes mas ejemplos de como crear un Certificado Multi-SAN. Un saludo
Estimado Jorge, una pregunta; tengo un servidor de correos en lo cual le configure 2 dominios uno para backup el principal es mail.midominio.com y el segundo mail1.midominio.com el primero ya tiene el certificado pero para ponerle en el segundo mail1.midominio.com sera seguir la misma instalacion pero a la hora del pone el dominio pongo mail1.midominio.com o se configura diferente.
Espero su gentil respuesta.
Saludos David,
Puedes hacer dos cosas, o crear uno nuevo, o en el que creaste añadir un SAN, que seria el mail1.dominio.com En la web de Let’s Encrypt esta toda la información.
Un saludo
Eso es lo que estoy buscando, pero no encuentro =(
Aqui tienes algo mas de informacion – https://community.letsencrypt.org/t/multi-domain-san-certificate-and-webroot-auth/2493 y aquí también https://groups.google.com/a/letsencrypt.org/forum/#!topic/ca-dev/ira3Qv0KvCE
Excelente Jorge,
Gracias, ya valido.
Genere los archivos para renovar mi ssl y me arroja este error
Can’t find private key privkey1.pem
Que pasos estas siguiendo exactamente, renovar un Let’s Encrypt?
Un saludo
Actualizar a 8.7 jorge
Ayuda por favor tengo problemas al configurar Zimbra 8.7 DKIM en Centos 7.
Saludos Felix,
Sin mas información es complicado ayudarte, ademas este articulo de blog no es dedicado a DKIM.
Un saludo
He isntalado el certificado y de maravilla en el sitio de web de zimbra pero cuando intento descargar el correo por outlook.. me dice que el certificado no se puede comprobar.. el nombre de entidad de seguridad destino es incorrecto
corrijo ya me funciono mil gracias jorge.. muy utiles tus articulos sobre zimbra.. felicidades..
Muy buenas noticias Cesar
Un saludo
Buenas me sale este error, ya revise todos los espacios y todo quiesiera saber que hago mal, nose si es la parte donde hay que entrar en la pagina esa donde ponemos el root ca que seria en el archivo chain.pem abajo hay que agregarle ese cone begin y end asi como muestran, hago todo como esta en el tutorial pero no me funciona
** Verifying cert.pem against privkey.pem
Certificate (cert.pem) and private key (privkey.pem) match.
XXXXX ERROR: Invalid Certificate: cert.pem: CN = aranduinformatica.net
error 9 at 0 depth lookup:certificate is not yet valid
Saludos Jose,
El CN con el que has generado el certificado es muy raro, por lo general un cn suele ser mail.aranduinformatica.net o correo.aranduinformatica.net pero no aranduinformatica.net a secas, prueba a generar de nuevo todo con un CN valido, que debe ser el mismo FQDN que tus usuarios van a usar para acceder a tu zimbra.
A su vez asegúrate que creas el fichero de CA intermedio correctamente, es sencillo.
un saludo
ah ya entiendo muchas gracias jorge pense que no se le agregaba el mail. es por eso que le saque ese prefijo voy a probar y te cuento como me va
Buenas Jorge para aclarar mejor mi problema y dejar un aporte para los compañeros mi problema fue en la creacion del certificado tenia la hora del sistema mal puesta por lo tanto me daba error en el cerficado al cambiar la hora a la correcta se desarrollo sin problema la verificacion
Saludos
Muchas gracias Jorge por tus aportes en este Blog, acabo de instalar el certificado en Zimbra 8.6 y me salio al 100% siguiendo tus pasos.
Buenas alguien ya utilizo el script para renovar los certificados para saber que tendriamos que cambiar en el script para poder usarlo, tengo una duda tambien yo tengo el certificado creado con dos dominios me servira el script para eso, como lo uso?
Estimado Jorge, muchas gracias por el post, lo he probado en Zimbra 8.7.1 con un solo dominio.
Veo que el certificado expira en 3 meses, nos podrías indicar como renovarlo manualmente.
Gracias nuevamente.
Instalale el certificado letsencrypt funciona, pero luego de tres meses quise renovar el certificado no me permite renovar el certificado de letsencrypt, alguna sugerencia por favor
Saludos Felix,
Que pasos estas siguiendo para renovar el SSL?
Un saludo
Hola Jorge te comento que mi Zimbra fue instalado como correo.dominio.com pero el registro A que tengo y como se conectan todos mis usuarios via Webmail y al servidor SMTP y IMAP que apuntan es host.dominio.com. Por lo cual cuando genero mi certificado para el FQDN host.dominio.com y lo instalo no me da problemas pero cuando hago un zmcontrol restart me sale un error del LDAP master y es debido a que el certificado esta con host.dominio.com pero mi Zimbra lo tiene como correo.dominio.com, hay alguna manera de cambiar el nombre en mi Zimbra por host.dominio.com o sino en todo caso como puedo hacer roolback ya que por algun razon a todos mis usuarios que usan su correo por su celular les esta saliendo error de certificado.
Saludos desde Peru
Saludos Martin,
Puedes usar el comando de Let’s Encrypt para generar un SSL con varios SAN, subject alt names, asi mira:
./letsencrypt-auto certonly --standalone -d host.dominio.com -d mail.dominio.comLuego todo lo demás pasos igual
Un saludo
Muchas Gracias por la ayuda Jorge, ejecute el comando y me funciono.
Saludos
Hola Jorge,
Desde que colgaste el post he usado siempre ssl de letsencrypt en mis servidores de Zimbra y me va perfecto el único problema son las renovaciones, siempre que hago la renovación antes de caducar todo sale bien pero en los dispositivos cliente sobre todo en los iOS salta un aviso que el certificado ha cambiado y que no es válido.
¿hay alguna forma de hacerlo bien?
Muchas gracias!
Saludos, no entiendo porque te da error, si el SSL esta bien renovado, no debería de darte ese error, has mirado en el proyecto github de letsencrypt para ver si esta incidencia ya esta reportada?
Un saludo
Hola Jorge,
Gracias por contestar. Yo creo que no es tanto un tema de Letsencrytp, creo que es más del método de renovación. Tengo la sensación que en vez de renovar cada vez que lo hago creo un certificado nuevo y aunque es para el mismo nombre de dominio los dispositivos se quejan.
Hoy si me da tiempo voy a hacer paso por paso documentado una renovación y lo cuelgo aquí para compartirlo a ver si puedo mejorar mi proceso. Seguro que me estoy equivocando en algún paso.
Gracias!
Umh, voy a ojear a ver si encuentro algo.
Un saludo
Estimado Jorge
Muchas gracias por este útil tutorial, lo he usado múltiples veces en varios dominios, pero actualmente lo configure en un Zimbra 7 en CentOS 5 , siguiendo esta página (https://hoover.gplrank.info/?p=704) debido a un problema con el python de esta versión de CentOS. Una vez instalado el certificado el navegador no me lo reconoce, inclusive he revisado el certificado en Firefox y no difiere en nada de los que utilizo en los otros servidores, revisé también con el comando de zimbra (cambie el original por mail.mio.com)
/opt/zimbra/bin/zmcertmgr viewdeployedcrt all
::service mta::
notBefore=Mar 23 00:44:00 2017 GMT
notAfter=Jun 21 00:44:00 2017 GMT
subject= /CN=mail.mio.com
issuer= /C=US/O=Let’s Encrypt/CN=Let’s Encrypt Authority X3
SubjectAltName= mail.mio.com
::service proxy::
notBefore=Mar 23 00:44:00 2017 GMT
notAfter=Jun 21 00:44:00 2017 GMT
subject= /CN=mail.mio.com
issuer= /C=US/O=Let’s Encrypt/CN=Let’s Encrypt Authority X3
SubjectAltName= mail.mio.com
::service mailboxd::
notBefore=Mar 23 00:44:00 2017 GMT
notAfter=Jun 21 00:44:00 2017 GMT
subject= /CN=mail.mio.com
issuer= /C=US/O=Let’s Encrypt/CN=Let’s Encrypt Authority X3
SubjectAltName= mail.mio.com
::service ldap::
notBefore=Mar 23 00:44:00 2017 GMT
notAfter=Jun 21 00:44:00 2017 GMT
subject= /CN=mail.mio.com
issuer= /C=US/O=Let’s Encrypt/CN=Let’s Encrypt Authority X3
SubjectAltName= mail.mio.com
Así que no se que debo hacer adicional o si tienes alguna recomendación al respecto, muchas gracias y saludos desde Ecuador.
Saludos Darwin,
Es probable que no funcione en versiones tan antiguas y obsoletas de Zimbra y de CentOS, no puedo ayudar mucho ya que ninguno de los dos productos tienen ya soporte, un saludo!
Felicidades jorge excelentes indicaciones necesito ayuda para instalar un certificado ssl de godaddy en zimbra soy nuevo rn esto seria de gran ayuda aprender a realizar esto.
Hola Jorge,
Instale el certificado de Lets Ecrypt hace más de dos meses y ahora toca renovarlo. En su momento seguí los pasos que indicas aquí sin problemas y mi duda es muy sencilla.
¿Para la renovación hay que repetir el proceso simplemente? Mi duda viene porque en ningún sitio veo la opción de renovación y no se si lo que haría sería crear un nuevo certificado con los problemas que pueda tener.
Hola, estoy siguiendo tu tutotial pero cuando termino y quiero arrancar de nuevo zmproxyctl start me aparece el mensaje: “Error: nginx is not installed” cuando estaba funcionando bien.
Agradecería puedan ayudarme con esto.
Estimado Jorge tu ayuda al ejecutar me saca el siguiente error como lo solvento???
# /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem chain.pe
zmcertmgr: ERROR: no longer runs as root!
Saludos,
Mueve los ficheros a /tmp y dales privilegios de lectura a todos, conéctate como user zimbra, recuerda su – zimbra, y lanza los mismos comandos desde /tmp.
Un saludo
Estimados tengo una consulta al utilizar este tipo de certificado ssl Let’s Encrypt puede un servidor de correo rechazar tu correo por no ser un certificado de una identidad certificadora como go trust go daddy etc.
debido a que últimamente he recibido rebotes de cual no tengo respuesta debido a que mi dominio no esta en listas negras como para que me rechazen mis correos
: host xxxx.xxxx[xxxxxx]
said: 550 Denied by policy (in reply to end of DATA command)
atento a sus comentarios
se despide CFV
Saludos Cesar,
No sabemos que policy tienen, pero asegúrate que no es por tu reputación, o dominio, etc.
Que reputación tienes en senderbase?
Let’sencrypt es una entidad segura como es geotrust, etc, ya que ACME est’a al mismo nivel que ellos.
Un saludo
Muchas gracias Jorge por tu pronta respuesta, revise mi reputación en tanto como la ip de envió de mis correos y como los dominios que envían correos desde ese servidor y la información de Senderbase me indica que mi reputación es buena con un volumen de correo de 2.4
Buenas tardes Jorge. cuando intento instalar el certificado me solicita la contraseña para Zimbra, le doy la contraseña de admin pero me dice: password for zimbra: Lo sentimos, vuelva intentarlo. LE agradezco si me puede orientar. Gracias
Excelente Post Jorge una pregunta, para renovar el certificado cada tres meses se debe realizar los mismo pasos ?
Saludos, tienes una opcion para renovar, tambien algunos proyectos para hacerlo automaticamente, mira en los foros de zimbra que hay varios scripts 🙂
Hola Jorge, muchas gracias por el aporte, pero queria comentarte que el link https://www.identrust.com/certificates/trustid/root-download-x3.html
ya no esta disponible tendras otra opción que tu recomiendes para descagar
Saludos, usa este – https://letsencrypt.org/certs/isrgrootx1.pem.txt
Buenas Jorge, muy bueno tu blog, he seguido tus pasos en toda la instalación de zimbra, lo tengo ya funcionando con dos dominios, uno ya certificado con letsencrypt. Pero al querer generar otro certificado ssl para un nuevo dominio he tenido el siguiente inconveniente:
[root@mail letsencrypt]# ./letsencrypt-auto certonly
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Error while running apachectl configtest.
httpd: Could not open configuration file /opt/zimbra/common/conf/httpd.conf: No such file or directory
Error while running nginx -c /etc/nginx/nginx.conf -t.
nginx: [emerg] open() “/etc/nginx/nginx.conf” failed (2: No such file or directory)
nginx: configuration file /etc/nginx/nginx.conf test failed
How would you like to authenticate with the ACME CA?
1: Apache Web Server plugin (apache) [Misconfigured]
2: Nginx Web Server plugin (nginx) [Misconfigured]
3: Spin up a temporary webserver (standalone)
4: Place files in webroot directory (webroot)
Como puedo solucionarlo?
Hola Jorge,
He estado leyendo todos los comentarios pero veo que a nadie más le pasa lo que a mi.
Cuando intento crear el certificado me da error de DNS.
Utilizo Centos 7 virtualizado con el hypervisor de Vmware gratuito.
La version de zimbra es la opensource.
Tengo bind instalado en la propia máquina y el host mail.xxxx.es apunta a si mismo.
La instalación de zimbra me ha ido bien, parece que funciona todo bien, pero me da el problema de los certificados, por eso quería instalar letsencrypt.
Pego lo que me sale:
He tapado los datos del dominio y la IP.
Parece que intenta buscar información en esa ruta:
http://mail.xxxx.es/.well-known/acme-challenge/SLYkvmTdi1KzCMB9b1MExgCI193gMt6p5nGiwm1gNUY
Pero no encuentro .well-known. Puede ser eso?
Pego el mensaje que da al intentar crearlo:
How would you like to authenticate with the ACME CA?
1: Spin up a temporary webserver (standalone)
2: Place files in webroot directory (webroot)
Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel): 1
Plugins selected: Authenticator standalone, Installer None
Please enter in your domain name(s) (comma and/or space separated) (Enter ‘c’
to cancel): mail.xxxx.es
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for mail.xxxx.es
Waiting for verification…
Challenge failed for domain mail.xxxx.es
http-01 challenge for mail.xxxx.es
Cleaning up challenges
Some challenges have failed.
IMPORTANT NOTES:
– The following errors were reported by the server:
Domain: mail.xxxx.es
Type: unauthorized
Detail: Invalid response from
http://mail.xxxx.es/.well-known/acme-challenge/SLYkvmTdi1KzCMB9b1MExgCI193gMt6p5nGiwm1gNUY
[AA.AA.AA.AA]: “\n\n404 Not
Found\n\n
Not Found
\n<p”
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.
Saludos Jorge,
Gracias por todos los aportes que haces a los demás. En el articulo comentas que se puede generar desde otro servidor que no tiene que ser necesariamente Zimbra, tienes alguna info que sirva para hacerlo con ese metodo?
por otra parte, tengo zimbra network edition, pero no se de que forma acceder al soporte, en el portal pide un user y password, pero no indica como abrir una cuenta de customer.
Por ultimo, es necesario tener un wildcard si tengo zimbra distribuido en varios servers?
Hola Jorge, antes que nada como siempre es muy preciso tu blog. Tengo zimbra 8.0.2 con un certi autofirmado y últimamente en dispositivos tipo Iphone me aparece a cada rato el mensaje de certificado no fiable para el nombre fqdn de mi server. Instalando un certificado como lo especificaste en este post solucionaría el problema ?. Gracias por todo. Saludos
Saludos Ivan,
Te recomiendo subir a algo mas actualizado y soportado por Zimbra, no se si es la version 8.7.x o 8.8.x pero 8.0.2 es muy, muy vieja. Seguro que muchos problemas vienen por ahí. Un saludo
Hola Jorge que duracion tiene el certificado??
Saludos, por defecto 90 dias
Estimado Jorge aprovechar saludarte, tengo un problema con mi servidor Zimbra, el problema radica cuando se ingresa a webmail de cualquier navegador no accede, el proceso se queda CARGANDO todo el tiempo y eso es válido para ordenadores con Windows y Linux. Pero he comprobando con celulares con SO Android y si se logra ingresa. Tenía instalado un certificado SSL instalado y ya venció, he comprobado todos los procesos y todo al parecer marcha bien, la verdad no se q pueda ser, a ver si me puedes echar una mano.
Saludos Jerdy,
Si, tienes un ransomware en tu servidor, ha sido comprometido, sigue estos pasos – https://www.jorgedelacruz.es/2019/05/28/zimbra-resolver-zmcat-problema-de-webmail-en-blanco-error-al-adjuntar-ficheros-ajax-webmail-not-loading-cve-2019-9670/ lo mejor es desplegar nuevo server y mover los mailboxes con zextras migration
Buenas noches, aca dejo un método mas sencillo https://tecnowarp.blogspot.com/2019/06/como-instalar-lets-encrypt-para-zimbra.html
Hola Jorge, buen día. Tenemos un Zimbra 8.0.3, puedo utilizar este instructivo para instalar el lets encrypt o es para versiones mas nuevas? Gracias.
hola Jorge, trabajo en una facultad publica en Uruguay y estoy pensando en instalar un certificado de LetsEncrypt en nuestro servidor Zimbra el cual es la version 6.0.16. Estamos pensando tambien en migrar el zimbra a una version mas moderna.
¿Es aconsejable migrar primero el Zimbra y luego instalar el certificado o a la inversa?
¿Las instrucciones de instalacion del certificado son las mismas para versiones como la 6.x de Zimbra.? Pregunto por la confusion sobre el tema zimbraproxy si estamos hablando del mismo componente en las versioes 6.x y 8.x. Si es nginx o jetty.
Segun tu experiencia ¿cual es la forma menos agresiva/incremental de migrar de una version de Zimbra a la otra?
Muchas Gracias
Mauricio
Saludos Mauricio,
Lo mejor es que migres primero usando Zextras Migration, que es gratis, de ese server tan viejo a un Zimbra 8.7.11 con último parche, por lo menos. Luego ya usar Let’s Encrypt. Un saludo
Sorry, no hay caso, no dudo que Jorge sepa, pero no se explica bien. Trato de seguir el paso a paso, pero las cajas de código ni siquiera dejar copiar el texto sin ese bendito menú drop down … en fin.
Si alguien llego sufriendo por acá y tiene zimbra 8, acá dejo un tutorial bien explicado (excepto por la parte de fusionar los hash…):
https://computingforgeeks.com/secure-zimbra-mail-server-with-letsencrypt-ssl-certificate/
Gracias por el feedback, corregido el tema de las cajitas de codigo. El tutorial sigue funcionando bien, ¡aunque tiene 5 AÑOS! En algún momento lo actualizaré con Zimbra 9, pero como sigue todo yendo bien ni me he molestado. Los pasos en Inglés están bien, para aquellos que lo dominen, no todo el mundo le gusta, o puede, seguir tutoriales en Inglés 🙂
El tutorial esta ideal, pero con las nuevas instalaciones de Zimbra desde el 1ero de Octubre de 2021 no es posible hacerlo funcionar por la actualizacion aplicada por Letsencrypt … es posible que lo actualizes Jorge Por favor??
Muchas gracias de antemano
Hola Jorge, che que maldición esto de los certificados Letsencrypt en zimbra. Una pregunta para que utiliza estos certificados zimbra? Lo pregunto por lo siguiente si es solo para tener https:// para mi es mas sencillo poner el server de zimbra detrás de un servidor nginx que hace de proxy inverso y que ya lo tenemos configurados con todos nuestros servidores. Se utiliza los certificados de Letsencrypt para algo especifico relacionado con el correo?
La verdad es que me canse de leer tutoriales incluso la documentación de zimbra (https://wiki.zimbra.com/wiki/Installing_a_LetsEncrypt_SSL_Certificate) no me deja instalarlos.
Saludos
Nahuel
Que tal Jorge, me aparece el siguiente error, tendrás alguna idea del como se soluciona, cabe mencionar que todos los pasos previos corren sin problema, la generación del certificado con Let’s encrypt, la validación del certificado antes del deployment.
** Verifying ‘/etc/letsencrypt/live/mail.mi-dominio/cert.pem’ against ‘/opt/zimbra/ssl/zimbra/commercial/commercial.key’
Certificate ‘/etc/letsencrypt/live/mail.mi-dominio/cert.pem’ and private key ‘/opt/zimbra/ssl/zimbra/commercial/commercial.key’ match.
** Verifying ‘/etc/letsencrypt/live/mail.mi-dominio/cert.pem’ against ‘/etc/letsencrypt/live/mail.mi-dominio/chain.pem’
Valid certificate chain: /etc/letsencrypt/live/mail.mi-dominio/cert.pem: OK
** Copying ‘/etc/letsencrypt/live/mail.mi-dominio/cert.pem’ to ‘/opt/zimbra/ssl/zimbra/commercial/commercial.crt’
** Copying ‘/etc/letsencrypt/live/mail.mi-dominio/chain.pem’ to ‘/opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt’
** Appending ca chain ‘/etc/letsencrypt/live/mail.mi-dominio/chain.pem’ to ‘/opt/zimbra/ssl/zimbra/commercial/commercial.crt’
** Importing cert ‘/opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt’ as ‘zcs-user-commercial_ca’ into cacerts ‘/opt/zimbra/common/lib/jvm/java/lib/security/cacerts’
** NOTE: restart mailboxd to use the imported certificate.
** Saving config key ‘zimbraSSLCertificate’ via zmprov modifyServer mail.mi-dominio…ok
** Saving config key ‘zimbraSSLPrivateKey’ via zmprov modifyServer mail.mi-dominio…ok
** Installing imapd certificate ‘/opt/zimbra/conf/imapd.crt’ and key ‘/opt/zimbra/conf/imapd.key’
** Copying ‘/opt/zimbra/ssl/zimbra/commercial/commercial.crt’ to ‘/opt/zimbra/conf/imapd.crt’
** Copying ‘/opt/zimbra/ssl/zimbra/commercial/commercial.key’ to ‘/opt/zimbra/conf/imapd.key’
** Creating file ‘/opt/zimbra/ssl/zimbra/jetty.pkcs12’
ERROR: openssl pkcs12 export to ‘/opt/zimbra/ssl/zimbra/jetty.pkcs12’ failed(1): —–> Aquí el error…
pkcs12: Unrecognized flag propquery
pkcs12: Use -help for summary.