Configuración de SPF y DMARC: Guía Completa de Autenticación de Correo Electrónico

Introducción

La autenticación de correo electrónico se ha vuelto esencial para los servidores de correo modernos. Mientras que DKIM proporciona firma criptográfica, otros dos protocolos críticos completan la trinidad de autenticación: SPF (Sender Policy Framework) y DMARC (Domain-based Message Authentication, Reporting, and Conformance).

SPF permite a los propietarios de dominios especificar qué servidores de correo están autorizados para enviar correo en nombre de su dominio. Cuando un servidor receptor obtiene un correo que afirma ser de su dominio, verifica su registro SPF para confirmar que el servidor remitente está autorizado. Este mecanismo simple pero poderoso previene que los spammers suplanten su dominio.

DMARC se construye sobre SPF y DKIM agregando capacidades de aplicación de políticas y reportes. Les dice a los servidores de correo receptores qué hacer cuando las verificaciones de SPF o DKIM fallan, y proporciona reportes detallados sobre quién está enviando correo usando su dominio. Esta visibilidad es crucial para identificar el flujo de correo legítimo y detectar abusos.

Juntos, SPF, DKIM y DMARC proporcionan autenticación completa de correo electrónico que:

  • Mejora dramáticamente la entregabilidad del correo
  • Protege su dominio de suplantación y phishing
  • Proporciona visibilidad de su ecosistema de correo
  • Cumple con los requisitos de los principales proveedores de correo
  • Construye y mantiene la reputación del remitente

Esta guía completa le guía a través de la configuración de SPF y DMARC para su dominio, implementando mejores prácticas, monitoreando resultados de autenticación y solucionando problemas comunes.

Prerrequisitos

Antes de configurar SPF y DMARC, asegúrese de tener:

Requisitos de Dominio

  • Un nombre de dominio registrado (ej., example.com)
  • Acceso al panel de gestión DNS de su dominio
  • Comprensión de su infraestructura actual de correo
  • Conocimiento de todas las fuentes legítimas de correo para su dominio

Requisitos del Servidor de Correo

  • Servidor de correo funcionando enviando correo
  • DKIM configurado y operacional (altamente recomendado)
  • Lista de todas las IPs y servicios que envían correo para su dominio
  • Acceso a logs del servidor de correo

Prerrequisitos de Conocimiento

  • Experiencia en gestión de registros DNS
  • Comprensión básica de encabezados de correo
  • Familiaridad con conceptos de SPF, DKIM, DMARC
  • Capacidad para leer e interpretar resultados de autenticación

Entendiendo SPF

¿Qué es SPF?

Sender Policy Framework (SPF) es un sistema de validación de correo que detecta y previene la suplantación de correo electrónico. Funciona permitiendo a los propietarios de dominios publicar una lista de servidores de correo autorizados en DNS.

Cómo Funciona SPF

  1. Publicación: Usted publica un registro SPF en su DNS como registro TXT
  2. Correo Enviado: Alguien envía correo afirmando ser de su dominio
  3. Verificación SPF: El servidor receptor consulta DNS por su registro SPF
  4. Comparación de IP: El servidor receptor compara la IP del remitente contra IPs autorizadas
  5. Resultado: SPF pasa, falla o devuelve neutral/softfail
  6. Acción: El servidor receptor actúa basándose en el resultado SPF

Resultados SPF

  • Pass: La IP del remitente está autorizada
  • Fail: La IP del remitente no está autorizada (hard fail)
  • SoftFail (~all): IP no autorizada pero no rechazar
  • Neutral: Sin declaración de política
  • None: No se encontró registro SPF
  • TempError: Problema temporal de DNS
  • PermError: El registro SPF tiene errores

Entendiendo DMARC

¿Qué es DMARC?

DMARC (Domain-based Message Authentication, Reporting, and Conformance) es un protocolo de autenticación de correo que usa resultados de SPF y DKIM para determinar la autenticidad del mensaje y proporciona aplicación de políticas y reportes.

