toutes les fiches

// comment corriger

Clé DKIM longue dans le DNS : enregistrements TXT découpés en plusieurs chaînes

Une clé DKIM de 2048 bits est trop longue pour une seule chaîne de texte DNS. Découpez-la correctement, sinon la clé est cassée et toutes les signatures échouent.

Ce que ça veut dire

Un enregistrement DKIM contient une clé publique, un long bloc de lettres et de chiffres. Une clé de 2048 bits, la taille recommandée aujourd'hui, fait environ 400 caractères.

Le DNS a une règle : une seule chaîne de texte dans un enregistrement TXT peut contenir au maximum 255 caractères. Une valeur plus longue doit être stockée sous forme de plusieurs chaînes, les unes après les autres, dans le même enregistrement. Les serveurs de réception les recollent sans rien ajouter entre elles.

google._domainkey  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkqh...first part" "...second part...IDAQAB"

Pourquoi c'est important

Si la clé est coupée, contient un espace en trop ou est répartie sur deux enregistrements séparés, le serveur de réception reçoit une clé fausse. Toutes les signatures DKIM échouent alors, et le DMARC peut échouer avec elles. L'email vous semble normal, mais il obtient un moins bon score partout.

Comment vérifier

  • Envoyez un email de test depuis la page d'accueil de Delivmail. Le rapport affiche un DKIM « fail » ou une erreur de clé alors que votre fournisseur indique que le DKIM est activé.
  • Utilisez le scanner de domaine sur /domain-scanner pour consulter vos enregistrements DNS.
  • Regardez l'enregistrement brut :
    dig TXT google._domainkey.yourdomain.com
    Remplacez google par votre sélecteur. Vous devez voir un seul enregistrement, éventuellement avec plusieurs morceaux entre guillemets.

Comment corriger

  1. Copiez à nouveau la clé depuis la page d'administration de votre fournisseur (par exemple la console d'administration Google pour Google Workspace). Copiez toute la valeur, de v=DKIM1 jusqu'à la fin.
  2. Essayez de la coller en une seule valeur. Beaucoup de fournisseurs DNS (Cloudflare, OVH et d'autres) acceptent une valeur longue et la découpent pour vous.
  3. Si l'interface la refuse, découpez-la vous-même en morceaux de moins de 255 caractères, chacun entre guillemets doubles, séparés par un espace :
    "v=DKIM1; k=rsa; p=MIIBIjANBg...(about 200 characters)" "...rest of the key"
    L'espace entre les morceaux entre guillemets est ignoré. Les espaces à l'intérieur des guillemets, eux, ne le sont pas.
  4. Gardez un seul enregistrement. Deux enregistrements TXT séparés contenant chacun une moitié de clé ne fonctionnent pas.
  5. Enregistrez et attendez quelques minutes, puis refaites le test.

Erreurs fréquentes

  • Un retour à la ligne ou un espace copié au milieu de la clé.
  • La clé coupée à 255 caractères par l'interface DNS, avec la fin perdue.
  • Des guillemets dans des guillemets, comme ""v=DKIM1..."".
  • La partie p= absente ou vide : une clé vide signifie « cette clé est révoquée ».

En dernier recours

Si votre fournisseur DNS ne sait pas du tout stocker des enregistrements longs, envisagez de déplacer votre DNS chez un meilleur fournisseur. Certains services d'email permettent aussi de choisir une clé de 1024 bits, qui tient dans une seule chaîne, mais elle est plus faible et ne doit être que temporaire.

Vérifiez que c'est corrigé

La commande dig doit afficher un seul enregistrement dont la valeur recollée correspond exactement à la clé de votre fournisseur. Envoyez ensuite un nouvel email de test depuis la page d'accueil : le DKIM doit passer pour votre domaine.

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