Comprender la sintaxis del registro DMARC es fundamental para implementar una autenticación de correo electrónico efectiva. Un registro DMARC (Domain-based Message Authentication, Reporting and Conformance) consiste en etiquetas y valores específicos que instruyen a los servidores de correo receptores sobre cómo manejar correos electrónicos que no superan la autenticación SPF o DKIM. Esta guía completa desglosa cada etiqueta DMARC con ejemplos prácticos y técnicas de validación para ayudarle a construir políticas DMARC infalibles.

I. Estructura Central del Registro DMARC

Estructura de registro DMARC en cuatro pasos que muestra las etiquetas de versión, política, informes y alineación.

Los registros DMARC se publican como registros TXT de DNS en el subdominio _dmarc.sudominio.com. La sintaxis básica sigue un formato de pares etiqueta-valor separados por punto y coma:

"v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; sp=reject; adkim=s; aspf=s"

Cada etiqueta cumple una función específica en la definición de la política de autenticación de correo electrónico de su dominio. Examinemos cada etiqueta en detalle.

II. Etiquetas DMARC Obligatorias

Tabla comparativa de los tres niveles de política DMARC: none, quarantine y reject, con sus acciones y casos de uso.

v (Versión)

Sintaxis: v=DMARC1
Propósito: Especifica la versión de DMARC
Obligatorio: Sí (debe ser la primera etiqueta)

La etiqueta de versión debe ser siempre DMARC1 y aparecer como la primera etiqueta en su registro. No existen otras versiones.

Ejemplo:

v=DMARC1

Error Común: Usar cualquier cosa distinta de DMARC1 hará que el registro sea ignorado.

p (Política)

Sintaxis: p=none|quarantine|reject
Propósito: Define la acción para fallas de alineación de dominio
Obligatorio: Sí

La etiqueta de política determina qué deben hacer los servidores receptores con los correos electrónicos que no superan la autenticación DMARC:

  • p=none: Solo monitoreo, sin acción de aplicación
  • p=quarantine: Colocar correos electrónicos que fallan en la carpeta de spam/correo no deseado
  • p=reject: Rechazar completamente correos electrónicos que fallan

Ejemplos:

p=none         # Fase de monitoreo
p=quarantine   # Aplicación suave
p=reject       # Aplicación completa

Mejor Práctica: Comience con p=none para monitoreo, progrese gradualmente a p=quarantine, luego a p=reject basándose en el análisis de tráfico legítimo.

III. Etiquetas de Política Opcionales

sp (Política de Subdominio)

Sintaxis: sp=none|quarantine|reject
Propósito: Política para mensajes de subdominios
Predeterminado: Hereda el valor de la política principal

La política de subdominio permite un tratamiento diferente para mensajes de subdominios.

Ejemplo:

v=DMARC1; p=quarantine; sp=reject

Esta configuración pone en cuarentena correos electrónicos del dominio principal que fallan pero rechaza correos electrónicos de subdominios que fallan.

pct (Porcentaje)

Sintaxis: pct=1-100
Propósito: Porcentaje de mensajes a los que aplicar la política
Predeterminado: 100

Permite la implementación gradual de la política especificando qué porcentaje de mensajes que fallan debe tener la política aplicada.

Ejemplos:

pct=25    # Aplicar política al 25% de mensajes que fallan
pct=50    # Aplicar política al 50% de mensajes que fallan
pct=100   # Aplicar política a todos los mensajes que fallan (predeterminado)

Caso de Uso: Al pasar de p=none a p=quarantine, comience con pct=10 y aumente gradualmente.

IV. Etiquetas de Alineación

Comparación de los modos de alineación relajado y estricto para la autenticación DKIM y SPF.

adkim (Alineación DKIM)

Sintaxis: adkim=r|s
Propósito: Modo de alineación del identificador DKIM
Predeterminado: r (relajado)

  • adkim=r: Alineación relajada (coincidencia de subdominio permitida)
  • adkim=s: Alineación estricta (coincidencia exacta de dominio requerida)