Cómo Funciona DMARC

  1. Publicación de Política: Usted publica una política DMARC en DNS
  2. Verificación de Autenticación: El servidor receptor verifica SPF y DKIM
  3. Verificación de Alineación: Verifica la alineación de dominio
  4. Aplicación de Política: Aplica su política (none/quarantine/reject)
  5. Reportes: Envía reportes agregados y forenses a usted

Políticas DMARC

  • none: Solo monitorear, no rechazar (recomendado para despliegue inicial)
  • quarantine: Mover mensajes fallidos a carpeta de spam/basura
  • reject: Rechazar mensajes fallidos completamente

Alineación DMARC

DMARC requiere que SPF o DKIM pasen Y se alineen:

  • Alineación SPF: El dominio Return-Path coincide con el dominio From
  • Alineación DKIM: El dominio de firma DKIM coincide con el dominio From
  • Alineación Relajada: Subdominios permitidos (predeterminado)
  • Alineación Estricta: Se requiere coincidencia exacta de dominio

Paso 1: Analizar Su Infraestructura de Correo

Antes de crear registros SPF, identifique todas las fuentes legítimas de correo:

Identificar Servidores de Correo

# Verificar la IP de su servidor de correo
dig mail.example.com A +short

# Verificar registros MX
dig example.com MX +short

# Verificar DNS inverso
dig -x SU_IP +short

Fuentes Comunes de Correo a Considerar

  1. Su servidor de correo: Servidor SMTP primario
  2. Servidores MX de respaldo: Servidores de correo secundarios
  3. Servidores web: Aplicaciones enviando correo
  4. Servicios de terceros:
    • Mailchimp, SendGrid, Amazon SES
    • Google Workspace, Microsoft 365
    • Sistemas CRM, herramientas de monitoreo
    • Software de help desk
  5. Otra infraestructura: Cualquier servidor ejecutando aplicaciones habilitadas para correo

Documentar Fuentes de Correo

Crear una lista:

Servidor de correo principal: 203.0.113.10 (mail.example.com)
Servidor web: 203.0.113.20 (www.example.com)
SendGrid: include:sendgrid.net
Google Workspace: include:_spf.google.com

Paso 2: Crear Registro SPF

Sintaxis Básica SPF

Los registros SPF se publican como registros TXT de DNS con este formato:

v=spf1 [mecanismos] [calificador]all

Mecanismos SPF

  • ip4: Autorizar dirección IPv4 o rango
  • ip6: Autorizar dirección IPv6 o rango
  • a: Autorizar registro A del dominio
  • mx: Autorizar registros MX del dominio
  • include: Incluir registro SPF de otro dominio
  • exists: Autorización avanzada basada en DNS
  • all: Catch-all para todo lo demás

Calificadores SPF

  • + (Pass): Autorizado (predeterminado si no se especifica)
  • - (Fail): No autorizado, hard fail
  • ~ (SoftFail): No autorizado pero no rechazar
  • ? (Neutral): Sin afirmación de política

Ejemplos Comunes de SPF

Servidor de correo simple:

v=spf1 mx a ip4:203.0.113.10 ~all

Con servicios de terceros:

v=spf1 mx a ip4:203.0.113.10 include:_spf.google.com include:sendgrid.net ~all

Múltiples IPs:

v=spf1 ip4:203.0.113.10 ip4:203.0.113.20 ip4:203.0.113.30 ~all

Rango de IP:

v=spf1 ip4:203.0.113.0/24 ~all

Estricto (rechazar no autorizados):

v=spf1 mx a ip4:203.0.113.10 -all

Mejores Prácticas SPF

  1. Comenzar con ~all: Usar soft fail inicialmente, mover a -all después de pruebas
  2. Ser específico: Solo incluir mecanismos necesarios
  3. Evitar demasiados includes: Máximo 10 búsquedas DNS permitidas
  4. Usar rangos IP cuidadosamente: Solo incluir IPs que controle
  5. Mantenerlo simple: Los registros SPF complejos son más difíciles de mantener

Ejemplo SPF para Escenarios Comunes

Escenario 1: Solo servidor de correo auto-hospedado

v=spf1 mx a ip4:203.0.113.10 ~all

