Esta guía le mostrará el proceso de configuración de SPF, DKIM y DMARC: tres componentes vitales para mejorar el rendimiento del envío de correo electrónico.
Una configuración adecuada de SPF, DKIM y DMARC aumentará la confianza de los servidores de correo y minimizará la posibilidad de que sus correos lleguen a la carpeta de spam.
- SPF (Sender Policy Framework) es una medida de seguridad diseñada para evitar que otros envíen correos electrónicos en su nombre. Determina qué direcciones IP pueden enviar correos electrónicos y cuáles no.
- DKIM (Correo Identificado por Clave de Dominio) es un método de autenticación de mensajes. Al enviar un correo electrónico, este se firma con la clave privada y se verifica en el servidor de correo receptor (o proveedor de servicios de Internet) con la clave pública DNS.
- DMARC (Autenticación, informes y conformidad de mensajes basados en dominios) utiliza SPF y DKIM para la autenticación de correo, lo que reduce los ataques de spam y phishing.
Configuración de SPF (Sender Policy Framework)
1.1. Para configurar SPF, se debe agregar un registro TXT a la configuración DNS de su dominio.
1.2. La sintaxis del registro SPF es la siguiente:
- v=spf1: determina la versión de SPF que utiliza. Actualmente solo se utiliza SPF1.
- ip4:[Your_Mail_Server_IP]: Indica que la dirección IP de su servidor de correo tiene permiso para enviar correos electrónicos en nombre de su dominio.
- a: Especifica que si un dominio tiene un registro A (dirección IPv4) en DNS, el servidor especificado en ese registro puede enviar correo electrónico en nombre del dominio.
- mx: Indica que si un dominio tiene un registro MX (intercambio de correo) en DNS, el servidor especificado en este registro puede enviar correo electrónico en nombre del dominio.
- ~all: Indica que solo los servidores del registro SPF pueden enviar correos electrónicos en nombre del dominio. Si el correo electrónico proviene de otro servidor, se marcará como "coincidencia suave" (~), lo que significa que puede aceptarse, pero se marcará como posible spam.
Juntos, estos elementos forman un SPF que se ve así:
Nombre: [Su_Dominio]
v=spf1 ip4:[Your_Mail_Server_IP] a mx ~all
Reemplace [Your_Mail_Server_IP] con la dirección IP de su servidor de correo electrónico.
Configuración de DKIM (Correo identificado con claves de dominio)
2.1. Primero, instale opendkim y opendkim-tools. El proceso de instalación depende del sistema operativo:
Para CentOS:
yum install opendkim -y
Para Debian/Ubuntu:
apt install opendkim opendkim-tools -y
2.2. A continuación, inicie el servicio opendkim y habilite su ejecución durante el arranque:
systemctl start opendkim
systemctl enable opendkim
2.3. Crear un directorio para el almacenamiento de claves:
mkdir -p /etc/opendkim/keys/yourdomain.com
2.4. Generar claves con la herramienta opendkim-genkey:
opendkim-genkey --directory /etc/opendkim/keys/yourdomain.com/ --domain yourdomain.com --selector dkim
No olvides reemplazar “tudominio.com” con tu nombre de dominio real.
2.5. Establezca los permisos adecuados para las claves:
chown -R opendkim:opendkim /etc/opendkim/keys/yourdomain.com
2.6. Ahora necesitamos configurar opendkim. Abra el archivo /etc/opendkim.conf y agregue la siguiente configuración:
AutoRestart Yes
AutoRestartRate 10/1h
Umask 002
Syslog Yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:8891@localhost
2.7. Agregue su dominio al archivo /etc/opendkim/TrustedHosts
127.0.0.1
localhost
*.yourdomain.com
2.8. Edite el archivo /etc/opendkim/KeyTable para que se vea así:
dkim._domainkey.yourdomain.com yourdomain.com:dkim:/etc/opendkim/keys/yourdomain.com/dkim.private
2.9. Modifique el archivo /etc/opendkim/SigningTable. Para que se vea así
*@yourdomain.com dkim._domainkey.yourdomain.com
2.10. Si usa Debian/Ubuntu, especifique el puerto opendkim:
echo 'SOCKET="inet:8891@localhost"' >> /etc/default/opendkim
2.11. Reinicie el servicio opendkim para que se apliquen los cambios:
systemctl restart opendkim
2.12. Finalmente, agregue la clave pública a la configuración DNS de su dominio. Las claves se encuentran en /etc/opendkim/keys/yourdomain.com/dkim.txt.
Configuración de DMARC (Autenticación, informes y conformidad de mensajes basados en dominios)
3.1. Para configurar DMARC, agregue un registro TXT a la configuración de su dominio:
Name: _dmarc.[Your_Domain].
Значение: v=DMARC1; p=none; aspf=r; sp=none
Reemplace [Your_Domain] con el nombre de su dominio.
Configuración de PTR (registro de puntero)
4.1. Un registro PTR, también conocido como registro DNS inverso, se utiliza para transformar una dirección IP en un nombre de dominio. Esto es importante para los servidores de correo, ya que algunos servidores pueden rechazar mensajes sin un registro PTR.
4.2. El registro PTR suele configurarse en la configuración del proveedor de servicios de internet o del proveedor de alojamiento. Si tiene acceso a esta configuración, puede configurar un registro PTR especificando la dirección IP de su servidor y su nombre de dominio correspondiente.
4.3. Si no tiene acceso a la configuración del registro PTR, contacte a su proveedor de servicios de internet o de alojamiento web con una solicitud de configuración del registro PTR.
4.4. Después de instalar PTR, puede comprobarlo con el comando dig en Linux:
dig -x your_server_IP
Reemplace "your_server_IP" con la dirección IP de su servidor. La respuesta debe incluir su nombre de dominio.
Después de completar todos los pasos de configuración de SPF, DKIM y DMARC, será mucho menos probable que el servidor de correo marque sus correos como spam: garantizará que sus cartas lleguen a los destinatarios.