SPF y DMARC cuando el servidor de correo es tuyo
Esta página no explica qué es SPF. Si tu MX apunta a máquinas vuestras —un Exchange, un Postfix, un appliance— eso ya lo sabes. Lo que falla en organizaciones como la tuya no suele ser la sintaxis: es que el registro deje de cubrir lo que hoy envía. Una aplicación de citas. Un boletín que contrató otro departamento. Una sede que manda por su cuenta. Eso no se ve desde fuera —el DNS no dice quién ni cuándo—, pero es lo que aparece en cuanto se leen los informes.
1. Cómo está hoy tu grupo
De los 1.072 dominios españoles de energía y sanidad que medimos, 251 no pudieron atribuirse a ninguna plataforma de nuestra lista por sus registros MX y SPF públicos. Ese grupo incluye servidores operados por la propia organización y también proveedores que no reconocemos: desde fuera no se distinguen. Así está, medido el 2026-08-14:
| Qué se ve | Dominios | De 251 | |
|---|---|---|---|
| No piden cuarentena ni rechazo en DMARC | 176 | 70% | sin registro, o con p=none |
| No publican DMARC | 95 | 38% | |
DMARC en p=none | 81 | 32% | observa, no protege |
DMARC en p=quarantine | 51 | 20% | |
DMARC en p=reject | 24 | 10% | |
| DMARC sin dirección de informes | 72 | 29% | se renuncia a la vía más rápida de inventario |
| Sin SPF | 20 | 8% | |
SPF terminado en ~all o ?all | 110 | 44% | |
| SPF por encima de las 10 consultas DNS | 2 | 1% | deja de evaluarse entero |
p restrictivo pero sp=none explícito | 2 | 1% |
«Servidor propio» aquí quiere decir no atribuible con nuestra lista, no «mal configurado» — y no es una etiqueta que hayamos verificado uno a uno. Lo que sí se ve en la tabla es lo que publica cada dominio.
2. El inventario de emisores: el trabajo que la documentación se salta
La sintaxis de SPF es trivial. Saber qué meter dentro, no. Antes de tocar el registro, la lista:
- Los logs del MTA de salida: quién ha enviado en los últimos noventa días.
- Los informes RUA de DMARC, que es la mejor herramienta de descubrimiento —y por eso se publica DMARC antes de tocar nada—, pero parcial: solo reportan los receptores que participan, llegan agregados y con retraso, y un envío estacional (nóminas, certificados, una campaña anual) puede tardar semanas en aparecer. No autorices una IP solo porque sale, ni retires una fuente solo porque no sale.
- Las aplicaciones internas que mandan correo: monitorización, RRHH, gestión de citas, helpdesk, encuestas.
- Los contratos de otros departamentos: boletines, marketing, mensajería transaccional.
Sin esta lista, cualquier cambio en el SPF es a ciegas.
3. SPF con muchos emisores: los límites que os tocan a vosotros
El tope de diez términos que consultan DNS
No son «diez consultas»: son diez términos que requieren DNS durante una
evaluación —include, a, mx, exists,
redirect— contando los que arrastran los includes de forma recursiva. Con
buzón propio + boletín + facturación + monitorización se llega sin darse cuenta.
Pasado el tope el resultado es permerror, no «sin SPF»: hay receptores que
lo penalizan o lo rechazan. Y recuerda que solo puede haber un registro
v=spf1 por dominio —dos dan permerror— y que lo que va detrás del
all final no se evalúa nunca.
Rangos demasiado anchos
Un ip4: con máscara autoriza todas las direcciones del prefijo. Es
correcto si todas pueden enviar legítimamente y están bajo tu control; deja de serlo en
cuanto incluye direcciones compartidas, reasignables o que ya no administras. Publica solo
los rangos de salida estables y revisa los que llevan años ahí.
Y el debate de ~all contra -all
Para el resultado de DMARC son equivalentes: ninguno de los dos produce el
pass que DMARC necesita. Fuera de ese cálculo no lo son —un receptor puede
usar SPF por su cuenta, y también se aplica al HELO—: -all afirma
que esa IP no está autorizada y ~all es una afirmación débil que no debería
provocar un rechazo por sí sola. Usa -all cuando el inventario te permita
afirmarlo de verdad.
4. Subdominios, sedes y delegaciones
SPF no se hereda, y se evalúa sobre el dominio que se usa como identidad —el
MAIL FROM, o el HELO en algunos casos—, no sobre cualquier
subdominio que aparezca en el From:. Cada identidad que envíe necesita el
suyo; y a un nombre que existe y no debe enviar se le puede poner
v=spf1 -all.
En DMARC manda el registro propio del subdominio si lo tiene. Si no, sp
cubre los subdominios que existen y np los que no existen; a
falta de ambos se aplica p. Es la parte que más se olvida en organizaciones
con decenas de organismos colgando del mismo dominio, cada uno con su equipo.
5. El proveedor que contrató otro departamento
El patrón es: un subdominio visible dedicado por proveedor, con su
d= de DKIM y su MAIL FROM alineados con ese subdominio, su propia
clave y selector, y su propio DMARC. Así un proveedor que se va no obliga a tocar el
dominio principal.
Pero conviene saber qué no hace por sí solo: con el alineamiento relajado que
viene por defecto, quien controle el SPF o una clave DKIM de un subdominio puede autenticar
un From: del dominio principal. Si necesitas una frontera de verdad, el
alineamiento estricto —tras comprobar todos los flujos— o un dominio aparte.
Y con las claves: una distinta por sistema, publicar el selector nuevo antes de firmar con él, conservar el viejo un tiempo razonable y después retirarlo. Compartir la misma clave entre varios selectores se lleva por delante buena parte del aislamiento.
Lo que de verdad lo sostiene no es técnico: que no se pueda contratar envío de correo sin que pase por quien mantiene el DNS. El inventario es descubrir; esto es gobernar lo descubierto.
6. De p=none a reject sin perder correo legítimo
- Si aún no tienes DMARC, publícalo en
p=nonecon dirección de informes y léelos. No pide al receptor que cambie su disposición, aunque tampoco garantiza la entrega: cada receptor aplica además sus propias reglas. Si ya estás enquarantineorejecty funciona, no lo bajes. - Corrige el alineamiento, que es lo que decide DMARC. En un mensaje recibido
fuera de la organización mira tres cosas: el dominio del
From:, el delReturn-Pathque pasa SPF y eld=de la firma DKIM que pasa. DMARC pasa solo si al menos uno de los dos autenticados está alineado con elFrom:. Una firma válida de un proveedor no vale si sud=no es tu dominio. - Sube a
p=quarantinecuando estés preparado para aplicarlo al conjunto. Elpctparcial que se recomendaba antes se retiró del estándar porque los receptores lo aplicaban de forma inconsistente: no cuentes con una transición por porcentaje. - Y decide si el rechazo te toca. El RFC vigente desaconseja
p=rejecten dominios cuyos usuarios participan en listas de correo, porque el reenvío rompe la autenticación. Si lo adoptas, que todos los flujos lleven DKIM alineado: no dependas solo de SPF.
Cuánto tiempo en cada fase depende de tu volumen y de tus emisores. Como orientación, al
menos un mes en cada una, y más si tienes envíos estacionales. Y el aviso honesto: un
p=none que nadie lee no es una fase, es donde se quedan los despliegues
que empezaron sin inventario.
7. El transporte, que aquí sí os toca
Quien opera sus propios MX puede además cerrar el cifrado en tránsito, y el orden
importa: comprobar primero STARTTLS, los nombres de todos los MX y que los
certificados sean válidos; publicar MTA-STS en testing junto con TLS-RPT;
corregir lo que lleguen a reportar; y solo entonces pasar a enforce. En
enforce, un emisor compatible no entregará por un MX sin TLS o con el
certificado o el nombre mal. TLS-RPT por su cuenta da visibilidad, no impone nada.
8. Lo que exige la norma, sin humo
El ENS aplica a las administraciones públicas y a quien les presta servicios, y sus medidas de protección del correo electrónico están desarrolladas en las guías del CCN. Sobre la NIS2: a día de hoy no está transpuesta en España; lo exigible hoy es lo que ya obligaba. Lo ponemos al final a propósito: quien llega aquí viene a resolver, no a que le agiten la norma.
Compruébalo aquí mismo
Antes o después de tocar el DNS: escribe tu dominio y mira qué se ve desde fuera. Sin registro, sin tocar tus sistemas y sin salir de esta página.
¿Prefieres no tocar el DNS tú?
Lo delicado no son los tres registros: es descubrir todos los sistemas que envían en tu nombre (facturación, CRM, marketing) y llegar a rechazo sin cortar correo legítimo. ALTRUIA Escudo lo hace por fases y te deja el expediente por escrito. Dinos tu dominio y te decimos si merece la pena en tu caso.
Preguntas frecuentes
¿Servidor propio significa mal configurado?
No. Significa que al mirar sus registros MX y SPF públicos no reconocimos ninguna plataforma de nuestra lista. Puede ser un servidor vuestro o un proveedor que todavía no reconocemos: desde fuera no se distingue.
¿~all o -all?
Con DMARC publicado, la discusión pierde casi todo su interés: para la evaluación de DMARC un softfail y un fail cuentan igual, ninguno es «pasa». La energía rinde más puesta en tener DMARC y leer sus informes.
¿SPF se hereda en los subdominios?
No. Cada subdominio que envíe necesita el suyo. Lo que sí se hereda es la política DMARC del dominio raíz, y se puede afinar con «sp=».
¿Qué NO podéis ver desde fuera?
Vuestros emisores internos, vuestros logs y cómo tenéis montada la salida. El comprobador es una revisión externa y pasiva de registros públicos: dice cómo os ve un tercero, no cómo estáis por dentro.