Escenario 2: Servidor de correo + Google Workspace

v=spf1 ip4:203.0.113.10 include:_spf.google.com ~all

Escenario 3: Múltiples servicios

v=spf1 ip4:203.0.113.10 include:_spf.google.com include:servers.mcsv.net include:sendgrid.net ~all

Escenario 4: Sin servidor de correo (solo terceros)

v=spf1 include:_spf.google.com -all

Escenario 5: Servidor de correo + MX de respaldo + SendGrid

v=spf1 mx a ip4:203.0.113.10 ip4:203.0.113.11 include:sendgrid.net ~all

Paso 3: Publicar Registro SPF

Agregar Registro TXT DNS

En su panel de gestión DNS, crear un registro TXT:

Nombre/Host: @ (o dejar en blanco para dominio raíz) Tipo: TXT Valor: Su registro SPF

Ejemplo:

Nombre: @
Tipo: TXT
Valor: v=spf1 mx a ip4:203.0.113.10 include:_spf.google.com ~all
TTL: 3600

Notas Importantes

  • Cada dominio necesita su propio registro SPF
  • Solo UN registro SPF por dominio (múltiples registros TXT están bien, pero solo uno puede ser SPF)
  • Los subdominios pueden tener registros SPF separados
  • Si el subdominio no tiene registro SPF, el registro del dominio padre no se usa

Verificar Publicación SPF

# Verificar registro SPF
dig example.com TXT +short | grep spf

# Alternativa
host -t TXT example.com | grep spf

# Consultar nameserver específico
dig @8.8.8.8 example.com TXT +short | grep spf

Salida esperada:

"v=spf1 mx a ip4:203.0.113.10 ~all"

Paso 4: Probar Configuración SPF

Herramientas de Prueba en Línea

Verificación SPF de MXToolbox:

https://mxtoolbox.com/spf.aspx

Herramienta de Consulta SPF:

https://www.kitterman.com/spf/validate.html

Verificador SPF de DMARC Analyzer:

https://www.dmarcanalyzer.com/spf/checker/

Pruebas en Línea de Comandos

# Prueba básica de SPF
dig example.com TXT +short

# Verificar si SPF es válido
host -t TXT example.com

Probar Autenticación de Correo

Enviar un correo de prueba y verificar encabezados:

echo "Correo de prueba SPF" | mail -s "Prueba SPF" [email protected]

En Gmail:

  1. Abrir el correo
  2. Hacer clic en "Mostrar original"
  3. Buscar resultados SPF:
Received-SPF: pass (google.com: domain of [email protected] designates 203.0.113.10 as permitted sender)

O en Authentication-Results:

Authentication-Results: mx.google.com;
    spf=pass (google.com: domain of [email protected] designates 203.0.113.10 as permitted sender)

Resultados Comunes de Pruebas SPF

Pass:

Received-SPF: pass

Su IP está autorizada, SPF está funcionando correctamente.

SoftFail:

Received-SPF: softfail

Su IP no está explícitamente autorizada, verificar registro SPF.

Fail:

Received-SPF: fail

Su IP no está autorizada, el correo puede ser rechazado.

None:

Received-SPF: none

No se encontró registro SPF para su dominio.

Paso 5: Crear Registro DMARC

Sintaxis Básica DMARC

Los registros DMARC se publican como registros TXT DNS en _dmarc.sudominio.com:

v=DMARC1; p=política; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1

Etiquetas DMARC

Requerido:

  • v=DMARC1: Identificador de versión
  • p=: Política para el dominio (none/quarantine/reject)

Recomendado:

  • rua=: Dirección de correo para reportes agregados
  • ruf=: Dirección de correo para reportes forenses
  • pct=: Porcentaje de correos para aplicar política (predeterminado 100)
  • sp=: Política para subdominios (predeterminado: mismo que p)

Opcional:

  • adkim=: Modo de alineación DKIM (r=relajado, s=estricto)
  • aspf=: Modo de alineación SPF (r=relajado, s=estricto)
  • fo=: Opciones de reportes forenses
  • rf=: Formato de reportes forenses
  • ri=: Intervalo de reportes agregados (segundos)

