Saludos amigos, con este post vamos a conseguir firmar y lo más importante, encriptar, nuestros mensajes desde nuestro Webmail en Zimbra. Añadiendo una seguridad extra, completamente necesaria en los días que corren. De esta manera vamos a poder enviar Emails encriptados a cualquier destinatario y a la inversa, consiguiendo una comunicación segura, y encriptada. Pero antes de todo vamos por pasos.
¿Qué es PGP?
PGP (Pretty Good Privacy) es el protocolo que nos permite firmar digitalmente y encriptar mensajes de correo electrónico (emails). Funciona end-to-end, de esta forma los mensajes son encriptados en el ordenador que lo envía, y son desencriptados por el ordenador que lo recibe. No es posible un ataque de man-in-te-middle para descifrar el contenido del mensaje. Esto excluye las líneas de Asunto, De y Para, que viajan en texto plano, pero seguimos teniendo el contenido del mensaje cifrado, que es lo importante.
Se que la explicación puede parecer confusa, así que he preparado una ilustración que puede ayudarnos a comprender mejor cómo funciona PGP.
Zimlet de OpenPGP
Lo mejor de Zimbra Collaboration Suite, aparte de que es un producto súblime, es la comunidad. Ninguna otra plataforma de correo tiene una comunidad tan grande como Zimbra, y esto se nota en la cantidad y calidad de los Zimlets que desarrolla la Comunidad y empresas.
En este caso el Zimlet de OpenPGP se ha desarrollado mediante Crowdfunding, y se pedía una cantidad de 600€ para el desarrollo. ¿El resultado?, este magnífico Zimlet que hoy trataremos.
Este Zimlet ha sido testeado correctamente en los siguientes navegadores:
- Windows Internet Explorer 11, Google Chrome, Chromium, Firefox
- Linux, Google Chrome, Chromium, Firefox, Iceweasel
- OSX, Safari
Descarga e instalación
El Zimlet, aunque tuvo un precio de desarrollo, es completamente gratuito usarlo e instalarlo, sin licencias adicionales, ni nada por el estilo. Pinchando en la imagen, podremos ir a la URL del Zimlet.
Una vez descargado, nos iremos hasta nuestra Consola de Administración Zimbra, para realizar la instalación del Zimlet.
Iremos a la opción Configuración del Submenú principal.
Iremos hasta Zinlets y pulsaremos arriba a la izquierda Implementar
Seleccionaremos el fichero que nos hemos descargado de la web oficial del Zimlet, y marcaremos la opción de Limpiar caché.
Si todo va bien, veremos el mensaje de que se ha instalado todo correctamente.
Una vez instalado, debemos asegurarnos que en el COS de nuestros usuarios, está activado. O en el COS que queremos que tenga la opción de PGP, que quizás no queremos que sean todos los usuarios.
En mi caso el COS es el default y el Zimlet está activo.
Uso y manejo de Zimlet OpenPGP
Iremos ahora hasta nuestra sesión normal de Webmail, y en la sección de Zimlets, ya veremos OpenPGP, si pulsamos Botón derecho veremos varias opciones:
- Sign message: Nos permite firmar digitalmente un mensaje que creemos. De esta firma podemos verificar, o nuestro remitente, que el correo proviene 100% seguro del remitente que espera. Al ser firmado con nuestra private key.
- Encrypt message: La opción más interesante, podremos enviar mensajes completamente encriptados a nuestros contactos que tengamos añadidas sus Public keys, y jamás podrá ser desencriptado sin la Private Key del remitente a quién se lo mandamos.
- Manage public keys: Aquí tendremos la lista con las Public keys de nuestros contactos, es aquí donde tenemos que añadir a los diferentes contactos que queremos enviar correos encriptados.
- Generate key pair: Desde esta opción podremos generar un nuevo par de Private key/Public key para guardarlo en un lugar seguro, aparte, deberemos enviar la Public key que generemos a nuestros contactos para que puedan enviarnos Correos encriptados.
- About: Acerca del Zimlet y desarrolladores.
Generate Key pair
Ests es el primer paso para empezar a operar con nuestro Zimlet, crearemos un conjunto de Private Key y Public Key que guardaremos a buen recaudo para usarlo en posteriores pasos. La creación es muy sencilla.
Introduciremos nuestro User ID, nuestra pass y la key length, soporta 2048 y 4096 también. Recomiendo introducir un email válido en el User ID, de esta forma cuando demos la Public Key a otro usuario que use este Zimlet, podrá enviarnos el correo perfectamente.
Lo más importante es la Public key, es la que daremos a usuarios externos que quieran enviarnos correos encriptados.
Sign Message (Firmar mensaje)
Seleccionaremos la primera opción del menú
Escribiremos nuestro mensaje firmado digitalmente, para ello nos solicitará nuestra Private key y la contraseña, e incluiremos el mensaje que queremos firmar digitalmente.
Posteriormente nos aparecerá un mensaje tradicional de Zimbra listo para enviar, donde podemos ver nuestro mensaje Firmado digitalmente y la clave pública.
En mi caso estoy enviándome los mensajes a mí mismo, pero esto es lo que vería el usuario al que le llegara el mensaje firmado digitalmente.
Si nos han enviado un mensaje firmado digitalmente, y queremos comprobar su veracidad (si está bien firmado), podemos hacerlo también, arrastramos el mensaje que queremos comprobar si está bien firmado hacía el icono del Zimlet OpenPGP
Y nos aparecerá un pequeño banner arriba indicando si está firmado correctamente 
Manage Public Keys (Nuestros contactos)
En esta opción es donde guardamos las diferentes Public Keys que nos den los usuarios a los que tenemos que enviarles correos encriptados. Por lo general suelen ser pocos, pero por si acaso este Zimlet soporta hasta 30 Public keys (contactos) diferentes. Más que de sobra.
En cada slot, podremos pegar la Public key que nos hayan pasado, para poder enviar correos encriptados en siguientes pasos.
Encrypt message
La opción estrella, enviar correos encriptados desde nuestro navegador, para ello pulsaremos la opción de Encrypt message.
Seleccionaremos el contacto adecuado de nuestra lista de Public Keys, anteriormente mencionada, y escribiremos el texto que va ir perfectamente encriptado y seguro.
Esto es lo que veremos una vez hemos terminado en el paso anterior, recordemos que ni el Para, ni el De, ni el asunto va encriptado, asi que recomiendo no introducir información sensible. 
Ejemplo de lo que el usuario recibiría, recibe un mensaje que viene completamente encriptado, donde no se puede leer nada.
Lo arrastramos hasta el Zimlet de OpenPGP para poderlo desencriptar.
En este paso nos solicitará nuestra Private key y nuestra password, ya que el mensaje que nos han enviado han usado para encriptarlo nuestra Public key.
Y voilá, podremos ver el contenido del mensaje desencriptado, pudiendo ser una nota personal, un dato bancario, un dato sensible, etc.
Conclusión
Con este Zimlet ganamos tranquilidad y seguridad, podemos encriptar mensajes críticos y sobre todo, estar seguros frente a una posible intervención indebida del mensaje. Además podemos usarlo desde cualquier parte del planeta, conectandonos a nuestro Zimbra web client.
Las Public keys y las private keys son guardadas en la caché de Zimbra para nuestra comodidad, por tanto hasta que no hagamos log out del Cliente web, permanecerán en la memoria.
La Comunidad da un paso importante gracias a este Zimlet, posicionando a Zimbra como uno de los Servidores de Correo más seguros y ahora con privacidad extra. Ni Outlook 365, ni ningún OWA (Exchange 2013, 2010, 2007) Tiene esta funcionalidad. A nivel de cliente de correo, existe PGP para cualquier aplicación de escritorio, pero integrado en el propio Webmail, Zimbra una vez más vuelve a ser líder en este tipo de integraciones.
Extra – Protonmail
Hace unos días leía acerca de Protonmail, una opción de correo electrónico que se había posicionado como referente en seguridad usando PGP para todos sus correos electrónicos, y además respondiendo a una interfaz muy ligera y compatible con cualquier dispositivo. Bien amigos, hoy podemos decir que Zimbra tiene todo lo que Protonmail ofrece, con la seguridad extra de que Zimbra lo podemos alojar en nuestro CPD, ganando en seguridad y tranquilidad.
Links sobre Protonmail
- Forbes – http://www.forbes.com/sites/hollieslade/2014/05/19/the-only-email-system-the-nsa-cant-access/
- wwwhatsnew – http://wwwhatsnew.com/2014/05/18/protonmail-la-alternativa-a-lavabit-creada-por-el-cern/
- Fayerwayer – http://www.fayerwayer.com/2014/05/protonmail-el-correo-seguro-desarrollado-en-el-cern/









