La comprobación del correo mira los registros de correo de un dominio tal como los ven ahora los resolvedores públicos y avisa de lo que está mal: SPF ausente o duplicado, demasiadas búsquedas SPF, claves DKIM débiles, falta de DMARC, nombres de correo con proxy y más. Funciona con zonas delegadas y externas y no cambia nada. Para leerla basta el rol readonly; para forzar una comprobación nueva hace falta tech.
Lanzar la comprobación
Abre DNS › Correo del dominio. Comprobación pública muestra el resultado; Comprobar de nuevo la lanza al momento. El Resumen del dominio tiene una tarjeta Correo con el peor estado.
curl "https://dash.openwaf.dev/v1/orgs/$ORG/zones/$ZONE/email/check?refresh=1" \
-H "Authorization: Bearer $OPENWAF_TOKEN"selectors=s1,s2 añade selectores DKIM que buscar (hasta 10). Sin refresh=1 se reutiliza un resultado del último minuto.
Pide a tu asistente que compruebe el correo de example.com. Llama a email_check (zone, y opcionalmente selectors y refresh) y resume lo que no está ok.
El informe tiene un summary.status (el peor de todas las comprobaciones) y una entrada por comprobación, cada una con un status (ok, warn, fail o info), un code estable y sus params. También lista los proveedores detectados a partir de los MX, los include del SPF y los selectores DKIM.
Qué se comprueba
| Comprobación | Códigos |
|---|---|
mx | mx_ok, mx_missing (fail), mx_null (info: el dominio declara que no recibe correo), mx_mixed (warn: MX de varios proveedores), mx_no_address (fail), mx_cname (warn) |
spf_record | spf_ok, spf_missing (fail), spf_multiple (fail: más de un registro SPF), spf_syntax (fail) |
spf_lookups | spf_lookups_ok, spf_lookups_exceeded (más de 10 búsquedas DNS, contando los include anidados), spf_void_exceeded (más de 2 búsquedas sin respuesta), spf_loop, spf_include_missing, spf_include_invalid |
spf_policy | spf_all_strict (-all), spf_all_soft (~all), spf_all_pass (fail: +all), spf_all_neutral (warn: ?all), spf_ptr (warn) |
dkim | dkim_ok, dkim_weak, dkim_invalid, dkim_revoked, dkim_missing |
dmarc | dmarc_enforced, dmarc_monitoring (info: p=none), dmarc_missing (fail), dmarc_multiple, dmarc_invalid, dmarc_rua_unauthorized (warn) |
proxied | proxied_ok, proxied_mail_name (fail: mail, smtp, imap, pop, mx, autodiscover, autoconfig o un destino MX de la zona tiene proxy), mx_target_proxied (fail: un MX resuelve al borde de OpenWAF) |
conflicts | conflicts_ok, conflict_cname (fail: un CNAME junto a otros registros, o el propio dominio es un CNAME en el DNS público) |
world | world_ok, world_mismatch (warn: los MX, SPF, DMARC o DKIM de la zona no coinciden con lo que ve el mundo), world_external (info) |
Cualquier comprobación puede llevar además lookup_error (warn) cuando un resolvedor no responde.
Búsquedas SPF
SPF permite como mucho 10 búsquedas DNS cuando un receptor evalúa el registro (RFC 7208). include, a, mx, ptr, exists y redirect cuestan una búsqueda cada uno, estén donde estén en el árbol de include; ip4, ip6 y all no cuestan ninguna. El panel muestra el árbol de include con las búsquedas de cada rama.
Selectores DKIM
OpenWAF busca claves DKIM en los selectores que indiques, en los nombres *._domainkey de la zona, en los selectores de los proveedores conocidos y en algunos habituales (default, selector1, k1, s1, dkim, mail…). Las claves RSA de menos de 1024 bits no son válidas; las de menos de 2048 se marcan como débiles.
Configurar un proveedor de correo
DNS › Correo › Configurar el correo genera los registros de un proveedor de buzón (Google Workspace, Microsoft 365, Zoho Mail, Proton Mail, Fastmail, iCloud+ u otro) y de servicios de envío (Amazon SES, Resend, Mailgun, SendGrid, Brevo, MailerLite):
- Proveedores. Elige un buzón (donde se recibe el correo) y los servicios de envío que uses.
- Datos. Pega los valores que muestra cada proveedor: clave DKIM, código de verificación, región…
- Registros. Revisa los registros exactos que se crean, cambian, se quedan o se borran, y la política DMARC. OpenWAF mantiene un único registro SPF que une tus proveedores, cuenta sus búsquedas y nunca endurece un
~allexistente sin pedírselo. - Aplicar. En una zona delegada, los registros se aplican como una versión, que puedes revertir desde el historial. En una zona externa, créalos a mano en tu proveedor de DNS.
Empieza DMARC con p=none y una dirección para los informes: tras 2–4 semanas, cuando los informes muestren solo tus propios servicios, pasa a p=quarantine y después a p=reject. La comprobación te lo recuerda mientras la política siga en none.