Políticas DMARC Explicadas

p=none (Modo monitoreo):

  • No se toma acción en fallos
  • Reportes enviados para análisis
  • Recomendado para despliegue inicial
  • Aprender sobre su ecosistema de correo

p=quarantine (Modo cuarentena):

  • Correos fallidos movidos a spam/basura
  • Aplicación parcial
  • Siguiente paso después de monitoreo
  • Aún permite entrega de correo

p=reject (Modo rechazo):

  • Correos fallidos rechazados a nivel SMTP
  • Aplicación completa
  • Máxima protección
  • Riesgo de pérdida de correo legítimo si está mal configurado

Registros DMARC de Ejemplo

Nivel 1: Monitoreo (Comenzar aquí)

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

Nivel 2: Aplicación Parcial

v=DMARC1; p=quarantine; pct=10; rua=mailto:[email protected]; sp=none

Nivel 3: Cuarentena

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

Nivel 4: Protección Completa

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

Con política de subdominio:

v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected]

Detalles de Etiquetas DMARC

pct (Porcentaje):

pct=25    # Aplicar política al 25% del correo
pct=50    # Aplicar política al 50% del correo
pct=100   # Aplicar política a todo el correo (predeterminado)

fo (Opciones Forenses):

fo=0    # Reportar si todos los mecanismos fallan (predeterminado)
fo=1    # Reportar si cualquier mecanismo falla
fo=d    # Reportar si DKIM falla
fo=s    # Reportar si SPF falla

ri (Intervalo de Reportes):

ri=86400    # Reportes diarios (predeterminado)
ri=3600     # Reportes cada hora

Paso 6: Publicar Registro DMARC

Agregar Registro TXT DNS

En su panel de gestión DNS:

Nombre/Host: _dmarc o Nombre/Host: _dmarc.example.com.

Tipo: TXT Valor: Su registro DMARC

Ejemplo:

Nombre: _dmarc
Tipo: TXT
Valor: v=DMARC1; p=none; rua=mailto:[email protected]; fo=1
TTL: 3600

Configurar Dirección de Correo para Reportes

Crear una dirección de correo para recibir reportes DMARC:

# Agregar a buzones virtuales (Postfix)
echo "[email protected]    example.com/dmarc-reportes/" | sudo tee -a /etc/postfix/virtual_mailboxes

# Agregar a usuarios Dovecot
NEW_PASSWORD=$(doveadm pw -s SHA512-CRYPT -p 'PasswordReportes')
echo "[email protected]:$NEW_PASSWORD" | sudo tee -a /etc/dovecot/users

# Reconstruir mapas
sudo postmap /etc/postfix/virtual_mailboxes
sudo systemctl reload postfix dovecot

O usar un servicio de reportes DMARC de terceros:

Verificar Publicación DMARC

# Verificar registro DMARC
dig _dmarc.example.com TXT +short

# Alternativa
host -t TXT _dmarc.example.com

# Consultar DNS de Google
dig @8.8.8.8 _dmarc.example.com TXT +short

Salida esperada:

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

Paso 7: Probar Configuración DMARC

Herramientas de Prueba en Línea

Verificación DMARC de MXToolbox:

https://mxtoolbox.com/dmarc.aspx

DMARC Analyzer:

https://www.dmarcanalyzer.com/dmarc/dmarc-check/

EasyDMARC:

https://easydmarc.com/tools/dmarc-lookup

Enviar Correo de Prueba

echo "Correo de prueba DMARC" | mail -s "Prueba DMARC" [email protected]

Verificar encabezados de correo para resultados DMARC:

Authentication-Results: mx.google.com;
    dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=example.com

Significados de resultados:

  • dmarc=pass: SPF o DKIM pasó con alineación
  • dmarc=fail: Ni SPF ni DKIM pasaron con alineación
  • p=NONE: Su política es solo monitoreo
  • p=QUARANTINE: Su política solicita cuarentena
  • p=REJECT: Su política solicita rechazo

Paso 8: Configurar para Subdominios

Opción 1: Registros Explícitos de Subdominio

