Envoi de mail : ajout d'un enregistrement DNS SPF contre le SPAM

Lors de l'envoi de mails à partir d'un domaine vers une adresse gmail, le message arrive dans les SPAMS.

Identification de la cause

Si on choisit "Afficher l'original" dans les options du message, on a quelque chose du type :

Delivered-To: xxxxxxxx@gmail.com
Received: by 10.194.120.39 with SMTP id kz7csp252651wjb;
        Thu, 15 May 2014 01:33:27 -0700 (PDT)
X-Received: by 10.180.98.232 with SMTP id el8mr7428006wib.27.1400142807504;
        Thu, 15 May 2014 01:33:27 -0700 (PDT)
Return-Path: <no-reply@hebinweb.com>
Received: from vps58368.ovh.net (194.ip-37-187-182.eu. [37.187.182.194])
        by mx.google.com with ESMTP id fx19si1569427wjc.191.2014.05.15.01.33.27
        for <xxxxxxx@gmail.com>;
        Thu, 15 May 2014 01:33:27 -0700 (PDT)
Received-SPF: softfail (google.com: domain of transitioning no-reply@hebinweb.com does not designate 37.59.123.77 as permitted sender) client-ip=37.59.123.77;
Authentication-Results: mx.google.com;
       spf=softfail (google.com: domain of transitioning no-reply@hebinweb.com does not designate 37.59.123.77 as permitted sender) smtp.mail=no-reply@hebinweb.com.fr
Received: by vps58368.ovh.net (Postfix, from userid 1002)
    id BE8CE2E53B; Thu, 15 May 2014 10:33:29 +0200 (CEST)
Subject: Order Verification Email
Message-Id: <20140515083329.BE8CE2E53B@vps58368.ovh.net>
Date: Thu, 15 May 2014 10:33:29 +0200 (CEST)
From: no-reply@hebinweb.com.fr (Operator)

This is a mail verification content. Please read the message header.
Sent at: Thu May 15 10:33:29 CEST 2014

On constate dans les trace la ligne :

Received-SPF: softfail (google.com: domain of transitioning no-reply@hebinweb.com does not designate 37.59.123.77 as permitted sender) client-ip=37.59.123.77;

En clair, l'adresse IP du serveur source n'est pas clairement désignée comme étant autorisée à envoyer des mail pour le domaine hebinweb.com.

Résolution du problème

Il faut ajouter des champs de type TXT dans les enregistrements DNS du domaine, notamment pour autoriser l'adresse IP du serveur. Ces champs sont dits SPF (Sender Policy Framework), une norme de vérification du nom de domaine de l'expéditeur d'un message électronique.

Le contenu du champ TXT doit être :

nomdedomaine.tld.    TXT v=spf1 ip4:IP_ADDRESS ~all

Par exemple :

hebinweb.com.    TXT v=spf1 ip4:37.59.123.77 ~all

Si on veut autoriser plusieurs adresses IP, on les sépare par un espace, dans le même enregistrement DNS :

hebinweb.com. TXT v=spf1 ip4:37.59.123.77 ip4:46.105.18.175 ~all

Une fois l'opération réalisée, Google ne considère plus les mails comme du spam.

Note : d'autres serveurs de messagerie sont moins stricts et autorisent quand même la réception de mails depuis un domaine inconnu, sans vérifier ce paramétrage.

On peut vérifier la mise à jour via la commande : dig TXT domaine.tld

Par exemple :

dig hebinweb.com TXT

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> hebinweb.com TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 773
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 4

;; QUESTION SECTION:
;hebinweb.com.            IN    TXT

;; ANSWER SECTION:
hebinweb.com.        59145    IN    TXT    "v=spf1 ip4:37.59.123.77 ~all"
hebinweb.com.        59145    IN    TXT    "v=spf1 ip4:46.105.18.175 ~all"

On retrouve bien nos enregistrements TXT avec les 2 adresses IP déclarées

 

Catégorie
Tag