Générateur d'enregistrement DKIM

Créez une paire de clés DKIM dans votre navigateur et obtenez l'enregistrement à publier. Vous êtes sur Google Workspace ou Microsoft 365 ? Ils créent la clé : nous montrons où.

Clés créées avec Web Crypto dans votre navigateur, jamais envoyées · RFC 6376, 8301 et 8463 · configurations DKIM de 20 expéditeurs vérifiées
Exemple

Générer une clé pour example.com

Créée dans votre navigateur avec Web Crypto. La clé privée ne quitte jamais cet onglet.

Qui signe vos e-mails ?
Crée sa propre clé
Accepte votre clé
Utilise votre clé
kType de clé

Ce que demande la RFC 8301. Le choix habituel.

sSélecteur
._domainkey.example.com
Un nouveau nom pour chaque nouvelle clé. Les noms datés indiquent quand elle a été créée.
tOptions de l'enregistrement
Avancé
Créée dans votre navigateur avec Web Crypto. La clé privée ne quitte jamais cet onglet.

Votre clé

Clé privée · À garder sur votre serveurCadre isolé : pas de réseau, et aucun autre script de cette page ne peut la lire

Fonctionne hors ligne : coupez votre Wi-Fi et générez à nouveau.

Configurer OpenDKIM

Fichier de clé
# Key file: only the opendkim user may read it
$ sudo mkdir -p /etc/opendkim/keys/example.com
$ sudo nano /etc/opendkim/keys/example.com/s.private
$ sudo chown -R opendkim:opendkim /etc/opendkim/keys
$ sudo chmod 600 /etc/opendkim/keys/example.com/s.private

Plan de rotation

  1. Aujourd'huiPubliez , puis commencez à signer avec.
  2. Dans six moisCréez …, publiez-la à côté de .
  3. BasculeSignez avec ….
  4. 7 à 30 jours plus tardGardez publiée pour les e-mails encore en transit.
  5. RévocationPubliez une clé vide à , ne la supprimez pas.v=DKIM1; k=rsa; p=

Après la publication

Vérification complète: example.comLe lien contient ces réglages, jamais une clé. Interrogé depuis votre navigateur : le résolveur de Cloudflare, celui de Google en second avis.

Comment générer une clé et un enregistrement DKIM ?

Créez une paire de clés RSA 2048, gardez la clé privée sur le serveur qui signe vos e-mails, et publiez la clé publique sous forme d'enregistrement TXT à selector._domainkey.votredomaine (RFC 6376).

Choisissez un nouveau nom de sélecteur pour chaque clé, comme le mois de sa création, pour que l'ancienne clé reste publiée tant que des e-mails signés avec elle sont encore en route.

Installez ensuite la clé privée dans votre signataire et envoyez un message de test : l'en-tête DKIM-Signature nomme le domaine (d=) et le sélecteur (s=) que les destinataires vont consulter.

Clé privéereste sur votre serveur de messageriesigne chaque message
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=s202610; …
Clé publiquepubliée dans le DNSs202610._domainkey.example.comles destinataires vérifient avec elle ✓
Les deux moitiés d'une même clé
Générateur DKIM : clé privée RSA 2048 dans un cadre de navigateur isolé, fichiers OpenDKIM et plan de rotationGénérateur DKIM : clé privée RSA 2048 dans un cadre de navigateur isolé, fichiers OpenDKIM et plan de rotationUne clé privée qu'aucun autre script ne peut lireCréée et gardée dans un cadre isolé qui ne peut pas joindre le réseau.Le format que lit votre signatairePKCS#8, PKCS#1 ou une ligne de base64, choisi pour votre signataire.Zéro requête, et cela fonctionne hors ligneUn compteur en direct des requêtes réseau depuis que vous avez appuyé sur Générer.Les fichiers de votre signataireOpenDKIM, rspamd, Exim, Postfix ou Amazon SES, avec votre domaine et votre sélecteur renseignés.Un sélecteur datéSon nom dit quand la clé a été créée ; le plan de rotation ci-dessous date la prochaine clé et la révocation.
Une clé RSA 2048 pour OpenDKIM créée avec Web Crypto : la clé privée dans un cadre isolé sans réseau, les fichiers du signataire remplis, et le plan de rotation avec de vraies dates.

Dois-je générer ma propre clé DKIM ?