Crear SPF y DMARC separados para cada subdominio:

# SPF para subdominio
subdominio.example.com.  TXT  "v=spf1 ip4:203.0.113.10 ~all"

# DMARC para subdominio
_dmarc.subdominio.example.com.  TXT  "v=DMARC1; p=quarantine; rua=mailto:[email protected]"

Opción 2: Usar Política de Subdominio

En el registro DMARC principal:

v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected]
  • p=reject: Política para dominio principal
  • sp=quarantine: Política para subdominios

Opción 3: Bloquear Subdominios No Usados

Si no envía correo desde subdominios:

# SPF para subdominios
*.example.com.  TXT  "v=spf1 -all"

# DMARC para subdominios
_dmarc.*.example.com.  TXT  "v=DMARC1; p=reject"

Esto previene que atacantes envíen correo como [email protected].

Paso 9: Monitorear Reportes DMARC

Reportes Agregados (RUA)

Enviados diariamente por la mayoría de los proveedores de correo, contienen:

  • Número de mensajes recibidos
  • Resultados SPF
  • Resultados DKIM
  • Estadísticas de pase/fallo DMARC
  • IPs de origen

Formato: Archivo XML adjunto al correo

Reportes Forenses (RUF)

Enviados cuando la autenticación falla, contienen:

  • Encabezados completos del mensaje fallido
  • Razones de fallo SPF/DKIM/DMARC
  • Más detallados que reportes agregados

Formato: Formato RFC 5322 (mensaje de correo)

Leer Reportes DMARC

Los reportes son XML, que es difícil de leer. Opciones:

1. Parsers en línea:

2. Servicios de reportes DMARC:

  • DMARC Analyzer
  • Postmark DMARC
  • dmarcian

3. Auto-hospedado:

Análisis de Reporte de Muestra

<record>
  <row>
    <source_ip>203.0.113.10</source_ip>
    <count>100</count>
    <policy_evaluated>
      <disposition>none</disposition>
      <dkim>pass</dkim>
      <spf>pass</spf>
    </policy_evaluated>
  </row>
  <identifiers>
    <header_from>example.com</header_from>
  </identifiers>
  <auth_results>
    <dkim>
      <domain>example.com</domain>
      <result>pass</result>
    </dkim>
    <spf>
      <domain>example.com</domain>
      <result>pass</result>
    </spf>
  </auth_results>
</record>

Esto muestra:

  • 100 correos desde IP 203.0.113.10
  • Tanto SPF como DKIM pasaron
  • DMARC pasó
  • No se tomó acción (policy=none)

Paso 10: Despliegue Progresivo de DMARC

No salte directamente a p=reject. Siga esta línea de tiempo:

Fase 1: Monitoreo (Semana 1-4)

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

Acciones:

  • Recopilar reportes por 2-4 semanas
  • Identificar todas las fuentes legítimas de correo
  • Corregir cualquier problema SPF/DKIM
  • Documentar ecosistema de correo

Fase 2: Cuarentena Parcial (Semana 5-8)

v=DMARC1; p=quarantine; pct=10; rua=mailto:[email protected]

Acciones:

  • Aplicar cuarentena al 10% del correo
  • Monitorear para falsos positivos
  • Aumentar gradualmente pct (10% → 25% → 50% → 100%)
  • Corregir cualquier problema descubierto

Fase 3: Cuarentena Completa (Semana 9-12)

v=DMARC1; p=quarantine; pct=100; rua=mailto:[email protected]

Acciones:

  • Monitorear para correo legítimo en cuarentena
  • Asegurar que todas las fuentes estén correctamente autenticadas
  • Recopilar datos sobre fallos restantes

Fase 4: Rechazo (Semana 13+)

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

Acciones:

  • Protección completa habilitada
  • Continuar monitoreando reportes
  • Mantener configuración SPF/DKIM
  • Auditorías regulares

Solución de Problemas Comunes

Problema 1: Hard Fail de SPF

Síntomas: Correo legítimo fallando SPF

Verificar:

# Verificar registro SPF
dig example.com TXT +short | grep spf

