Cómo configurar SPF, DKIM y DMARC en cPanel
Tiempo estimado: 15 minutos
Dificultad: Intermedia ⭐⭐
Requisitos previos: Acceso a cPanel, dominio con DNS gestionado
📋 Introducción
SPF, DKIM y DMARC son tres protocolos de autenticación de correo electrónico esenciales para:
- ✅ Mejorar la entregabilidad de sus correos electrónicos
- 🛡️ Proteger su dominio contra el spoofing y el phishing
- 📬 Evitar que sus correos electrónicos lleguen a spam
- ✨ Respetar los requisitos de Gmail y Yahoo (obligatorio desde febrero de 2024)
🔍 Comprender SPF, DKIM y DMARC
Visión general
| Protocolo | Función | Analogía |
|---|---|---|
| SPF | Verifica que el servidor esté autorizado para enviar | Lista de factores autorizados |
| DKIM | Agrega una firma digital al correo electrónico | Sello de autenticidad |
| DMARC | Define la política en caso de fallo | Instrucciones al destinatario |
SPF (Sender Policy Framework)
SPF permite especificar qué servidores están autorizados para enviar correos electrónicos en su dominio.
Funcionamiento:
- Publica una lista de servidores autorizados en un registro DNS TXT
- El servidor destinatario verifica si el correo electrónico proviene de un servidor autorizado
- Si no está autorizado → el correo electrónico puede ser rechazado o marcado como spam
Ejemplo de registro SPF:
v=spf1 +a +mx +ip4:123.456.789.0 include:_spf.google.com ~all
DKIM (DomainKeys Identified Mail)
DKIM agrega una firma criptográfica a cada correo electrónico saliente.
Funcionamiento:
- Su servidor firma cada correo electrónico con una clave privada
- La clave pública se publica en sus DNS
- El destinatario verifica la firma con la clave pública
- Si la firma es válida → el correo electrónico es auténtico y no ha sido modificado
Ejemplo de registro DKIM:
default._domainkey.votredomaine.com IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBA..."
DMARC (Domain-based Message Authentication, Reporting & Conformance)
DMARC define qué debe hacer el destinatario si SPF o DKIM fallan.
Funcionamiento:
- Define una política (ninguna, cuarentena, rechazo)
- El destinatario aplica esta política a los correos no autenticados
- Recibe informes sobre intentos de suplantación
Ejemplo de registro DMARC:
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
📊 Tabla Resumen
| Elemento | SPF | DKIM | DMARC |
|---|---|---|---|
| Tipo de registro | TXT | TXT | TXT |
| Nombre | @ o dominio | default._domainkey | _dmarc |
| Obligatorio | ✅ Sí | ✅ Sí | ⚠️ Recomendado |
| Configurado automáticamente | ✅ cPanel | ✅ cPanel | ❌ Manual |
| Protege contra | Servidores no autorizados | Falsificación de contenido | Suplantación de identidad |
⚙️ Método 1: Configuración Automática (Entregabilidad de Correo Electrónico)
cPanel ofrece una herramienta Entregabilidad de Correo Electrónico que configura automáticamente SPF y DKIM.
Etapa 1: Acceder a Entregabilidad de Correo Electrónico
- Inicie sesión en cPanel
- En la sección Correo, haga clic en Entregabilidad de Correo Electrónico

Etapa 2: Verificar el estado actual
Verá la lista de sus dominios con su estado:
| Estado | Significado |
|---|---|
| ✅ Válido | SPF y DKIM configurados correctamente |
| ⚠️ Existen Problemas | Configuración faltante o incorrecta |
Etapa 3: Reparar automáticamente
Si se detectan problemas:
- Haga clic en Reparar junto al dominio correspondiente
- cPanel mostrará los registros sugeridos
- Haga clic en Reparar para aplicar automáticamente

