Registros DNS para la validación de correo electrónico#


Registro MX - Mail eXchanger#

Se utiliza para especificar el o los servidores denominados Mail eXchangers que son los encargados de recibir el correo para el dominio en cuestión.

Nombre TTL Clase Tipo Prioridad Host
example.com. 3600 IN MX 10 mail.example.com
example.com. 3600 IN MX 20 192.0.2.1
example.com. 3600 IN MX 20 2001:db8::1

En este registro DNS el campo valor es compuesto por 2 elementos:

  • Prioridad: Indica el órden en el que se intenta entregar el correo a los servidores MX del dominio
  • Host: Equipo designado como servidor MX para este dominio, se puede especificar un nombre DNS o dirección IPv4/IPv6

Es válido tener más de un registro MX para tener servidores MX de respaldo que reciban el correo entrante para el dominio DNS.


Registro SPF - Sender Policy Framework#

Indica que direcciones o segmentos de IPv4 o IPv6 están autorizados para enviar correo como cierto dominio DNS.

Sólo puede existir 1 registro SPF por dominio DNS y este puede ser implementado como tipo TXT o SPF

Nombre TTL Clase Tipo Valor
example.com. 3600 IN TXT o SPF v=spf1 mx a ip4:192.0.2.0/24 ip6:2001:db8::/32 include:_spf.google.com include:amazonses.com ~all

En este registro DNS el campo valor es compuesto por varios elementos:

  • Identificador SPF:
  • Equipos permitidos:
  • mx: Marca al equipo MX del dominio como permitido para enviar correo
  • a: Marca al equipo del registro A del domino (example.com) para enviar correo
  • ip4:: Indica que el equipo o el segmento IPv4 está permitido a enviar correo
  • ip6:: Indica que el equipo o el segmento IPv6 está permitido a enviar correo
  • include: Indica que se debe incluir la configuración de SPF de otro dominio (útil cuando se utilizan servicios de correo de terceros)
  • Acción predeterminada:
  • ~all: (Tílde = Soft-fail) Indica que el correo proveniente de otros equipos puede ser catalogado como SPAM
  • -all: (Guión = Hard-fail) Indica que el correo proveniente de otros equipos DEBE ser catalogado como SPAM

Registro DKIM - Domain Keys Identified Mail#

El estándar DKIM implementa el firmado digital de cada mensaje que envía el servidor de correo, de tal manera que el destinatario pueda verificar la firma digital utilizando la llave pública que se ubica en el registro DNS _domainkey.

Nombre TTL Clase Tipo Valor
<selector>._domainkey.example.com. 3600 IN TXT "k=rsa; t=s; p=<valor>"
<selector>._domainkey.example.com. 3600 IN CNAME foo.dkim.example.net.

Este registro _domainkey puede ser:

  • TXT: Se publica la llave directamente
  • CNAME: Se apunta al registro de un tercero que maneja la llave por su cuenta

Es válido tener más de un registro _domainkey para el dominio en cuestión siempre y cuando el <selector> sea diferente. Comúnmente se utiliza para autenticar los correos enviados por un servicio externo.

Dentro de las cabeceras del mensaje de correo electrónico se incluye el parámetro s que indica el selector que se usa para la verificación del registro DKIM:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=example-com.19980928.dkimsmtp.com; s=<selector>;
        bh=<valor>;
        b=<valor>

Registro DMARC - Domain-based Message Authentication, Reporting and Conformance#

Este estándar liga los conceptos de SPF y DKIM de tal manera que permite al administrador de un dominio DNS establecer criterios de validación de los mensajes de correo electrónico que provienen de su dominio y listar las acciones que se realizan para los mensajes que no puedan ser verificados correctamente (marcar como SPAM, rechazar, etc.)

El formato del registro DNS es el siguiente:

Nombre TTL Clase Tipo Valor
_dmarc.example.com. 3600 IN TXT "v=DMARC1; p=none; sp=quarantine; pct=100; rua=mailto:dmarc@example.com;"

En este registro DNS el campo valor es compuesto por varios elementos:

  • v: Versión de DMARC
  • p: Política de dominio
  • none: No establece una acción, utilizado para monitorear el estado de DMARC antes de aplicar una política restrictiva
  • quarantine: Envía los mensajes a cuarentena o los cataloga como SPAM
  • reject: El servidor de destino rechaza la recepción de los mensajes apócrifos y nunca son entregados al usuario
  • sp: Política de subdominio, aplica lo mismo que en la política de dominio
  • pct: Porcentaje de mensajes no validados después de los que se aplica la política
  • rua: URI para envío de reportes de violaciones de DMARC