# Probar desde su servidor
echo "Prueba" | mail -s "Prueba SPF" -r [email protected] [email protected]

# Verificar encabezados en correo recibido

Soluciones:

  • Agregar IPs faltantes al registro SPF
  • Incluir SPF de servicio de terceros
  • Cambiar -all a ~all para pruebas
  • Verificar que la IP en SPF coincida con el servidor remitente

Problema 2: Demasiadas Búsquedas DNS

Síntomas: SPF devuelve PermError

Causa: El límite de SPF es 10 búsquedas DNS

Verificar:

# Contar includes en su SPF
dig example.com TXT +short | grep -o "include:" | wc -l

Soluciones:

  • Reemplazar includes con ip4/ip6 donde sea posible
  • Consolidar múltiples includes
  • Usar rangos IP en lugar de IPs individuales
  • Eliminar includes innecesarios

Ejemplo de corrección:

# Antes (11 búsquedas - demasiadas)
v=spf1 include:_spf.google.com include:sendgrid.net include:servers.mcsv.net include:spf.protection.outlook.com mx a ~all

# Después (menos búsquedas)
v=spf1 include:_spf.google.com include:sendgrid.net ip4:203.0.113.10 ~all

Problema 3: Fallo de Alineación DMARC

Síntomas: SPF/DKIM pasan pero DMARC falla

Causa: No coincidencia de dominio entre encabezado From y dominios SPF/DKIM

Verificar encabezados de correo:

From: [email protected]
Return-Path: <[email protected]>
DKIM-Signature: d=mail.example.com

Soluciones:

Para alineación SPF: Asegurar que el dominio Return-Path coincida con el dominio From:

# En main.cf de Postfix
smtp_helo_name = example.com

Para alineación DKIM: Asegurar que el dominio de firma DKIM coincida con el dominio From:

# En signing.table de OpenDKIM
*@example.com default._domainkey.example.com

Usar alineación relajada:

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

Problema 4: No Se Reciben Reportes DMARC

Síntomas: No se recibe ningún reporte

Verificar:

# Verificar registro DMARC
dig _dmarc.example.com TXT +short

# Probar que la dirección de correo funciona
echo "Prueba" | mail -s "Prueba" [email protected]

Razones:

  • La dirección de correo no existe o es inalcanzable
  • No hay suficiente volumen de correo (reportes enviados diariamente si existe volumen)
  • Registro DNS incorrecto
  • El proveedor receptor no envía reportes (no todos lo hacen)

Soluciones:

  • Verificar que la dirección de correo recibe correo
  • Esperar 24-48 horas para primeros reportes
  • Enviar más correos de prueba a proveedores principales
  • Usar servicio de reportes de terceros

Problema 5: Correo Legítimo en Cuarentena/Rechazado

Síntomas: Correo válido no se entrega con p=quarantine o p=reject

Diagnóstico:

  1. Verificar reportes DMARC para fuentes fallidas
  2. Verificar que el registro SPF incluye todas las fuentes
  3. Confirmar que DKIM firma todo el correo
  4. Verificar alineación de dominio

Soluciones:

  • Agregar IPs faltantes a SPF
  • Configurar DKIM para todas las fuentes de correo
  • Corregir dominio Return-Path
  • Reducir temporalmente política: p=none o p=quarantine con pct=10

Mejores Prácticas

1. Comenzar Conservador

  • Comenzar con p=none
  • Usar ~all para SPF inicialmente
  • Monitorear reportes completamente
  • Aumentar gradualmente la aplicación

2. Mantener Registros Completos

Documentar todas las fuentes de correo:

Servidor de correo: 203.0.113.10 (mail.example.com)
Servidor web: 203.0.113.20 (www.example.com)
SendGrid: include:sendgrid.net
Monitoreo: 203.0.113.30 (monitor.example.com)

3. Auditorías Regulares

Tareas mensuales:

# Verificar SPF
dig example.com TXT +short | grep spf

# Verificar DMARC
dig _dmarc.example.com TXT +short

# Revisar reportes
# Verificar para nuevas fuentes o fallos

