¿Estás visitando desde ?
Ingresá a Linware ⯈
Continuar en Linware Argentina ⯈
×
¿Qué estás buscando?
BUSCAR!
BLOG
Zimbra con Let's Encrypt Certificates una guía paso a paso
Publicada el 10/08/2022

Este artículo es una instrucción paso a paso sobre cómo configurar Zimbra con certificados Let's Encrypt.

Si está ejecutando una instalación de Zimbra en varios servidores, se recomienda configurar una máquina virtual dedicada para obtener el certificado Let's Encrypt y seguir este blog .

requisitos previos

Esta guía asume que está utilizando Ubuntu 20 y ha configurado un nombre de host y DNS correctos, para verificar, ejecute lo siguiente como usuario zimbray verifique
zmhostnameque sea lo mismo que hostname --fqdn:

zimbra@le-test:~$ fuente ~/bin/zmshutil; zmsetvarsnzimbra@le-test:~$ zmhostnamenle-test.zimbra.technzimbra@le-test:~$ nombre de host --fqdnnle-test.zimbra.tech

A continuación, debe haber configurado un registro DNS de CAA para que Let's Encrypt pueda emitir certificados para su dominio, para verificar, ejecute lo siguiente y asegúrese de que 0 issue "letsencrypt.org"esté en la salida del comando:

zimbra@le-test:~$ sudo apt install -y herramientas de red dnsutilsnzimbra@le-test:~$ dig +tipo corto257 $(nombre de host --d)n0 problema salvaje "letsencrypt.org"n0 problema "letsencrypt.org"

A continuación, compruebe si Zimbra escucha en el puerto 80, Let's Encrypt debe poder ejecutar un servidor web temporal en el puerto 80, por lo que Zimbra no puede utilizarlo.
Esto no es un problema ya que la mayoría de los navegadores ahora prueban https primero. El siguiente comando no debería tener ningún resultado:

netstat-tulpn | grep ":80"

En caso de que su Zimbra esté escuchando en el puerto 80, debe cambiar el modo proxy de esta manera:

sudo su zimbra -nzmprov ms `zmhostname` zimbraReverseProxyMailMode httpsnzmprov ms `zmhostname` zimbraMailMode httpsn/opt/zimbra/bin/zmtlsctl httpsn/opt/zimbra/libexec/zmproxyconfig -e -w -o -a 8080:80:8443:443 -x https -H `zmhostname`

Si tiene problemas para configurar Zimbra, puede usar nuestro instalador automático que también se encargará de Let's Encrypt:
https://github.com/Zimbra/zinstaller

Instalación de Certbot

Certbot en los repositorios de Ubuntu es demasiado antiguo y no se puede usar para Zimbra. La versión más nueva se puede instalar mediante snap o pip. Ejecute los siguientes comandos para instalar Cerbot y obtener un certificado:

apt install -y python3 python3-venv libaugeas0npython3 -m venv /opt/certbot/n/opt/certbot/bin/pip instalar --actualizar pipn/opt/certbot/bin/pip instalar certbotnln -s /opt/certbot/bin/certbot/usr/local/sbin/certbotn/usr/local/sbin/certbot certonly -d $(hostname --fqdn) --standalone --preferred-chain "ISRG Root X1" --agree-tos --register-unsafely-without-email

Implementación de Zimbra

Cree el siguiente script que implementa el certificado Let's Encrypt en Zimbra:

gato >> /usr/local/sbin/letsencrypt-zimbra << EOFn#!/bin/bashn/usr/local/sbin/certbot certonly -d $(nombre de host --fqdn) --independiente --manual-public-ip-logging-ok -n --preferred-chain "ISRG Root X1" --agree-tos - -registrarse-de forma insegura-sin-emailncp "/etc/letsencrypt/live/$(nombre de host --fqdn)/privkey.pem" /opt/zimbra/ssl/zimbra/commercial/commercial.keynchown zimbra:zimbra /opt/zimbra/ssl/zimbra/commercial/commercial.keynwget -O /tmp/ISRG-X1.pem https://letsencrypt.org/certs/isrgrootx1.pem.txtnrm -f "/etc/letsencrypt/live/$(nombre de host --fqdn)/chainZimbra.pem"ncp "/etc/letsencrypt/live/$(nombre de host --fqdn)/chain.pem" "/etc/letsencrypt/live/$(nombre de host --fqdn)/chainZimbra.pem"ncat /tmp/ISRG-X1.pem >> "/etc/letsencrypt/live/$(nombre de host --fqdn)/chainZimbra.pem"nchown zimbra:zimbra /etc/letsencrypt -Rncd/tmpnsu zimbra -c '/opt/zimbra/bin/zmcertmgr deploymentcrt comm "/etc/letsencrypt/live/$(nombre de host --fqdn)/cert.pem" "/etc/letsencrypt/live/$(nombre de host --fqdn) /chainZimbra.pem"'nrm -f "/etc/letsencrypt/live/$(nombre de host --fqdn)/chainZimbra.pem"nfin de semana

Establezca el permiso correcto, configure un trabajo cron y ejecute la implementación:

chmod +rx /usr/local/sbin/letsencrypt-zimbranln -s /usr/local/sbin/letsencrypt-zimbra /etc/cron.daily/letsencrypt-zimbran/etc/cron.daily/letsencrypt-zimbra

Finalmente reinicie Zimbra para cargar el nuevo certificado:

sudo su zimbra -c '/opt/zimbra/bin/zmcontrol reiniciar'

El trabajo cron renovará su certificado aproximadamente 1 mes antes de la fecha de vencimiento, debe reiniciar manualmente Zimbra antes de la fecha de renovación para cargar el nuevo certificado.

Ir al Blog