Simuler l’envoi d’un email

EMAIL-00057-altospam

Procédure manuelle détaillée d'envoi de mails

Il peut être très intéressant, pour réaliser un diagnostic, de simuler l’envoi d’un email à un serveur de messagerie afin de comprendre la raison pour laquelle un email ne parvient pas au serveur de messagerie d’un destinataire. Dans cet article, nous allons décrire une procédure détaillée permettant de simuler l’envoi d’un email dans l’objectif de ‘débugger’ une telle situation.

Cette opération doit se faire en 2 étapes: requête DNS, envoi du mail à proprement parler. Ces deux étapes sont impératives. Éviter la première étape, l’analyse DNS, sous prétexte que l’on connait déjà le nom du serveur destinataire serait une grosse erreur. De plus, ces étapes doivent impérativement être réalisées depuis le serveur de messagerie émetteur afin d’être sûr que les serveurs DNS utilisés pour les requêtes sont bien les mêmes et que l’adresse IP émettrice correspond bien à celle qui est vue par le serveur de destination.

Première étape : connaître le nom du serveur de messagerie
Il faut connaître le (ou les) nom du serveur de messagerie qui gère les mails pour le nom de domaine qui vous intéresse. Celui-ci est renseigné dans le (ou les) champ MX de la zone DNS qui gère le nom de domaine.

Si vous utilisez Windows :
Utilisation de la commande nslookup :
C:>nslookup
> set q=MX
> domaine.ltd
Le système vous renvoie la liste des champs MX
> exit
Le serveur principal est celui qui a la priorité la plus faible.

Si le système d’exploitation de votre serveur de mail est Linux :
Vous pouvez utiliser les commandes dig ou host :
# host -t MX domaine.ltd (ou) # host -t MX domaine.ltd

Exemple :
root@a10:~# host -t MX airfrance.fr
airfrance.fr mail is handled by 10 smtp1.airfrance.fr.
airfrance.fr mail is handled by 20 smtp2.airfrance.fr.

Le serveur principal de messagerie de AirFrance est : smtp1.airfrance.fr.

Seconde étape : simulation de l’envoi d’un email
Une fois que vous connaissez le nom ou l’adresse IP du serveur de mail, vous pourrez simuler l’envoi d’un mail par la commande telnet sur le port 25 qui est celui du protocole SMTP.

Exemple de mail correctement transmis :

# telnet mail.domaine.ltd 25
220 banner.domaine.ltd ESMTP
helo toto.com
250 ok
mail from: utilisateur@domaine.ltd (adresse email valide)
250 2.1.0 Ok
rcpt to: nom@domaine.ltd (adresse email valide dans le domaine testé)
250 2.1.5 Ok
data
354 Enter mail, end with « . » on a line by itself
essai d’envoi d’un mail (texte du mail)
. (pour terminer le mail)
250 2.0.0 Ok: queued as 3FE2C8181C9
quit
221 2.0.0 Bye

Exemple de mail en erreur (cas de l’anti-relayage) :

# telnet mail.domaine.ltd 25
220 banner.domaine.ltd ESMTP
helo toto.com
250 mail.domaine.ltd
mail from: toto@yahoo.com
250 sender <toto@yahoo.com> ok
rcpt to: titi@gmail.com
550 #5.1.0 Address rejected.

Pour le détail sur le protocole SMTP vous pouvez consulter l’article suivant : https://www.altospam.com/actualite/2008/07/decryptage-dun-email/

Les codes renvoyés par les serveurs de mail sont de 3 types :
2xx = acceptation
4xx = refus temporaire (cas du Greylisting par exemple)
5xx = refus permanent (suivi en général d’un message d’erreur qui peut être plus ou moins explicite)

Dans cet exemple, le serveur de mail a répondu un code 250, le mail est donc accepté et son identifiant dans le serveur est 3FEC8181C9. Vous pouvez faire « quit » à la place de data, ainsi aucun mail ne sera envoyé et vous aurez vérifié la validité de l’adresse.

Tout ceci est un peu contraignant mais nécessaire pour réaliser un diagnostic précis, aussi ALTOSPAM a développé un outil intéressant accessible librement à l’adresse : https://www.altospam.com/outil/ pour simuler l’ensemble de cette procédure. Dans ce cas, le test n’est évidemment pas réalisé depuis votre serveur de mail mais il donne cependant une très bonne indication de la configuration du domaine distant.

L’article présent à l’adresse : https://www.altospam.com/actualites/analyse-automatique-dun-destinataire/ montre comment utiliser notre outil en ligne pour valider un domaine ou une adresse email d’un destinataire.

Et si vous testiez les solutions d’Altospam?

Des milliers de DSI, RSSI et Responsables Informatiques nous font déjà confiance pour la protection de leur e-mails contre le phishing, spear phishing, ransomware, …