Lo vi hace unas semanas y me parecio de interés.
Muchas gracias por el post. Lo voy ha probar ahora mismo.
Saludos
Estúpendo Alberto, espero tú feedback 🙂
Un saludo
Muy interesante el post como siempre, no se si llegamos a hablar de esto en linked o en algun otro lado, la verdad es que me suena.
Por si acaso, solo un apunte que hacer, proton mail tiene una clave de autenticacion y otra de encriptado de buzon.
El almacenamiento de emails en protonmail es cifrado con esa key de encriptado de buzon que “supuestamente” solo tiene el usuario, sin ella no pueden leerse los emails ni por el admin del sistema ni los procesos del servidor, el contenido es “teoricamente indescrifrable”
Aunque cifraramos la particion de datos de zimbra con lvm +cifrado, disk cryptor, veracrypt o tomb o algo parecido, la configuracion sera igual para todos los users, no hay un cifrado por buzon con una key “per user” como en el caso de protonmail.
Protonmail cifra todo el buzon, mientras que si usas PGP el mensaje lo generas cifrado solo si usas PGP, p.e. con protonmail no es necesario cifrar mensajes entre usuarios de un mismo dominio si el acceso al servidor se hace con medios cifrados y estos se podrían alojar en buzones cifrados.
Esto sigue siendo una asignatura pendiente que podría ser muy interesante implentar a futuro…
Gracias por el post, saludos
Hola Jorge,
hoy estamos implementando el zimlet el cual es genial , firma y cifra pero en outlook no aparece como firmado si no en el cuerpo del mensaje todas las cabeceras openpgp , no se si eso esta correcto o no , no he encontrado informacion al respecto tienes alguna idea
gracias y seguimos tu blog en todas nuestras soluciones a problemas
saludos
Saludos mi estimado excelente las informaciones que ofrecen sobre bondades y actualizaciones en zimbra, le indico que intente hacer esto con un servidor zimbra que tenemos en produccion con pocas cuentas activas y el mismo al intentar cargar el archivo del zimlet supuestamente lo carga todo mas esto no parece cierto ya que lanza un error http 413 indicando la falla en la carga. Si podria indicarme luces sobre las posibles causas del mismo estaria completamente agradecido.
Saludos Alfredo, que version de Zimbra estas usando?
un saludo
Interesante articulo Jorge, estoy trabajando con una plataforma pequeña de Zimbra 7 con cliente Thunderbird y quisiera implementar un servidor local de Zimlet de OpenPGP para subir las claves públicas de los usuarios que así lo requieran.
Tienes algún articulo o instructivo que me pueda guiar….. muchas gracias por tus aportes, de verdad son muy útiles
Buenas tardes gracias por suplir estas soluciones.; sin embargo estoy utilizando la version 8.6 y me da este error: Zimbra description not found: pgp-zimblet-stable.xml
Gracias por la información
Tengo una consulta si existe este plugins para zimbra desktop?
Gracias
Saludos Nathaniel,
No creo que exista nada similar, lo mas parecido puede ser usar S/MIME en Outlook, y algunas otras alternativas de clientes que hay que usan PGP tambien, pero nada para ZDesktop. Un saludo
Hola Jorge, como siempre excelente tutorial, estoy trabajando con zimbra 8.8.12 open, y cuando quiero implementar el zimlet me tira error, que podrá ser muchas gracias.
Saludos Homero,
No estoy seguro, no he probado este zimlet desde hace bastante tiempo, has mirado a ver si hay una versión mas actualizada en github?
hola jorge, queria consultarte lo siguiente desde hace unos meses impletemtamos zimbra en una organizacion y todo trabaja muy bien, pero se nos esta presentando algo con el openpgp que cada vez que un usuario nos envia un correo y ya tenemos cargada su llave nos pide nuevamente importarla. es normal en zimbra que realice esta tarea o hay alguna forma que no se realice la importacion de nuevo si ya esta importada esa llave