Seulement si votre propre serveur signe vos e-mails : Google Workspace, Microsoft 365 et la plupart des services e-mail créent eux-mêmes la clé et vous montrent l'enregistrement à publier, donc une clé issue d'un générateur ne serait jamais utilisée.

Votre propre clé compte pour Postfix avec OpenDKIM, rspamd, Exim, Haraka, votre propre application, et les services qui en acceptent une, comme Amazon SES (BYODKIM) et Mailgun.

ExpéditeurClé créée parVous publiezSélecteurs
Google Workspacele fournisseurTXT (leur clé)google
Microsoft 365le fournisseurCNAME vers leurs clésselector1, selector2
SendGridle fournisseurCNAME vers leurs cléss1, s2
Mailchimple fournisseurCNAME vers leurs clésk2, k3
Postmarkle fournisseurTXT (leur clé)<date>pm
Brevole fournisseurCNAME vers leurs clésbrevo1, brevo2
Zoho Maille fournisseurTXT (leur clé)zoho
Amazon SESl'un ou l'autreTXT (votre clé)tous
Mailgunl'un ou l'autreTXT (votre clé)tous
OpenDKIMvousTXT (votre clé)tous
rspamdvousTXT (votre clé)tous
EximvousTXT (votre clé)tous
Qui crée la clé

Que contient un enregistrement DKIM ?

Un enregistrement TXT à selector._domainkey.domaine contenant v=DKIM1, le type de clé k= et la clé publique p= ; des balises facultatives limitent les hachages (h=) ou les services (s=) ou marquent la clé comme en test (t=).

Un p= vide signifie que la clé est révoquée. Les clés RSA sont publiées en SubjectPublicKeyInfo, ce qu'exigent OpenDKIM et rspamd ; les clés Ed25519 sous forme des 32 octets bruts.

s202610._domainkey.example.com · TXT
v=DKIM1; k=rsa; h=sha256; s=email; p=MIIBIjANBgkqhkiG9w0BAQ…GQIDAQAB
BaliseSignificationPar défaut
vVersion, en premier si présenteDKIM1
kType de clé : rsa ou ed25519rsa
hHachages autoriséstous
sServices : email ou **
ty = test, s = domaine exactaucune
nNotes pour les humainsaucune
pLa clé publique ; vide = révoquéeobligatoire
Un enregistrement DKIM, balise par balise

RSA 1024, 2048, 4096 ou Ed25519 ?

Utilisez RSA 2048 : 1024 est le minimum que les destinataires acceptent, 4096 met le DNS à rude épreuve, et Ed25519 est courte mais des tests indépendants ont constaté que les grands fournisseurs de messagerie ne la vérifient pas : elle n'aide qu'à côté d'une signature RSA.

Beaucoup d'outils utilisent encore 1024 par défaut : opendkim-genkey, dkim_keygen de rspamd et Microsoft 365. La RFC 8301 demande 2048.

Si vous ajoutez Ed25519, signez aussi en RSA, sous un second sélecteur ; Yahoo peut ne pas valider DMARC quand l'une de plusieurs signatures alignées échoue.

RSA 1024234 caractères · 1le minimum
RSA 2048410 caractères · 2recommandée
RSA 3072582 caractères · 3vérifiez votre signataire
RSA 4096754 caractères · 3peut ne pas tenir en UDP
Ed2551966 caractères · 1non vérifiée par les grands fournisseurs

chaînes de 255 octets: 255, 510, 765

Longueur de l'enregistrement par type de clé

Comment configurer OpenDKIM, rspamd ou Exim ?

Stockez la clé privée là où seul le signataire peut la lire, associez votre domaine et votre sélecteur à elle dans la configuration du signataire, puis redémarrez ; les onglets montrent les fichiers de chaque signataire avec vos noms renseignés.

Vérifiez le résultat en vous envoyant un message et en lisant son résultat DKIM dans les en-têtes, ou avec notre vérificateur DKIM.

OpenDKIM · KeyTable · SigningTable
# /etc/opendkim/KeyTable
s202610._domainkey.example.com example.com:s202610:/etc/opendkim/keys/example.com/s202610.private

# /etc/opendkim/SigningTable
*@example.com s202610._domainkey.example.com

# /etc/opendkim/TrustedHosts
127.0.0.1
localhost
Rspamd · dkim_signing.conf
# /etc/rspamd/local.d/dkim_signing.conf
domain {
  example.com {
    selector = "s202610";
    path = "/var/lib/rspamd/dkim/example.com.s202610.key";
  }
}
# only if example.com is a subdomain: use_esld = false;
# only if users log in without @example.com: allow_username_mismatch = true;

