// cómo solucionarlo
Verificación DKIM de Amazon SES pendiente o fallida: cómo solucionarlo
Tu dominio en Amazon SES se queda en "Pending" o muestra DKIM "Failed". Revisa los tres registros CNAME, los errores DNS habituales y cómo relanzar la verificación.
Qué significa
Cuando añades un dominio a Amazon SES con Easy DKIM, SES te da tres registros CNAME y los busca en tu DNS público. Hasta que no encuentra los tres, la identidad del dominio no está verificada y SES no firma tus emails con DKIM (DomainKeys Identified Mail, una firma digital que demuestra que el mensaje procede de tu dominio). El estado de DKIM puede ser:
PENDING: SES todavía no ha encontrado los registros.SUCCESS: se han encontrado los registros; la firma está activa.FAILED: SES ha dejado de buscar, normalmente porque no ha encontrado los registros.TEMPORARY_FAILURE: un problema DNS temporal impide que SES haga la comprobación.NOT_STARTED: la verificación nunca se ha iniciado.
SES busca los registros durante un máximo de 72 horas. Pasado ese tiempo, un dominio que sigue sin encontrarse pasa a Failed.
Por qué ocurre
- Nombre de dominio duplicado. Muchos paneles DNS añaden tu dominio automáticamente. Si pegas
abc123._domainkey.yourdomain.comcomo nombre, el registro real pasa a serabc123._domainkey.yourdomain.com.yourdomain.com. Consulta registro DNS añadido con un nombre incorrecto. - Registros creados como TXT en lugar de CNAME, con el valor recortado o sin la terminación
.dkim.amazonses.com. - Solo se han añadido uno o dos de los tres registros.
- Proxy activado. En Cloudflare, un CNAME con proxy (nube naranja) no se devuelve como CNAME; consulta los registros con proxy de Cloudflare rompen el email.
- Zona DNS equivocada. Has editado la zona en tu registrador, pero el dominio usa otros servidores de nombres (tu hosting, Cloudflare, Route 53...).
- Otra región u otra cuenta. DKIM se configura por región y por cuenta de AWS. Los registros creados para una región no verifican la identidad en otra, salvo que uses la función que replica las claves entre regiones.
Cómo comprobarlo
En la consola de SES, abre Identities, elige tu dominio y mira la sección DKIM: ahí aparecen los tres registros exactos. Tienen este aspecto (los tokens son únicos para ti):
Name: abc123token1._domainkey.yourdomain.com Type: CNAME Value: abc123token1.dkim.amazonses.com
Consulta cada nombre desde un terminal. Una respuesta correcta devuelve el destino dkim.amazonses.com:
dig +short CNAME abc123token1._domainkey.yourdomain.com abc123token1.dkim.amazonses.com. dig +short NS yourdomain.com
El segundo comando muestra qué servidores de nombres alojan realmente tu zona. También puedes pasar tu dominio por el escáner de dominios de Delivmail para ver los registros DNS tal como los ve todo el mundo. Desde la CLI, aws sesv2 get-email-identity --email-identity yourdomain.com muestra DkimAttributes.Status y los tokens esperados.
Cómo solucionarlo
- Copia los tres registros exactamente. Usa los botones de copiar o Download .csv record set. Si tu panel añade el dominio por sí solo, introduce únicamente
abc123token1._domainkeycomo nombre. - Usa el tipo CNAME y, en Cloudflare, configura los registros como DNS only.
- Edita la zona correcta: la que sirven los servidores de nombres que devuelve
dig NS. - Si el dominio está en Route 53 en la misma cuenta de AWS, SES puede publicar los registros por ti.
- Espera. La mayoría de los proveedores publican en minutos, pero SES puede tardar hasta 72 horas en detectarlo. Bajar el TTL no acelera la primera comprobación de un registro totalmente nuevo. Consulta propagación DNS y TTL.
- Si el estado es Failed, corrige primero los registros y después relanza la verificación. AWS recomienda reintentar desde la consola cuando los registros ya resuelvan; un método habitual es desactivar y volver a activar la firma DKIM de la identidad, o eliminar y volver a crear la identidad (esto genera tokens nuevos, así que tendrás que publicar los registros nuevos).
Si usas BYODKIM (tu propia clave) en lugar de Easy DKIM, SES busca un registro TXT en selector._domainkey.yourdomain.com. La clave privada debe ser RSA de 1024 o 2048 bits, codificada en base64, y la clave pública del DNS no debe tener cabecera, pie ni saltos de línea.
Cuando DKIM funcione, piensa también en la dirección de rebote: por defecto SES usa un dominio MAIL FROM de amazonses.com, así que SPF no se alinea con tu dominio. Consulta dominio MAIL FROM personalizado para la alineación DMARC.
Comprueba que está solucionado
La consola debería mostrar la identidad como Verified y DKIM como Successful. Después envía un mensaje a través de SES a tu dirección única de la página de inicio de Delivmail. El informe debería mostrar una firma DKIM válida con d=yourdomain.com. También verás una segunda firma con d=amazonses.com; SES la añade a propósito y es inofensiva. Si recibes un email de SES avisando de que tu configuración DKIM va a ser revocada, significa que los registros se han eliminado: vuelve a ponerlos antes de la fecha límite indicada en ese email.
Comprueba que está solucionado
Un cambio de DNS puede tardar de unos minutos a unas horas. Después, envía un nuevo email de prueba o vuelve a escanear tu dominio.
Guías relacionadas
- Tu dominio no tiene registro SPFTu dominio no indica qué servidores pueden enviar emails en su nombre. Añade un registro TXT y los receptores podrán distinguir tus emails reales de los falsos.
- Error SPF: demasiadas consultas DNS (permerror)SPF permite como máximo 10 consultas DNS. Por encima, todo el registro se rompe y los receptores lo consideran no válido. Así puedes aligerarlo.
- Varios registros SPF en un mismo dominioUn dominio solo debe tener un registro SPF. Con dos o más, SPF falla en todos los emails. Únelos en una sola línea.
- SPF falla: el servidor de envío no está autorizadoTu dominio tiene un registro SPF, pero el servidor que envió tu email no está en él. Averigua qué servicio envió el email y añádelo.
- Tus emails no tienen firma DKIMDKIM añade una firma digital que demuestra que un email viene de verdad de tu dominio. Actívala en tu proveedor de correo y publica su clave en el DNS.