Ejemplos:

adkim=r    # mail.ejemplo.com puede firmar para ejemplo.com
adkim=s    # Solo ejemplo.com puede firmar para ejemplo.com

aspf (Alineación SPF)

Sintaxis: aspf=r|s
Propósito: Modo de alineación del identificador SPF
Predeterminado: r (relajado)

  • aspf=r: Alineación relajada (coincidencia de subdominio permitida)
  • aspf=s: Alineación estricta (coincidencia exacta de dominio requerida)

Ejemplos:

aspf=r    # Return-Path: [email protected] pasa para From: [email protected]
aspf=s    # Return-Path debe coincidir exactamente con el dominio From

V. Etiquetas de Informes

rua (Informes Agregados)

Sintaxis: rua=mailto:[email protected]
Propósito: Dirección de correo electrónico para informes agregados
Formato: Informes XML diarios con estadísticas de autenticación

Ejemplos:

rua=mailto:[email protected]
rua=mailto:[email protected],mailto:[email protected]

Múltiples Direcciones: Separe con comas para redundancia.

ruf (Informes Forenses)

Sintaxis: ruf=mailto:[email protected]
Propósito: Dirección de correo electrónico para informes de fallos
Formato: Notificaciones individuales de fallos con muestras de mensajes

Ejemplos:

ruf=mailto:[email protected]
ruf=mailto:[email protected],mailto:[email protected]

Nota de Privacidad: Los informes forenses contienen contenido de mensajes y pueden tener implicaciones de privacidad.

ri (Intervalo de Informes)

Sintaxis: ri=segundos
Propósito: Intervalo de informes agregados
Predeterminado: 86400 (24 horas)

Ejemplos:

ri=3600     # Informes por hora (no recomendado)
ri=86400    # Informes diarios (predeterminado)
ri=604800   # Informes semanales

Limitación: La mayoría de los receptores ignoran esta etiqueta y envían informes diarios independientemente.

fo (Opciones Forenses)

Sintaxis: fo=0|1|d|s
Propósito: Condiciones para la generación de informes forenses
Predeterminado: 0

  • fo=0: Generar informes cuando tanto SPF como DKIM fallan
  • fo=1: Generar informes cuando SPF o DKIM fallan
  • fo=d: Generar informes cuando DKIM falla
  • fo=s: Generar informes cuando SPF falla

Ejemplos:

fo=1    # Informar cualquier fallo de autenticación
fo=d    # Informar solo fallos de DKIM
fo=s    # Informar solo fallos de SPF

VI. Ejemplos Avanzados de Registros DMARC

Configuración de Monitoreo

v=DMARC1; p=none; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1

Este registro monitorea todo el tráfico sin aplicación y genera tanto informes agregados como forenses.

Aplicación Gradual

v=DMARC1; p=quarantine; pct=25; sp=none; rua=mailto:[email protected]; adkim=r; aspf=r

Aplica la política de cuarentena al 25% de los mensajes del dominio principal que fallan mientras monitorea subdominios.

Aplicación Estricta

v=DMARC1; p=reject; sp=reject; rua=mailto:[email protected]; adkim=s; aspf=s

Aplicación completa con alineación estricta tanto para el dominio principal como para subdominios.

Configuración Empresarial

v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected],mailto:[email protected]; ruf=mailto:[email protected]; pct=100; adkim=s; aspf=r; fo=1; ri=86400

Configuración empresarial completa con múltiples destinos de informes y políticas de alineación mixtas.

VII. Errores Comunes de Sintaxis y Validación

Errores de Formato

Punto y Coma Faltante:

❌ v=DMARC1 p=reject rua=mailto:[email protected]
✅ v=DMARC1; p=reject; rua=mailto:[email protected]

Orden Incorrecto de Etiquetas (v debe ser la primera):

