toutes les fiches

// comment corriger

Domaine Mailgun non vérifié : corrigez les enregistrements SPF, DKIM, MX et CNAME

Mailgun affiche votre domaine comme non vérifié ou refuse d'envoyer depuis celui-ci. Ajoutez les bons SPF et DKIM, évitez les erreurs DNS courantes et validez.

Ce que ça veut dire

Quand vous ajoutez un domaine d'envoi dans Mailgun, celui-ci vous donne des enregistrements DNS à publier. Tant que Mailgun ne les trouve pas, le domaine est non vérifié (unverified) et vous ne pouvez pas envoyer normalement depuis celui-ci. Les tentatives d'envoi sont refusées ; le message indique généralement que le domaine n'est pas autorisé à envoyer parce qu'il n'est pas vérifié et nécessite une configuration DNS.

La documentation de Mailgun précise que ce sont les deux enregistrements TXT, SPF et DKIM, qui valident le domaine pour l'envoi. Les enregistrements MX (pour recevoir les réponses ou utiliser les Routes) et le CNAME de suivi (pour les ouvertures, les clics et les désinscriptions) sont recommandés mais servent à d'autres fonctions.

Pourquoi cela arrive

  • Enregistrements au mauvais nom. Mailgun suggère généralement un sous-domaine comme mg.yourdomain.com. Les enregistrements doivent alors se trouver sur mg.yourdomain.com et selector._domainkey.mg.yourdomain.com, pas sur le domaine racine. Certaines interfaces ajoutent aussi le domaine deux fois (par exemple mg.yourdomain.com.yourdomain.com).
  • Deux enregistrements SPF sur le même nom : l'ancien et celui de Mailgun. Le SPF échoue alors en permerror. Fusionnez-les en un seul (voir plusieurs enregistrements SPF sur un domaine).
  • Clé DKIM abîmée : tronquée au collage, guillemets ajoutés dans la valeur, ou longue clé mal découpée.
  • Proxy ou CNAME flattening : chez Cloudflare, les enregistrements proxifiés cassent les enregistrements mail (voir les enregistrements proxifiés Cloudflare cassent l'email).
  • Un CNAME sur le même nom que l'enregistrement TXT SPF : un CNAME masque tous les autres enregistrements de ce nom.
  • Mauvaise zone DNS : enregistrements ajoutés chez le registrar alors que le domaine utilise d'autres serveurs de noms.
  • Valeurs de région mélangées : les domaines EU utilisent des hôtes EU pour le MX et le suivi (mxa.eu.mailgun.org, eu.mailgun.org).

Comment vérifier

Dans le panneau de contrôle Mailgun, ouvrez Send, Domains, votre domaine, puis la section des enregistrements DNS. Chaque enregistrement affiche un statut. Copiez les valeurs exactes depuis cet écran : elles sont propres à votre domaine et à votre région. Pour un domaine US, elles ressemblent généralement à ceci :

mg.yourdomain.com.                     TXT    "v=spf1 include:mailgun.org ~all"
selector._domainkey.mg.yourdomain.com. TXT    "k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."
mg.yourdomain.com.                     MX 10  mxa.mailgun.org.
mg.yourdomain.com.                     MX 10  mxb.mailgun.org.
email.mg.yourdomain.com.               CNAME  mailgun.org.

Le nom du sélecteur DKIM (la partie avant ._domainkey) est choisi par Mailgun. Les domaines plus récents avec Automatic Sender Security peuvent afficher le DKIM sous forme d'enregistrements CNAME au lieu d'une clé TXT, afin que Mailgun puisse faire tourner les clés lui-même ; publiez-les exactement comme indiqué. Interrogez ensuite le DNS vous-même :

dig +short TXT mg.yourdomain.com
dig +short TXT selector._domainkey.mg.yourdomain.com
dig +short NS yourdomain.com

Le scanner de domaine de Delivmail lit aussi les enregistrements SPF, DMARC, MX et DKIM de votre domaine d'envoi tels que le monde extérieur les voit.

Comment corriger

  1. Utilisez un sous-domaine dédié comme mg.yourdomain.com si votre domaine racine reçoit déjà ses emails ailleurs. Ne faites pas pointer les MX de votre domaine racine vers Mailgun, sauf si Mailgun doit recevoir tout son courrier.
  2. Publiez un seul enregistrement SPF par nom. Sur un sous-domaine dédié, v=spf1 include:mailgun.org ~all suffit. Si vous envoyez aussi depuis le domaine racine avec d'autres services, ajoutez include:mailgun.org à l'enregistrement existant au lieu d'en créer un second.
  3. Collez la valeur DKIM d'un seul bloc, sans guillemets en plus. Si votre fournisseur limite les chaînes TXT à 255 caractères, laissez-le découper la valeur en plusieurs chaînes dans le même enregistrement.
  4. Désactivez le proxy et supprimez tout CNAME en conflit sur les mêmes noms.
  5. Cliquez sur « Verify DNS settings » dans les réglages du domaine, ou attendez les vérifications automatiques de Mailgun. Les nouveaux enregistrements apparaissent généralement en quelques minutes, mais les caches peuvent retarder la vérification ; une réponse « aucun enregistrement » mise en cache peut durer jusqu'à l'expiration de son TTL.
  6. Ajoutez un DMARC sur votre domaine racine si vous n'en avez pas, par exemple _dmarc.yourdomain.com TXT "v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com". Le DKIM de Mailgun sur mg.yourdomain.com s'aligne avec une adresse From en mg.yourdomain.com, et aussi avec yourdomain.com en mode relaxed.

En attendant que le domaine soit vérifié, vous pouvez tester avec le domaine sandbox, qui ne livre qu'aux destinataires autorisés : voir sandbox Mailgun : destinataires autorisés uniquement.

Vérifier que c'est corrigé

Tous les enregistrements doivent apparaître comme vérifiés dans le panneau Mailgun. Envoyez un message via Mailgun depuis votre domaine vérifié à l'adresse unique de la page d'accueil de Delivmail : le rapport doit montrer un SPF valide pour mg.yourdomain.com (Mailgun l'utilise comme domaine de rebond), un DKIM valide avec d=mg.yourdomain.com (ou votre domaine), et un DMARC valide. Renvoyez ensuite les messages qui avaient échoué.

Vérifiez que c'est corrigé

Une modification DNS peut prendre de quelques minutes à quelques heures. Ensuite, envoyez un nouvel email de test ou scannez à nouveau votre domaine.

Fiches liées