$ sudo rspamadm configtest && sudo systemctl restart rspamd
Les fichiers de votre signataire

Pourquoi mon enregistrement DKIM est-il découpé en plusieurs chaînes ?

Un enregistrement de clé de 2048 bits fait environ 410 caractères, plus qu'une chaîne TXT de 255 octets : le DNS le stocke donc en deux chaînes que les vérificateurs joignent sans rien entre elles.

Cloudflare, Azure et les panneaux de type cPanel acceptent toute la valeur et la découpent ; Route 53 et Google Cloud DNS veulent que vous colliez les chaînes entre guillemets. GoDaddy plafonne une valeur à 1 024 caractères.

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtw0DwsqwlKexAE5H5WDgWwJlEz/C+7FIeL9/Y1TahjkvMvvX+lUQofjxhVmt/yMXVjvgrYb9jZIxtG96iO9qggOWi0vAeClBst4m3rj3O7GjkC/dfbG2BhQBpwJYt6ec76B8y6cyHBZ0+hMWGfAxuLQt/kkiVsaqwRxRQvEuMfnL4L9S8I7evV8GHFihlEgIaM9W8ag4zzL0ZxiEeznDaHYmJDbmgzarExXIY1IuMdpPu1/GmSrq9RCHEifKVvKsOPcmbv2u6xMbW63/EZmPIY78eZRqkioT8TangIPKsP7HEFZRKQwnQJy/OybqexdiFmt29BXBo7A745shhzueGQIDAQAB
1255 B2155 B
s202610._domainkey.example.com. 3600 IN TXT ( "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtw0DwsqwlKexAE5H5WDgWwJlEz/C+7FIeL9/Y1TahjkvMvvX+lUQofjxhVmt/yMXVjvgrYb9jZIxtG96iO9qggOWi0vAeClBst4m3rj3O7GjkC/dfbG2BhQBpwJYt6ec76B8y6cyHBZ0+hMWGfAxuLQt/kkiVsaqwRxRQvEuMfnL4L9S8I7evV8GHFihlEgIa"
	"M9W8ag4zzL0ZxiEeznDaHYmJDbmgzarExXIY1IuMdpPu1/GmSrq9RCHEifKVvKsOPcmbv2u6xMbW63/EZmPIY78eZRqkioT8TangIPKsP7HEFZRKQwnQJy/OybqexdiFmt29BXBo7A745shhzueGQIDAQAB" )
Un enregistrement de 2048 bits, tel que le DNS le stocke

Comment faire tourner les clés DKIM ?

Publiez une nouvelle clé sous un nouveau sélecteur, basculez la signature dessus, gardez l'ancien enregistrement 7 à 30 jours pour les e-mails encore en transit, puis révoquez-le avec un p= vide ; le M3AAWG dit de faire tourner au moins tous les six mois.

Révoquez au lieu de supprimer, pour que les vérificateurs signalent l'ancien sélecteur comme révoqué. Ne réutilisez jamais un nom de sélecteur pour une nouvelle clé.

nov.déc.janv.févr.marsavr.maijuinjuil.
s202611signeconservée 7 à 30 joursp= (révoquée)
s202705signe
Deux sélecteurs, un seul passage de relais

Est-il sûr de générer une clé DKIM en ligne ?

Seulement si la clé est créée dans votre navigateur et jamais envoyée : cette page la crée avec Web Crypto dans un cadre isolé qui ne peut pas joindre le réseau, ce que vous pouvez confirmer dans les outils de développement de votre navigateur.

Certains générateurs en ligne créent la clé sur leur serveur et vous la renvoient dans la réponse, où elle pourrait être journalisée ou conservée. Une clé créée dans votre navigateur n'existe que dans votre onglet jusqu'à ce que vous l'enregistriez.

Aucun autre script de cette page ne peut lire le cadre qui contient la clé, et la page fonctionne hors ligne : coupez votre Wi-Fi et générez à nouveau.

Créée dans votre navigateurcadre isoléfonctionne hors ligne0requêtes réseau
Créée sur un serveurGET /generate?key_size=2048200 {"private_key": "-----BEGIN…"}peut être journalisée
Par où voyage la clé privée

FAQ du générateur d'enregistrement DKIM

Qu'est-ce qu'un enregistrement DKIM ?

