Amigos, en este post les mostraré las configuraciones necesarias para evitar que los correos enviados desde nuestro servidor zimbra, sean rechazados o enviados a la carpeta de SPAM. Todas las configuraciones fueron realizadas con Zimbra 8.8.15 y bind 9.11.
En otros posts también pueden encontrar:
- Zimbra 8.8.X: Instalar un Certificado gratuito SSL Let’s Encrypt
- Seguridad en el Servidor de Correo Electrónico Zimbra – Parte 1
Las siguientes acciones nos permitiran mejorar la seguridad en nuestro servidor Zimbra:
- SPF
- DKIM
- DMARC
SPF
Sender Policy Framework, es un sistema de validación para evitar correos no deseados utilizando un sistema de suplantación de identidad.
En el servidor del DNS público (externo) agregar la siguiente configuración.
Modificar el archivo de configuración de bind:
# nano/etc/bind/db.empresa.bo
Adicionar un registro TXT
@ IN TXT "v=spf1 mx ~all"
Explicación de esta configuración:
- v=spf1: Versión de SPF.
- mx: autoriza a las máquinas con la IP de los registros MX.
- ~all: sugiere desautorización a las máquinas que no encajen en lo autorizado explícitamente.
Prueba de validación:
Se puede validar la nueva configuración en la web: https://dmarcian.com/spf-survey/
DKIM
DomainKeys Identified Mail, es un método para asociar el dominio al correo electrónico, permitiendo a una empresa asumir la responsabilidad del correo electrónico.
Para que DKIM funcione se debe configurar el servidor Zimbra y el Servidor DNS público.
En el servidor Zimbra ejecutar lo siguiente:
$ su - zimbra $ /opt/zimbra/libexec/zmdkimkeyutil -a -d empresa.bo $ zmcontrol restart
Para recuperar la configuración actual de DKIM ejecutar lo siguiente:
/opt/zimbra/libexec/zmdkimkeyutil -q -d empresa.bo
Para eliminar la configuración actual de DKIM de un dominio ejecutar:
/opt/zimbra/libexec/zmdkimkeyutil -r -d empresa.bo
En el servidor DNS agregar el registro TXT generado anteriormente:
# nano/etc/bind/db.empresa.bo
Ubuntu 16.04 o Ubuntu 18.04
# /etc/init.d/bind9 restart
Ubuntu 20.04
# /etc/init.d/named restart
Prueba de validación:
Validación de la llave mediante la web https://dkimcore.org/tools/keycheck.html
DMARC
Domain-based Message Authentication, Reporting & Conformance, estandariza el reporte de cómo se realiza la autenticación con SPF y DKIM.
En el servidor DNS público agregar la siguiente configuración:
# nano/etc/bind/db.empresa.bo
_dmarc IN TXT "v=DMARC1;p=reject; pct=100; rua=mailto:mailreports@empresa.bo; ruf=mailto:mailreports@empresa.bo; rf=afrf; ri=86400; sp=reject"
- p=reject: La política a aplicar es “rechazar” los correos que fallen la verificación DMARC
- pct=100: porcentaje de correos a los cuales se aplicará la política
- rua=mailto:mailreports@empresa.bo: dirección a la que se enviará el reporte de feedback
- ruf=mailto:mailreports@empresa.bo: dirección a la que se enviará el reporte forense
- rf=afrf: formato del reporte forense
- ri=86400: intervalo en segundos de la frecuencia de envío del reporte
- sp=reject: política para aplicar a subdominios
Prueba de validación:
Validación de la configuración en la web https://dmarcian.com/
Finalmente se puede realizar una comprobación del envío de correo electrónico mediante la web http://www.mail-tester.com/
La prueba consiste en enviar un correo electrónico a la cuenta que se muestra en la pantalla y unos minutos despues se obtendrá un reporte de verificación de todas las configuraciones realizadas.
Si se presenta algun error con la llave DKIM sugiero actualizar el servidor BIND a la versión 9.11 o una versión superior.
Referencias:
https://wiki.zimbra.com/wiki/Best_Practices_on_Email_Protection:_SPF,_DKIM_and_DMARC