4. Proteger Subdominios

Incluso subdominios no usados:

*.example.com.  TXT  "v=spf1 -all"
_dmarc.*.example.com.  TXT  "v=DMARC1; p=reject"

5. Monitorear Continuamente

  • Revisar reportes DMARC semanalmente
  • Configurar alertas para fallos de autenticación
  • Rastrear tasas de pase/fallo a lo largo del tiempo
  • Investigar cualquier cambio repentino

6. Coordinar con Equipos

  • Informar al equipo de marketing antes de la aplicación
  • Documentar todos los servicios de correo de terceros
  • Probar antes de desplegar nuevos servicios
  • Mantener procedimientos de actualización

Configuración Avanzada

Múltiples Direcciones de Reportes

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

Direcciones de Reportes Externas

Para enviar reportes a dominios externos, el dominio externo debe autorizarlo:

En example.com:

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

En externo.com:

example.com._report._dmarc.externo.com.  TXT  "v=DMARC1"

Política Basada en Porcentaje

v=DMARC1; p=reject; pct=25; rua=mailto:[email protected]

Aplica política de rechazo al 25% del correo fallido, permitiendo despliegue gradual.

Alineación Estricta

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

Requiere coincidencia exacta de dominio (no subdominios) para SPF y DKIM.

Script de Monitoreo

Crear monitoreo automatizado:

sudo nano /usr/local/bin/check-spf-dmarc.sh

Agregar:

#!/bin/bash

DOMAIN="example.com"

echo "=== Verificación SPF y DMARC ==="
echo ""

echo "Registro SPF:"
dig $DOMAIN TXT +short | grep spf

echo ""
echo "Registro DMARC:"
dig _dmarc.$DOMAIN TXT +short

echo ""
echo "Prueba SPF:"
host -t TXT $DOMAIN | grep spf

echo ""
echo "Reportes DMARC (últimos 7 días):"
find ~/Maildir/cur -type f -name "*" -mtime -7 | xargs grep -l "dmarc-reportes" | wc -l

Hacer ejecutable:

sudo chmod +x /usr/local/bin/check-spf-dmarc.sh

Conclusión

Ahora tiene configuración completa de SPF y DMARC, proporcionando autenticación completa de correo electrónico junto con DKIM. Su dominio está protegido contra suplantación, y su entregabilidad de correo está significativamente mejorada.

Logros Clave

  1. SPF Configurado: Servidores de correo autorizados publicados en DNS
  2. DMARC Implementado: Política y reportes activos
  3. Despliegue Progresivo: Estrategia de despliegue seguro en su lugar
  4. Monitoreo Activo: Reportes siendo recibidos y analizados
  5. Mejores Prácticas: Siguiendo estándares de la industria

Pila de Autenticación Completa

Con SPF, DKIM y DMARC todos configurados:

  • SPF: Valida la IP del servidor remitente
  • DKIM: Firma criptográficamente mensajes
  • DMARC: Aplica política y proporciona reportes

Próximos Pasos

  1. Monitorear reportes semanalmente: Revisar reportes agregados de DMARC
  2. Progresar a política más estricta: Mover de none → quarantine → reject
  3. Configurar subdominios: Proteger todos los subdominios
  4. Configurar alertas automatizadas: Ser notificado de problemas
  5. Auditorías regulares: Revisión trimestral de configuración
  6. Educación de equipo: Capacitar al personal sobre autenticación de correo

Recordatorios Importantes

  • Nunca saltar fase de monitoreo: Siempre comenzar con p=none
  • Revisar reportes antes de cambiar política: Entender su ecosistema de correo
  • Documentar todas las fuentes: Mantener inventario de remitentes legítimos
  • Probar completamente: Verificar cada cambio de política
  • Comunicar cambios: Informar a equipos relevantes

Con SPF, DKIM y DMARC correctamente configurados, tiene autenticación de correo de nivel industrial que protege su dominio, mejora la entregabilidad y proporciona visibilidad de su infraestructura de correo. Continúe monitoreando y manteniendo estos sistemas para asegurar protección continua y rendimiento óptimo de correo.