❌ p=reject; v=DMARC1; rua=mailto:[email protected]
✅ v=DMARC1; p=reject; rua=mailto:[email protected]

Valores de Política Inválidos:

❌ p=block
✅ p=reject

❌ p=spam
✅ p=quarantine

Validación de Direcciones de Correo Electrónico

Direcciones Mal Formadas:

[email protected]          # Falta mailto:
✅ rua=mailto:[email protected]

❌ rua=mailto:test@dominio         # Dominio inválido
✅ rua=mailto:[email protected]

Valores de Porcentaje

Fuera de Rango:

❌ pct=150    # Sobre 100
✅ pct=100

❌ pct=0      # Cero no permitido
✅ pct=1

VIII. Técnicas de Validación de Registros DMARC

Verificación de Búsqueda DNS

dig TXT _dmarc.ejemplo.com
nslookup -type=TXT _dmarc.ejemplo.com

Herramientas de Validación en Línea

Use verificadores de registros DMARC para validar la sintaxis y detectar errores comunes. Estas herramientas verifican:

  • Formato adecuado de etiquetas
  • Valores de política válidos
  • Sintaxis de direcciones de correo electrónico
  • Estado de propagación DNS

Lista de Verificación de Validación Manual

  1. Etiqueta de versión: Verificar que v=DMARC1 sea la primera
  2. Etiqueta de política: Confirmar que p= tenga un valor válido
  3. Punto y coma: Verificar que todas las etiquetas estén separadas por punto y coma
  4. Formato de correo electrónico: Validar el prefijo mailto: en direcciones de informes
  5. Rangos numéricos: Verificar que pct= sea 1-100, ri= sea un entero positivo
  6. Valores de alineación: Confirmar que adkim= y aspf= usen solo r o s

Prueba de Implementación DMARC

Después de publicar su registro, monitoree los resultados de autenticación a través de:

  • Informes agregados DMARC
  • Registros de entrega de correo electrónico
  • Servicios de monitoreo de terceros

Skysnag Protect simplifica la implementación de DMARC al proporcionar generación automatizada de registros, validación y monitoreo continuo para asegurar que sus políticas de autenticación de correo electrónico funcionen correctamente.

IX. Consideraciones de Configuración Avanzada

Organizaciones Multi-Dominio

Para organizaciones que gestionan múltiples dominios, considere:

  • Direcciones de informes centralizadas
  • Niveles de aplicación de política consistentes
  • Herencia de política de subdominios

Integración de Proveedores de Servicios de Correo Electrónico

Al usar servicios de correo electrónico de terceros:

  • Verificar la alineación de firma DKIM
  • Coordinar las inclusiones de registros SPF
  • Probar el impacto de la aplicación de políticas

Planificación de Respuesta a Incidentes

Prepárese para problemas de entrega relacionados con DMARC:

  • Monitorear tendencias de informes agregados
  • Establecer procedimientos de reversión de políticas
  • Mantener inventario de remitentes legítimos

X. Conclusiones Clave

La sintaxis del registro DMARC requiere formato preciso y consideración cuidadosa del impacto de cada etiqueta en la entrega de correo electrónico. Comience con políticas de monitoreo usando p=none, aplique gradualmente con p=quarantine y p=reject mientras analiza informes agregados. Configure modos de alineación apropiados basados en su infraestructura de correo electrónico, y siempre valide los registros antes del despliegue. Recuerde que la efectividad de DMARC depende de la implementación adecuada de SPF y DKIM junto con una configuración precisa de políticas.

Comprender estas reglas de sintaxis y técnicas de validación permite a las organizaciones implementar una autenticación de correo electrónico robusta que protege contra la suplantación de identidad mientras mantiene la entrega legítima de correo electrónico. El monitoreo regular y el refinamiento de políticas aseguran la efectividad continua a medida que evoluciona la infraestructura de correo electrónico.