💡 Nota: Este método solo funciona si sus DNS son gestionados por el mismo servidor que cPanel. De lo contrario, utilice el método manual.
Etapa 4: Verificar la configuración
Después de la reparación, el estado debería cambiar a Válido ✅
Puede hacer clic en Gestionar para ver los detalles de cada registro.
⚙️ Método 2: Configuración Manual
Si sus DNS son gestionados en otro lugar (Cloudflare, OVH, Gandi, etc.), debe agregar los registros manualmente.
Etapa 1: Obtener los valores en cPanel
- Vaya a Correo → Entregabilidad de Correo Electrónico
- Haga clic en Gestionar junto a su dominio
- Tome nota de los valores sugeridos para SPF y DKIM
Etapa 2: Agregar el registro SPF
En cPanel (Editor de Zona)
- Vaya a Dominios → Editor de Zona
- Haga clic en Gestionar junto a su dominio
- Haga clic en + Agregar un registro → Agregar Registro TXT
| Campo | Valor |
|---|---|
| Nombre | votredomaine.com (o @) |
| TTL | 14400 |
| Tipo | TXT |
| Registro | v=spf1 +a +mx +ip4:VOTRE_IP include:_spf.google.com ~all |
- Haga clic en Guardar Registro
Registros SPF según su configuración
| Situación | Registro SPF |
|---|---|
| Correo cPanel únicamente | v=spf1 +a +mx ~all |
| Con MailChannels | v=spf1 +a +mx include:relay.mailchannels.net ~all |
| Con Google Workspace | v=spf1 include:_spf.google.com ~all |
| Con Microsoft 365 | v=spf1 include:spf.protection.outlook.com ~all |
| Con SendGrid | v=spf1 include:sendgrid.net ~all |
| Con Mailchimp | v=spf1 include:servers.mcsv.net ~all |
| Combinado (cPanel + Google) | v=spf1 +a +mx include:_spf.google.com ~all |
Comprender la sintaxis SPF
| Elemento | Significado |
|---|---|
v=spf1 | Versión del protocolo SPF |
+a | Permite la IP del dominio (registro A) |
+mx | Permite los servidores MX del dominio |
+ip4:123.456.789.0 | Permite una IP específica |
include:dominio.com | Incluye los servidores autorizados de otro dominio |
~all | Soft fail: marcar como sospechoso si no está autorizado |
-all | Hard fail: rechazar si no está autorizado |
?all | Neutral: no verificar |
⚠️ Importante: Un dominio solo puede tener un registro SPF. Si utiliza varios servicios, combínelos en un solo registro.
Paso 3: Agregar el registro DKIM
Obtener la clave DKIM
- En Email Deliverability, haga clic en Manage
- En DKIM, copie el valor completo de la clave pública
Agregar el registro
- En Zone Editor, haga clic en + Agregar un registro → Add TXT Record
| Campo | Valor |
|---|---|
| Nombre | default._domainkey.tudominio.com |
| TTL | 14400 |
| Tipo | TXT |
| Registro | v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB... (tu clave) |
- Haga clic en Guardar Registro
💡 Nota: El selector
defaultpuede variar según su configuración. Algunos servicios utilizan otros selectores comoselector1, etc.
Paso 4: Agregar el registro DMARC
DMARC no se configura automáticamente por cPanel. Debe agregarlo manualmente.
- En Zone Editor, haga clic en + Agregar un registro → Add TXT Record
| Campo | Valor |
|---|---|
| Nombre | _dmarc.tudominio.com (o _dmarc) |
| TTL | 14400 |
| Tipo | TXT |
| Registro | v=DMARC1; p=none; rua=mailto:[email protected] |
- Haga clic en Guardar Registro
📝 Configuraciones DMARC Recomendadas
Política progresiva (recomendado para comenzar)
Comience con una política flexible y luego refuerce progresivamente:
Fase 1: Monitoreo (2-4 semanas)
v=DMARC1; p=none; rua=mailto:[email protected]; pct=100
p=none: No hacer nada, solo monitorearrua=mailto:...: Recibir informes agregados
Fase 2: Cuarentena (2-4 semanas)
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=25
p=quarantine: Poner en spam los correos no autenticadospct=25: Aplicar al 25% de los correos (prueba progresiva)
Fase 3: Cuarentena completa
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
Fase 4: Rechazo (protección máxima)
v=DMARC1; p=reject; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100
p=reject: Rechazar completamente los correos no autenticadosruf=mailto:...: Recibir informes forenses detallados
Parámetros DMARC explicados
| Parámetro | Valores | Descripción |
|---|---|---|
v | DMARC1 | Versión (obligatorio) |
p | none, quarantine, reject | Política para el dominio |
sp | none, quarantine, reject | Política para los subdominios |
pct | 0-100 | Porcentaje de correos a filtrar |
rua | mailto:[email protected] | Dirección para informes agregados |
ruf | mailto:[email protected] | Dirección para informes forenses |
adkim | r (relajado), s (estricto) | Aliniamiento DKIM |
aspf | r (relajado), s (estricto) | Aliniamiento SPF |
fo | 0, 1, d, s | Opciones de informe de fallo |
Ejemplos de configuraciones DMARC
| Caso de uso | Registro DMARC |
|---|---|
| Principiante (monitoreo) | v=DMARC1; p=none; rua=mailto:[email protected] |
| Estándar | v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100 |
| Estricto | v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100 |
| Completo con subdominios | v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1; pct=100 |
✅ Verificar la Configuración
Método 1: Email Deliverability cPanel
- Regrese a Email → Email Deliverability
- Verifique que el estado sea Válido ✅ para su dominio
Método 2: Herramientas en línea
| Herramienta | URL | Verifica |
|---|---|---|
| MXToolbox | mxtoolbox.com/SuperTool.aspx | SPF, DKIM, DMARC |
| Mail Tester | mail-tester.com | Puntuación global + autenticación |
| DMARC Analyzer | dmarcanalyzer.com/dmarc/dmarc-record-check | DMARC |
| Google Admin Toolbox | toolbox.googleapps.com/apps/checkmx | MX, SPF, DKIM |
| DKIM Validator | dkimvalidator.com | DKIM |
| EasyDMARC | easydmarc.com/tools | SPF, DKIM, DMARC |
Método 3: Comandos de verificación
Verificar SPF
# Linux/Mac
dig TXT tudominio.com +short
# Windows
nslookup -type=TXT tudominio.com
Resultado esperado:
"v=spf1 +a +mx ~all"
Verificar DKIM
# Linux/Mac
dig TXT default._domainkey.tudominio.com +short
# Windows
nslookup -type=TXT default._domainkey.tudominio.com
Resultado esperado:
"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."
Verificar DMARC
# Linux/Mac
dig TXT _dmarc.tudominio.com +short
# Windows
nslookup -type=TXT _dmarc.tudominio.com
Resultado esperado:
"v=DMARC1; p=quarantine; rua=mailto:[email protected]"
Método 4: Enviar un correo electrónico de prueba
- Envíe un correo electrónico a [email protected]
- Recibirá un informe detallado con los resultados de SPF, DKIM y DMARC
O use mail-tester.com:
- Vaya a mail-tester.com
- Copie la dirección de correo electrónico temporal proporcionada
- Envíe un correo electrónico a esta dirección
- Consulte su puntuación y los detalles de autenticación
📧 Configuración para Servicios Externos
Google Workspace (Gmail profesional)
SPF
v=spf1 include:_spf.google.com ~all
DKIM
- En la consola de Google Admin, vaya a Aplicaciones → Google Workspace → Gmail → Autenticar correos electrónicos
- Genere la clave DKIM
- Agregue el registro TXT proporcionado por Google
Microsoft 365 (Outlook profesional)
SPF
v=spf1 include:spf.protection.outlook.com ~all
DKIM
- En el Centro de administración de Microsoft 365
- Configuración → Domaines → Seleccione su dominio
- Copie los registros CNAME DKIM proporcionados
Servicios de envío de correos electrónicos
| Servicio | Incluir SPF | Documentación DKIM |
|---|---|---|
| SendGrid | include:sendgrid.net | Panel de SendGrid |
| Mailchimp | include:servers.mcsv.net | Cuenta → Configuración → Dominios verificados |
| Sendinblue | include:sendinblue.com | Configuración → Remitentes → Domaines |
| Mailjet | include:spf.mailjet.com | Configuración de la cuenta → Domaines |
| Amazon SES | include:amazonses.com | Consola AWS SES |
Ejemplo: cPanel + Mailchimp combinados
v=spf1 +a +mx include:servers.mcsv.net ~all
🔧 Solución de problemas
SPF: "Demasiadas búsquedas DNS"
Problema: SPF está limitado a 10 búsquedas DNS como máximo.
Solución:
- Reduzca el número de
include: - Utilice IP directas (
ip4:) en lugar deinclude: - Utilice un servicio de "SPF flattening"
SPF: "Múltiples registros SPF"
Problema: Tiene varios registros SPF.
Solución: Fusionar todos sus registros en uno solo:
❌ Incorrecto (2 registros):
v=spf1 +a +mx ~all
v=spf1 include:_spf.google.com ~all
✅ Correcto (1 solo registro):
v=spf1 +a +mx include:_spf.google.com ~all
DKIM: "No se encontró ningún registro DKIM"
| Causa | Solución |
|---|---|
| Selector incorrecto | Verifique el nombre del selector (default, google, etc.) |
| Propagación DNS | Espere 24-48 horas después de la creación |
| Clave truncada | Verifique que la clave esté completa |
| Dominio incorrecto | Verifique el formato selector._domainkey.dominio.com |
DKIM: Clave demasiado larga
Si su clave DKIM supera los 255 caracteres, debe dividirse:
"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..." "...suite de la clé..."
Algunos DNS manejan esto automáticamente, otros requieren una división manual.
DMARC: "No se encontró ningún registro DMARC"
| Causa | Solución |
|---|---|
| Nombre incorrecto | Debe ser exactamente _dmarc.tudominio.com |
| Propagación DNS | Espere algunas horas |
| Sintaxis incorrecta | Verifique con un validador DMARC |
Correos electrónicos siempre en spam
Verifique en orden:
- ✅ SPF configurado y válido
- ✅ DKIM configurado y válido
- ✅ DMARC configurado
- ✅ PTR (Reverse DNS) configurado
- ✅ IP no está en lista negra (verifique en mxtoolbox.com/blacklists.aspx)
- ✅ Contenido del correo electrónico (sin palabras spam, buena proporción texto/imagen)
📊 Leer los Informes DMARC
Formato de los informes
Los informes DMARC se envían en XML. Ejemplo simplificado:
<record>
<row>
<source_ip>123.456.789.0</source_ip>
<count>10</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>pass</spf>
</policy_evaluated>
</row>
</record>
Servicios de análisis DMARC
Los informes XML son difíciles de leer. Utilice un servicio gratuito:
| Servicio | URL | Funcionalidades |
|---|---|---|
| DMARC Analyzer | dmarcanalyzer.com | Gratuito limitado |
| Postmark DMARC | dmarc.postmarkapp.com | Gratuito |
| EasyDMARC | easydmarc.com | Gratuito limitado |
| URIports | uriports.com | Gratuito |
| DMARCLY | dmarcly.com | Gratuito limitado |
⚠️ Buenas Prácticas
Por hacer ✅
| Práctica | Razón |
|---|---|
Comenzar DMARC en modo p=none | Observar antes de bloquear |
| Probar después de cada modificación | Evitar interrupciones |
| Monitorear los informes DMARC | Detectar problemas |
| Actualizar SPF si cambia de servicio | Mantener la lista actualizada |
Usar ~all en lugar de -all al principio | Más tolerante a errores |
A evitar ❌
| Práctica | Riesgo |
|---|---|
Pasar directamente a p=reject | Bloquear sus propios correos electrónicos |
| Olvidar incluir todos los servicios de envío | Correos electrónicos rechazados |
| Tener varios registros SPF | Configuración inválida |
| Ignorar los informes DMARC | Perder problemas |
| Copiar configuraciones sin adaptarlas | Valores incorrectos |
📝 Resumen
CONFIGURACIÓN DE EMAIL DE AUTENTICACIÓN - CPANEL
┌─────────────────────────────────────────────────────────────┐
│ SPF │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nombre: tudominio.com (o @) │
│ Valor: v=spf1 +a +mx ~all │
│ → Permite a los servidores enviar en nombre de su dominio │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ DKIM │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nombre: default._domainkey.tudominio.com │
│ Valor: v=DKIM1; k=rsa; p=SU_CLAVE_PÚBLICA │
│ → Firma cada email criptográficamente │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ DMARC │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nombre: _dmarc.tudominio.com │
│ Valor: v=DMARC1; p=none; rua=mailto:[email protected] │
│ → Define la política si SPF/DKIM falla │
└─────────────────────────────────────────────────────────────┘
CONFIGURACIÓN AUTOMÁTICA (cPanel):
1. Email → Entregabilidad de Email
2. Hacer clic en "Reparar" si se detectan problemas
3. Agregar DMARC manualmente en el Editor de Zona
PROGRESIÓN DMARC RECOMENDADA:
Fase 1: p=none (monitoreo) → 2-4 semanas
Fase 2: p=quarantine; pct=25 → 2-4 semanas
Fase 3: p=quarantine; pct=100 → 2-4 semanas
Fase 4: p=reject; pct=100 → Protección máxima
VERIFICACIÓN:
├── Entregabilidad de Email cPanel → Estado "Válido"
├── mail-tester.com → Puntuación 10/10
├── mxtoolbox.com → Verificación completa
└── dig TXT tudominio.com → Ver registros
