🛠 Outils IT
🛠 101 outils 📚 39 docs
🤖 Assistant 🌙

DKIM & DMARC - Authentifier sa messagerie Google Workspace (DNS chez Wix)

1. SPF, DKIM, DMARC : à quoi ça sert

Ces trois mécanismes DNS prouvent qu'un e-mail envoyé au nom de votre domaine est légitime. Sans eux, vos messages partent en spam et n'importe qui peut usurper votre domaine. Depuis 2024, Google et Yahoo exigent au minimum SPF + DKIM (et DMARC pour les gros volumes).

Mécanisme Rôle Type DNS
SPF Liste les serveurs autorisés à envoyer pour le domaine TXT (racine)
DKIM Signe cryptographiquement chaque e-mail (clé publique en DNS) TXT (google._domainkey)
DMARC Dit quoi faire si SPF/DKIM échouent + envoie des rapports TXT (_dmarc)
Le trio fonctionne ensemble : SPF et DKIM authentifient, DMARC décide de la sanction (rien / spam / rejet) et fournit la visibilité via des rapports. Les trois doivent être publiés pour une délivrabilité optimale.

2. Prérequis

  • Un compte administrateur Google Workspace (le DKIM n'est pas disponible sur une simple boîte Gmail gratuite).
  • L'accès à la gestion DNS du domaine chez Wix (Domaines -> DNS Records).
  • Les MX du domaine pointent déjà vers Google (aspmx.l.google.com, etc.).
Dans tout ce guide, remplacez mondomaine.com par votre domaine réel.

3. Vérifier l'existant (DNS)

Avant toute modification, faites un état des lieux des enregistrements déjà publiés.

Sous Linux / macOS

# MX (doit pointer vers Google)
dig +short MX mondomaine.com

# SPF (TXT racine)
dig +short TXT mondomaine.com

# DKIM (sélecteur Google par défaut)
dig +short TXT google._domainkey.mondomaine.com

# DMARC
dig +short TXT _dmarc.mondomaine.com

Sous Windows (PowerShell)

Resolve-DnsName -Type MX  mondomaine.com
Resolve-DnsName -Type TXT mondomaine.com
Resolve-DnsName -Type TXT google._domainkey.mondomaine.com -Server 8.8.8.8
Resolve-DnsName -Type TXT _dmarc.mondomaine.com -Server 8.8.8.8
Astuce : interrogez un résolveur public (-Server 8.8.8.8 ou 1.1.1.1) pour voir ce que voit le monde extérieur, et non le cache local.

4. SPF (déjà fourni par Google)

Pour une messagerie Google Workspace, l'enregistrement SPF correct est :

v=spf1 include:_spf.google.com ~all
ÉlémentSignification
v=spf1Version SPF
include:_spf.google.comAutorise tous les serveurs d'envoi de Google
~allSoftFail : le reste est suspect (recommandé). -all = rejet strict.
Un seul enregistrement SPF par domaine. Si vous utilisez d'autres expéditeurs (newsletter, CRM...), ne créez pas un 2e TXT SPF : ajoutez leur include: dans la même ligne. Exemple : v=spf1 include:_spf.google.com include:servers.mcsv.net ~all.

5. DKIM - générer la clé (Google)

La clé se génère depuis la console d'administration Google :

  1. Aller sur admin.google.com.
  2. Apps -> Google Workspace -> Gmail.
  3. Ouvrir Authentifier l'e-mail (Authenticate email).
  4. Sélectionner le domaine mondomaine.com, puis Générer un nouvel enregistrement :
    • Longueur de clé : 2048 bits (recommandé).
    • Préfixe du sélecteur : laisser google (valeur par défaut).

Google affiche alors les deux éléments à publier :

ChampValeur affichée par Google
Nom / Hostgoogle._domainkey
Valeurv=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEF... (longue chaîne)
Ne cliquez PAS encore sur « Démarrer l'authentification ». Il faut d'abord publier l'enregistrement chez Wix, sinon Google renverra une erreur.

6. DKIM - publier l'enregistrement (Wix)

  1. Wix -> Paramètres -> Domaines -> mondomaine.com.
  2. Modifier les enregistrements DNS (Advanced / DNS Records).
  3. Section TXT records -> Ajouter :
Champ WixValeur à saisir
Host name / Nomgoogle._domainkey
TypeTXT
Value / ValeurLa chaîne complète v=DKIM1; k=rsa; p=...
TTLLaisser par défaut (1 h)
Valeur > 255 caractères : une clé DKIM 2048 bits dépasse la limite d'une chaîne TXT. Wix gère le découpage automatiquement : collez la valeur d'un seul bloc, sans la couper ni ajouter de guillemets.
N'ajoutez pas le domaine au host. On saisit google._domainkey (et non google._domainkey.mondomaine.com) : Wix complète le suffixe tout seul. Une double saisie donnerait google._domainkey.mondomaine.com.mondomaine.com.

7. DKIM - activer (Google)

  1. Attendre la propagation DNS (souvent 1 h, parfois jusqu'à 48 h).
  2. Vérifier que l'enregistrement est visible :
    dig +short TXT google._domainkey.mondomaine.com @8.8.8.8
  3. Revenir dans Google -> Authentifier l'e-mail -> Démarrer l'authentification.
  4. Le statut doit passer à « Authentification de l'e-mail active ».
Tant que vous n'avez pas cliqué sur « Démarrer l'authentification », Google ne signe PAS vos mails, même si l'enregistrement DNS est correct. La publication DNS et l'activation Google sont deux étapes distinctes.

8. DMARC - créer l'enregistrement

DMARC s'appuie sur SPF et DKIM. On commence toujours en mode observation (p=none) pour ne rien bloquer pendant qu'on surveille.

Enregistrement de départ

Chez Wix, ajouter un TXT :

Champ WixValeur
Host name_dmarc
TypeTXT
Valuev=DMARC1; p=none; rua=mailto:dmarc@mondomaine.com

Balises DMARC utiles

BaliseRôle
v=DMARC1Version (obligatoire, en premier)
p=Politique : none / quarantine / reject
rua=Adresse de réception des rapports agrégés (mailto:)
ruf=Rapports d'échec détaillés (Google ne les envoie pas : inutile ici)
pct=Pourcentage de messages soumis à la politique (ex. pct=25)
sp=Politique pour les sous-domaines
adkim= / aspf=Alignement strict (s) ou relâché (r, défaut)

9. Le piège de l'adresse réservée

On utilise souvent postmaster@ ou abuse@ comme destinataire de rapports. Mais Google réserve ces noms (imposés par les standards Internet) : impossible de créer un utilisateur ou un alias avec ce nom. Google affiche alors :

« Cette adresse e-mail est un terme réservé. »

Solution recommandée

Utiliser une adresse normale, par exemple dmarc@mondomaine.com :

  • Soit une vraie boîte dmarc@mondomaine.com,
  • Soit un alias dmarc sur une boîte existante (tout arrive au même endroit).

Puis pointer rua=mailto:dmarc@mondomaine.com dans l'enregistrement DMARC.

Si vous tenez à postmaster@ : le seul moyen de recevoir du courrier sur une adresse réservée est de créer un Google Groupe portant ce nom (les groupes contournent la restriction). Plus lourd : préférez dmarc@.
Adresse sur le même domaine = aucune autorisation à ajouter. Si le rua= pointe vers une adresse d'un autre domaine, ce domaine externe doit publier un enregistrement d'autorisation mondomaine.com._report._dmarc.<domaine-externe> de type TXT valant v=DMARC1.

10. Rapports DMARC & analyseur

Les rapports agrégés (RUA) arrivent à l'adresse définie dans rua=, une fois par jour par fournisseur (Google, Microsoft, Yahoo...). Premier rapport sous 24 à 72 h (il faut du trafic mail).

Ce sont des pièces jointes XML (souvent compressées .zip / .gz), illisibles à l'œil nu. Elles listent : qui a envoyé au nom du domaine, depuis quelle IP, et le résultat SPF/DKIM/DMARC.

Rendre les rapports lisibles

SolutionDétailCoût
Postmark DMARCRésumé hebdomadaire par e-mail, sans tableau de bord. Limité au top 10 sources / top 5 IP.Gratuit
Valimail MonitorTableau de bord visuel des sources d'envoiGratuit
dmarcian / URIportsTableaux de bord complets, historique, temps réelGratuit (petit volume) puis payant
Lecture manuelleOuvrir les XML soi-même ou via un parseur en ligneGratuit (fastidieux)

Brancher un analyseur (ex. Postmark)

  1. S'inscrire sur le service : il fournit une adresse rua unique (ex. re+xxxx@dmarc.postmarkapp.com).
  2. Ajouter cette adresse au rua=, en gardant aussi la sienne (DMARC accepte plusieurs destinataires, séparés par une virgule) :
    v=DMARC1; p=none; rua=mailto:dmarc@mondomaine.com,mailto:re+xxxx@dmarc.postmarkapp.com
  3. Publier le nouveau TXT _dmarc chez Wix, puis vérifier le DNS.
Garder sa propre adresse dmarc@ en copie permet de conserver les XML bruts (archive / secours) en plus des rapports lisibles de l'analyseur.

11. Durcir la politique (none -> reject)

Une fois que les rapports confirment que tous vos envois légitimes passent en SPF/DKIM PASS (compter 1 à 2 semaines), durcissez progressivement la politique :

ÉtapePolitiqueEffet sur un mail usurpé
1 (observation)p=noneRien (juste rapporté) - point de départ
2 (transition)p=quarantinePlacé en spam chez le destinataire
3 (protection max)p=rejectRejeté avant livraison

Exemple de palier intermédiaire prudent (25 % des messages en quarantaine) :

v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc@mondomaine.com
Ne passez jamais directement de none à reject sans avoir analysé les rapports : un expéditeur légitime oublié (CRM, facturation, formulaire du site) verrait ses mails rejetés. Montez par paliers et surveillez après chaque changement.

12. Vérification finale & dépannage

Tester un envoi réel

Envoyer un mail depuis une adresse @mondomaine.com vers une boîte Gmail personnelle, puis ouvrir le message -> ⋮ -> Afficher l'original. On doit voir :

SPF:   PASS with domain mondomaine.com
DKIM:  'PASS' with domain mondomaine.com
DMARC: 'PASS'

Vérifier les enregistrements en ligne de commande

# Les trois en une fois
dig +short TXT mondomaine.com                       # SPF
dig +short TXT google._domainkey.mondomaine.com     # DKIM
dig +short TXT _dmarc.mondomaine.com                # DMARC
SymptômeCause probableCorrection
DKIM PASS attendu mais absent« Démarrer l'authentification » pas cliqué dans GoogleActiver côté Google (section 7)
DKIM : record introuvablePropagation en cours / host mal saisi chez WixAttendre + vérifier google._domainkey sans suffixe
DMARC PASS mais DKIM/SPF failDésalignement de domaine (alignment)Vérifier que l'enveloppe et l'en-tête From sont sur le même domaine
Aucun rapport reçuAdresse rua inexistante / domaine externe non autoriséCréer l'alias, ou ajouter l'autorisation _report (section 9)

13. Pièges classiques

Piège 1 : DNS correct mais Google ne signe pas

Publier l'enregistrement DKIM ne suffit pas : il faut activer l'authentification dans la console Google. Tant que le statut n'est pas « actif », aucun mail n'est signé.

Piège 2 : double SPF

Deux enregistrements TXT SPF distincts = SPF invalide (permerror). Fusionner tous les include: dans une seule ligne.

Piège 3 : adresse réservée pour les rapports

postmaster@ et abuse@ sont réservés par Google. Utiliser dmarc@ (alias ou boîte).

Piège 4 : passage trop brutal en p=reject

Sans phase d'observation, on rejette des expéditeurs légitimes oubliés. Toujours none -> quarantine -> reject.

Piège 5 : host saisi avec le domaine chez Wix

Saisir google._domainkey et _dmarc seuls. Wix ajoute le domaine ; le redoubler casse l'enregistrement.

Piège 6 : valeur DKIM tronquée

La clé 2048 bits est longue. Si elle est coupée au collage, DKIM échoue. Coller la valeur entière d'un bloc et revérifier qu'elle se termine bien par ...QAB (fin typique d'une clé RSA encodée).

Récapitulatif d'un domaine bien configuré :
  • MX -> Google (aspmx.l.google.com...)
  • SPF -> v=spf1 include:_spf.google.com ~all
  • DKIM -> google._domainkey publié (2048 bits) et activé côté Google
  • DMARC -> _dmarc avec rua= vers une adresse valide, politique durcie progressivement
Aller plus loin : analyser un enregistrement avec MXToolbox DMARC ou dmarcian Inspector pour valider la syntaxe et l'alignement.