Un enregistrement DKIM est un enregistrement TXT à selector._domainkey.votredomaine qui publie la moitié publique d'une paire de clés. Votre serveur de messagerie signe chaque message avec la moitié privée, et les destinataires récupèrent la clé publique pour vérifier que le message vient bien de votre domaine et n'a pas été modifié en route. Il est défini dans la RFC 6376.

Est-il sûr de générer des clés DKIM ici ?

Oui. La paire de clés est créée avec Web Crypto dans votre navigateur, dans un cadre isolé sans accès au réseau, et aucun autre script de la page ne peut la lire. Rien n'est envoyé : vous pouvez voir l'onglet réseau des outils de développement de votre navigateur rester vide, ou couper votre connexion et générer à nouveau.

Quelle taille de clé utiliser ?

RSA 2048. La RFC 8301 demande aux signataires au moins 2048 bits, Gmail et Yahoo la recommandent, et son enregistrement tient chez la plupart des hébergeurs DNS en deux chaînes. 1024 est le minimum que les destinataires acceptent ; ne l'utilisez que si votre hébergeur DNS n'accepte pas les longues valeurs. 4096 donne un long enregistrement qui peut ne pas tenir dans une réponse DNS simple.

Ai-je besoin d'une clé DKIM pour Google Workspace ou Microsoft 365 ?

Non. Google Workspace crée la clé dans l'Admin console et vous montre un enregistrement TXT pour google._domainkey ; Microsoft 365 signe avec des clés derrière deux enregistrements CNAME, selector1 et selector2. Une clé issue d'un générateur ne serait jamais utilisée. Choisissez votre expéditeur dans le générateur pour voir exactement quoi publier.

Qu'est-ce qu'un sélecteur DKIM ?

Un sélecteur est le nom devant ._domainkey qui indique aux destinataires quelle clé récupérer, comme s202610 dans s202610._domainkey.example.com. Il permet à un domaine d'avoir plusieurs clés à la fois, une par serveur, service ou date. Le générateur suggère un sélecteur daté : chaque nouvelle clé reçoit ainsi un nouveau nom et la rotation est facile.

Quel est le format de la clé privée ?

PKCS#8 PEM (BEGIN PRIVATE KEY) par défaut, que lisent OpenDKIM, rspamd et Exim. Vous pouvez passer à PKCS#1 (BEGIN RSA PRIVATE KEY), la forme traditionnelle que certains outils documentent, ou à une ligne de base64 sans en-tête ni sauts de ligne, que demande Amazon SES BYODKIM. Enregistrez-la avec des droits que seul le signataire peut lire.

Un domaine peut-il avoir plusieurs enregistrements DKIM ?

Oui, sous des sélecteurs différents : chaque service qui signe vos e-mails peut avoir le sien, et une rotation en a brièvement deux à vous. Un nom de sélecteur ne doit cependant porter qu'un seul enregistrement TXT ; deux enregistrements au même nom rendent le résultat indéfini, et les vérificateurs peuvent choisir l'un ou l'autre.

Pourquoi mon enregistrement DKIM dépasse-t-il 255 caractères ?

Une clé publique RSA de 2048 bits fait 392 caractères de base64, donc l'enregistrement entier fait environ 410. Une chaîne TXT contient 255 octets au plus : le DNS la stocke donc en deux chaînes, et les vérificateurs les joignent sans rien entre elles. La plupart des hébergeurs DNS la découpent pour vous ; Route 53 et Google Cloud DNS exigent les chaînes entre guillemets.

Que signifie t=y dans un enregistrement DKIM ?

t=y marque la clé comme en test : les vérificateurs doivent traiter un e-mail signé avec elle exactement comme un e-mail non signé, même quand la signature échoue. Utilisez-le pendant que vous vérifiez votre configuration, puis retirez-le, car une clé en test ne donne rien à DMARC. t=s est différent : il exige que l'identité de la signature utilise exactement votre domaine, pas un sous-domaine.

À quelle fréquence faire tourner les clés DKIM ?

Au moins tous les six mois, comme le recommande le M3AAWG. Publiez la nouvelle clé sous un nouveau sélecteur, basculez votre signataire dessus, et gardez l'ancien enregistrement 7 à 30 jours pendant que le courrier signé est encore en transit. Révoquez ensuite l'ancien sélecteur en le publiant avec un p= vide, au lieu de le supprimer.

Il vous manque quelque chose ?Suggérez une fonction ou un nouvel outil