EbenezerIT · Services
Inicio/Guías/Seguridad DNS
SPF · DKIM · DMARC Dificultad Tiempo · ~25 min Descargar PDF Vídeo en YouTube · próximamente

Seguridad DNS: SPF, DKIM y DMARC paso a paso

Si has montado un servidor de correo y los mensajes acaban en spam, no es mala suerte: te faltan los tres registros de autenticación. SPF dice quién puede enviar por ti, DKIM firma cada mensaje y DMARC le cuenta al mundo qué hacer si algo falla.

Pila
SPF · DKIM · DMARC
Tiempo
~25 min
Pasos
5
Probado en
Ubuntu 24.04 LTS
Si prefieres que lo haga yo
50 €

Vas a necesitar acceso al panel DNS de tu dominio (IONOS, Cloudflare, OVH…) y, para DKIM, acceso al servidor de correo (Postfix con OpenDKIM).

Antes de copiar

En los comandos verás tudominio.com: sustitúyelo siempre por tu dominio real.

Paso 01

Registro SPF: quién puede enviar correo

Es un registro TXT en el dominio raíz que indica los servidores autorizados. ~all = sospechoso pero se acepta; -all = rechazo.

spf.txt
@  IN  TXT  "v=spf1 mx a:mail.tudominio.com -all"

Un solo SPF

Solo puede existir un registro SPF por dominio. Si ya tienes uno (de Google Workspace, Mailchimp…), fusiónalo en lugar de crear otro.

Paso 02

DKIM: firmar cada correo saliente

Instala OpenDKIM y genera el par de claves. La pública se publica como TXT bajo un selector (aquí mail._domainkey).

opendkim.sh
sudo apt install -y opendkim opendkim-tools
sudo mkdir -p /etc/opendkim/keys/tudominio.com
cd /etc/opendkim/keys/tudominio.com
sudo opendkim-genkey -s mail -d tudominio.com
sudo chown opendkim:opendkim mail.private
sudo cat mail.txt   # este es el registro DNS que tienes que publicar
Paso 03

Registro DKIM en el DNS

Copia el contenido de mail.txt en el panel DNS como un TXT con nombre mail._domainkey.

dkim.txt
mail._domainkey  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA…"
Paso 04

DMARC: política e informes

Dice qué hacer cuando SPF o DKIM fallan, y te envía informes. Empieza siempre con p=none para observar antes de bloquear.

dmarc.txt
_dmarc  IN  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@tudominio.com; adkim=s; aspf=s"
Paso 05

Validar con herramientas externas

Comprueba los tres registros con dig y haz una prueba real en mail-tester.com: el objetivo es 10/10.

comprobar.sh
dig +short TXT tudominio.com
dig +short TXT mail._domainkey.tudominio.com
dig +short TXT _dmarc.tudominio.com

Endurecer la política

Cuando lleves 2-4 semanas de informes DMARC sin sorpresas, pasa de p=none a p=quarantine y después a p=reject. Nunca saltes directamente a reject.

¿Prefieres que lo haga por ti?

Lo implemento por ti por 50 €, con la configuración de seguridad inicial y esta guía aplicada a tu servidor.

Contratar