Les emails utilisent plusieurs protocoles : SMTP pour l'envoi, IMAP ou POP3 pour la réception. Pour éviter que vos emails arrivent en spam, vous devez configurer SPF, DKIM et DMARC. Ce guide vous explique l'architecture email complète, les ports à utiliser, et comment diagnostiquer les problèmes de délivrabilité courants.
TL;DR, L'essentiel en 30 secondes
Section intitulée « TL;DR, L'essentiel en 30 secondes »Quatre repères suffisent à comprendre 90 % des incidents de messagerie que vous rencontrerez : le protocole utilisé pour chaque sens de circulation, l'enregistrement DNS qui désigne le serveur de réception, les trois mécanismes d'authentification qui décident si votre message atterrit en boîte de réception ou en spam, et le blocage du port 25 qui explique la moitié des envois qui ne partent jamais.
- SMTP (port 587) = envoi d'emails, IMAP (port 993) = réception synchronisée
- MX = enregistrement DNS qui indique le serveur mail d'un domaine
- SPF/DKIM/DMARC = mécanismes anti-spam (vérifiez-les si vos mails arrivent en spam)
- Port 25 souvent bloqué par les FAI pour éviter le spam
Je sais que c'est bon si...
Section intitulée « Je sais que c'est bon si... »Ces trois points forment le seuil d'entrée du reste du guide. Le premier prouve que le domaine sait recevoir, le deuxième qu'il déclare qui a le droit d'émettre en son nom, le troisième que vous distinguez les deux usages de SMTP. Tant que l'un des trois résiste, les sections sur DKIM et DMARC seront difficiles à suivre.
-
dig MX domaine.com +shortretourne des serveurs mail -
dig TXT domaine.commontre un enregistrement SPF (v=spf1...) - Je sais que 587 = submission (avec auth), 25 = relay entre serveurs
Commandes minimales à retenir
Section intitulée « Commandes minimales à retenir »Ces trois commandes sont non destructives : elles interrogent le DNS public et ouvrent une connexion en lecture, sans rien envoyer. Vous pouvez donc les lancer contre n'importe quel domaine, y compris ceux de vos fournisseurs, pour comparer une configuration saine à la vôtre. La troisième s'arrête après le handshake TLS ; tapez QUIT pour rendre la main.
# 1. Trouver le serveur mail d'un domainedig MX gmail.com +short
# 2. Vérifier l'enregistrement SPFdig TXT gmail.com +short | grep spf
# 3. Tester la connexion SMTP (port 587)openssl s_client -starttls smtp -connect smtp.gmail.com:587Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Distinguer SMTP, IMAP et POP3 : qui envoie, qui reçoit, et comment.
- Lire les enregistrements DNS de messagerie : MX, SPF, DKIM, DMARC.
- Authentifier vos emails pour ne pas finir en spam (exigences Google et Yahoo depuis 2024).
- Choisir les bons ports et le bon chiffrement (STARTTLS contre TLS implicite).
- Diagnostiquer la délivrabilité avec dig, openssl et les en-têtes d'authentification.
Prérequis
Section intitulée « Prérequis »- Connaissances de base en DNS (enregistrements TXT, MX)
- Un terminal avec
digounslookup - Optionnel :
telnetouncpour tester SMTP
Architecture email : les acteurs
Section intitulée « Architecture email : les acteurs »Un email traverse plusieurs composants avant d'arriver à destination. Comprendre cette chaîne est essentiel pour diagnostiquer les problèmes.
Les composants
Section intitulée « Les composants »Ces quatre sigles reviennent dans tous les journaux de messagerie et dans la documentation de Postfix comme de Dovecot. Retenez surtout la frontière entre le MSA et le MTA : le premier accepte du courrier d'un client authentifié sur le port 587, le second échange avec d'autres serveurs sur le port 25. Confondre les deux, c'est configurer un relais ouvert que les spammeurs trouveront en quelques heures. Le MDA n'apparaît que du côté réception : il écrit le message dans la boîte, et c'est lui qui applique les règles de tri et les quotas.
| Composant | Nom complet | Rôle | Exemple |
|---|---|---|---|
| MUA | Mail User Agent | Client email de l'utilisateur | Thunderbird, Gmail, Outlook |
| MTA | Mail Transfer Agent | Serveur qui transfère les emails | Postfix, Sendmail, Exchange |
| MDA | Mail Delivery Agent | Stocke l'email dans la boîte | Dovecot, Cyrus |
| MSA | Mail Submission Agent | Reçoit les emails du MUA | Souvent intégré au MTA |
Le parcours d'un email
Section intitulée « Le parcours d'un email »Suivez ces six étapes en gardant en tête une question : où le message est-il stocké à cet instant ? Entre l'étape 2 et l'étape 5, il vit dans une file d'attente sur un serveur, pas chez vous et pas chez le destinataire. C'est ce qui explique qu'un message puisse mettre plusieurs heures à arriver sans qu'aucune erreur ne remonte : le MTA destinataire a répondu 450 et l'émetteur réessaie. Notez aussi le changement de protocole à l'étape 6 : tout ce qui précède est du SMTP, la consultation relève d'IMAP ou de POP3.
-
Rédaction
L'utilisateur écrit son email dans son MUA (Thunderbird, Gmail...).
-
Soumission (SMTP)
Le MUA envoie l'email au serveur SMTP de l'expéditeur (port 587).
-
Routage (SMTP)
Le MTA de l'expéditeur consulte le DNS (enregistrement MX) pour trouver le serveur de destination.
-
Transfert (SMTP)
L'email est transmis au MTA du destinataire (port 25).
-
Livraison locale
Le MTA transmet l'email au MDA qui le stocke dans la boîte aux lettres.
-
Consultation (IMAP/POP3)
Le destinataire récupère l'email avec son MUA via IMAP ou POP3.
SMTP : le protocole d'envoi
Section intitulée « SMTP : le protocole d'envoi »SMTP (Simple Mail Transfer Protocol) est le protocole utilisé pour envoyer des emails. Il fonctionne en mode texte, avec une série de commandes simples.
Les ports SMTP
Section intitulée « Les ports SMTP »La colonne qui décide, c'est Authentification. Un port qui exige une authentification est un port de soumission, réservé à vos applications et à vos clients de messagerie ; un port qui n'en exige pas est un port de relais entre serveurs, où l'autorisation se joue sur l'adresse IP et les enregistrements DNS. Quand vous configurez une application, la seule question à vous poser est donc « ai-je un identifiant et un mot de passe ? ». Si oui, c'est 587 ou 465, jamais 25.
| Port | Usage | Chiffrement | Authentification |
|---|---|---|---|
| 25 | MTA → MTA (relay) | STARTTLS optionnel | Non requise |
| 587 | Client → serveur (submission) | STARTTLS requis | Requise |
| 465 | Client → serveur (submissions) | TLS implicite | Requise |
Cette répartition a une conséquence directe sur l'hébergement : puisque le port 25 sortant est filtré par la plupart des fournisseurs d'accès et des hébergeurs cloud, un serveur de messagerie autohébergé ne peut pas livrer directement chez les grands opérateurs. Il faut alors passer par un relais SMTP joignable en 587, ou obtenir du fournisseur une levée du filtrage, généralement soumise à justification.
Le dialogue SMTP
Section intitulée « Le dialogue SMTP »SMTP est un protocole texte ligne à ligne, ce qui le rend lisible et testable à la main. Dans l'échange ci-dessous, regardez d'abord la réponse 250-AUTH LOGIN PLAIN : c'est elle qui vous dit quelles méthodes d'authentification le serveur accepte. Ensuite, notez que MAIL FROM: et le From: situé après DATA sont deux adresses distinctes ; la première est l'enveloppe utilisée pour les rebonds et évaluée par SPF, la seconde est celle qu'affiche le client de messagerie. Toute la logique de DMARC repose sur cet écart. Enfin, la ligne contenant un point seul termine le corps du message.
Client: EHLO mail.example.comServeur: 250-smtp.destinataire.com Hello 250-SIZE 52428800 250 AUTH LOGIN PLAIN
Client: MAIL FROM:<expediteur@example.com>Serveur: 250 OK
Client: RCPT TO:<destinataire@autre.com>Serveur: 250 OK
Client: DATAServeur: 354 Start mail input
Client: Subject: Test From: expediteur@example.com To: destinataire@autre.com
Ceci est le contenu de l'email. .Serveur: 250 OK: queued
Client: QUITServeur: 221 ByeTester SMTP
Section intitulée « Tester SMTP »Trois tests, du plus rapide au plus complet. Le premier répond à « le port est-il joignable ? », le deuxième à « le chiffrement négocié fonctionne-t-il ? », le troisième à « le serveur chiffre-t-il dès la connexion ? ». Faites-les dans cet ordre : inutile de déboguer un certificat si le paquet TCP n'arrive même pas.
Vérifier que le port répond (bannière uniquement)
Section intitulée « Vérifier que le port répond (bannière uniquement) »Ce test coûte une seconde et élimine d'emblée la cause la plus fréquente, un filtrage réseau. Avec -z, nc ferme la connexion sans envoyer de données ; il valide donc la traversée du pare-feu, pas le service derrière. Avec telnet, vous voyez en plus la bannière que le serveur annonce, ce qui confirme qu'un vrai service SMTP écoute et pas un équipement intermédiaire.
nc -zv smtp.example.com 587# outelnet smtp.example.com 587Réponse attendue : 220 smtp.example.com ESMTP. Un Connection timed out désigne un filtrage, un Connection refused désigne un service arrêté : les deux causes n'ont pas le même correctif.
Tester STARTTLS (port 587)
Section intitulée « Tester STARTTLS (port 587) »openssl s_client -starttls smtp -connect smtp.example.com:587Vous verrez le certificat du serveur et pourrez taper des commandes SMTP après le handshake TLS.
Tester TLS implicite (port 465)
Section intitulée « Tester TLS implicite (port 465) »openssl s_client -connect smtp.example.com:465La connexion TLS s'établit immédiatement, sans commande STARTTLS.
IMAP vs POP3 : les protocoles de réception
Section intitulée « IMAP vs POP3 : les protocoles de réception »Pour récupérer vos emails, deux protocoles existent : IMAP et POP3.
La ligne qui commande toutes les autres est Stockage. IMAP laisse les messages sur le serveur et n'y télécharge que ce que vous consultez, POP3 les rapatrie puis, par défaut, les efface du serveur. Le comportement multi-appareils, la gestion des dossiers et la consommation de bande passante découlent mécaniquement de ce choix, ce ne sont pas des fonctionnalités indépendantes.
| Aspect | IMAP | POP3 |
|---|---|---|
| Port standard | 143 (993 avec TLS) | 110 (995 avec TLS) |
| Stockage | Emails sur le serveur | Emails téléchargés localement |
| Multi-appareils | Synchronisé | Problématique |
| Dossiers | Gérés sur le serveur | Locaux uniquement |
| Hors ligne | Partiel (cache) | Complet (téléchargé) |
| Bande passante | Plus élevée | Plus faible |
Vérifier qu'IMAP/POP3 répondent
Section intitulée « Vérifier qu'IMAP/POP3 répondent »Contrairement au port 587, les ports 993 et 995 négocient TLS dès l'ouverture de la connexion. Il n'y a donc pas de bannière en clair à lire, et un test en telnet ne produira rien d'exploitable. openssl s_client est l'outil adapté : il termine le handshake puis vous rend une session texte dans laquelle les commandes du protocole redeviennent lisibles.
# IMAP avec TLS (port 993)openssl s_client -connect imap.example.com:993
# POP3 avec TLS (port 995)openssl s_client -connect pop.example.com:995Après le handshake TLS, vous pouvez taper des commandes IMAP (A001 LOGIN user pass) ou POP3 (USER xxx).
Note : IMAP4rev2 (RFC 9051) est la version moderne du protocole, mais IMAP4rev1 reste largement déployé.
Niveau 2 : SPF, DKIM, DMARC, la délivrabilité
Section intitulée « Niveau 2 : SPF, DKIM, DMARC, la délivrabilité »Ces trois mécanismes protègent contre le spam et le phishing en vérifiant l'authenticité des emails.
SPF (Sender Policy Framework)
Section intitulée « SPF (Sender Policy Framework) »SPF (RFC 7208) liste les serveurs autorisés à envoyer des emails pour votre domaine. C'est un enregistrement DNS TXT évalué sur l'envelope-from (MAIL FROM / Return-Path), pas sur le header From: visible.
Exemple d'enregistrement SPF :
v=spf1 include:_spf.google.com include:sendgrid.net -all| Élément | Signification |
|---|---|
v=spf1 | Version du protocole SPF |
include:... | Serveurs autorisés (ex: Google, SendGrid) |
ip4:203.0.113.5 | IP spécifique autorisée |
-all | Rejeter (hard fail) |
~all | Marquer suspect (soft fail), recommandé au début |
?all | Neutre (pas de politique) |
Vérifier le SPF d'un domaine :
dig TXT example.com +short | grep spfStratégie de déploiement : commencez par ~all (soft fail) pour monitorer, puis passez à -all une fois la configuration validée.
DKIM (DomainKeys Identified Mail)
Section intitulée « DKIM (DomainKeys Identified Mail) »DKIM (RFC 6376) ajoute une signature cryptographique à chaque email. Le destinataire vérifie cette signature avec une clé publique publiée dans le DNS.
Ce que DKIM signe :
- Certains headers (From, To, Subject, Date...) après canonisation
- Le body de l'email (ou un hash partiel)
Fonctionnement :
- Le serveur expéditeur signe l'email avec sa clé privée
- La signature est ajoutée dans le header
DKIM-Signature - Le destinataire récupère la clé publique dans le DNS
- Il vérifie que la signature correspond au contenu
Trouver le selector dans un email :
Dans les headers de l'email, cherchez DKIM-Signature :
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=selector1;Le champ s= indique le selector (ici selector1).
Vérifier la clé DKIM :
# Format : selector._domainkey.domainedig TXT selector1._domainkey.example.com +shortSelectors courants : google, default, s1, s2, selector1, k1.
DMARC (Domain-based Message Authentication)
Section intitulée « DMARC (Domain-based Message Authentication) »DMARC (RFC 7489) définit la politique à appliquer si SPF ou DKIM échoue. Mais surtout, il introduit le concept d'alignment : le domaine validé par SPF/DKIM doit correspondre au domaine du header From:.
Le concept clé : l'alignment
Section intitulée « Le concept clé : l'alignment »DMARC ne dit pas simplement "SPF ou DKIM doivent passer". Il exige que le domaine validé soit aligné avec le domaine visible dans le header From:.
Exemple de "SPF pass mais DMARC fail" :
- Email envoyé par
newsletter.example.com(SPF pass) - Header
From: contact@example.com - → SPF valide
newsletter.example.commais leFrom:estexample.com→ pas d'alignment → DMARC fail
| Paramètre | Valeur | Signification |
|---|---|---|
adkim | r (relaxed) | Sous-domaine DKIM accepté |
adkim | s (strict) | Domaine exact requis |
aspf | r (relaxed) | Sous-domaine SPF accepté |
aspf | s (strict) | Domaine exact requis |
Exemple d'enregistrement DMARC
Section intitulée « Exemple d'enregistrement DMARC »L'enregistrement se lit comme une suite de paires clé=valeur séparées par des points-virgules, publiée sur le nom _dmarc.<domaine>. Deux champs méritent votre attention immédiate. p= porte la politique appliquée aux messages qui échouent, et c'est le seul paramètre qui a un effet visible pour vos destinataires. rua= désigne l'adresse qui recevra les rapports agrégés quotidiens, envoyés au format XML compressé par les opérateurs : sans cette adresse, vous passez en p=reject à l'aveugle.
v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com; pct=100; adkim=r; aspf=rLe tableau ci-dessous liste toutes les valeurs possibles de ces champs, y compris les trois politiques mutuellement exclusives de p=. Un enregistrement réel n'en contient évidemment qu'une seule.
| Élément | Signification |
|---|---|
v=DMARC1 | Version |
p=none | Pas d'action (monitoring) |
p=quarantine | Mettre en spam |
p=reject | Rejeter l'email |
rua=mailto:... | Rapports agrégés (quotidiens) |
ruf=mailto:... | Rapports forensic (par échec) |
pct=100 | Appliquer à 100% des emails |
Vérifier le DMARC :
dig TXT _dmarc.example.com +shortPrérequis délivrabilité (checklist)
Section intitulée « Prérequis délivrabilité (checklist) »Avant de diagnostiquer des problèmes de spam, vérifiez ces fondamentaux souvent oubliés. Les deux premières lignes du tableau concernent l'identité du serveur et se règlent une fois pour toutes chez l'hébergeur ; les trois suivantes concernent l'identité du domaine et vivent dans votre zone DNS ; la dernière ne dépend que de votre historique d'envoi. Traitez-les dans cet ordre : publier un DMARC strict sur une IP sans reverse DNS ne fera pas remonter votre taux de délivrance.
| Élément | Vérification | Commande |
|---|---|---|
| PTR (reverse DNS) | L'IP d'envoi a un PTR cohérent | dig -x 203.0.113.5 +short |
| HELO/EHLO | Le serveur s'annonce avec un FQDN valide | Logs Postfix/Exim |
| SPF | Enregistrement publié et valide | dig TXT example.com |
| DKIM | Clé publiée et signature active | dig TXT selector._domainkey.example.com |
| DMARC | Politique définie | dig TXT _dmarc.example.com |
| Réputation IP | IP non blacklistée | MXToolbox, multirbl.valli.org |
Diagnostic des problèmes de délivrabilité
Section intitulée « Diagnostic des problèmes de délivrabilité »Vos emails arrivent en spam
Section intitulée « Vos emails arrivent en spam »Ces cinq vérifications suivent l'ordre dans lequel un serveur destinataire prend sa décision, ce qui évite de perdre du temps sur la mauvaise piste. Ne sautez pas l'étape 5 : le header Authentication-Results du message reçu contient le verdict réel rendu par l'opérateur, alors que les quatre premières étapes ne montrent que votre configuration déclarée. Une configuration DNS parfaite et un dmarc=fail dans les headers signent presque toujours un problème d'alignment, pas un problème de publication.
-
Vérifier SPF
Fenêtre de terminal dig TXT votredomaine.com +short | grep spfAssurez-vous que le serveur d'envoi est listé.
-
Vérifier DKIM
Fenêtre de terminal dig TXT selector._domainkey.votredomaine.com +shortUne clé publique doit être retournée.
-
Vérifier DMARC
Fenêtre de terminal dig TXT _dmarc.votredomaine.com +shortUne politique doit être définie.
-
Vérifier la réputation de l'IP
Utilisez des outils comme MXToolbox ou mail-tester.com pour vérifier si votre IP est blacklistée.
-
Analyser les headers de l'email
Dans l'email reçu, examinez le header
Authentication-Results:Authentication-Results: mx.google.com;dkim=pass header.d=example.com header.s=selector1;spf=pass (google.com: domain of bounce@example.com designates 203.0.113.5 as permitted sender);dmarc=pass (p=QUARANTINE sp=QUARANTINE) header.from=example.comInterprétation :
dkim=pass: signature DKIM validespf=pass: IP autorisée par SPFdmarc=pass: alignment OK + politique respectée
Si vous voyez
dmarc=failavecspf=pass, c'est probablement un problème d'alignment.
Erreurs SMTP courantes
Section intitulée « Erreurs SMTP courantes »Le premier chiffre du code vaut plus que le reste : un 4xx est temporaire et le message reste en file d'attente pour être retenté, un 5xx est définitif et déclenche un rapport de non-remise. Concrètement, un 421 ou un 450 ne demande aucune action de votre part avant plusieurs heures, alors qu'un 550 exige une correction immédiate. Le cas le plus trompeur est le 554 : le libellé parle d'échec de transaction, mais le motif réel est presque toujours un rejet pour réputation ou pour présence sur une liste noire, information que le serveur ne détaillera pas.
| Code | Signification | Solution |
|---|---|---|
| 421 | Service temporairement indisponible | Réessayer plus tard |
| 450 | Boîte mail temporairement indisponible | Greylisting, réessayer |
| 550 | Adresse email n'existe pas | Vérifier l'adresse |
| 551 | Utilisateur non local | Mauvais serveur de destination |
| 552 | Quota dépassé | Boîte pleine |
| 553 | Syntaxe incorrecte | Vérifier le format de l'adresse |
| 554 | Transaction échouée | Souvent lié au spam/blacklist |
Codes DSN (Delivery Status Notification)
Section intitulée « Codes DSN (Delivery Status Notification) »Les codes DSN étendus (format X.Y.Z) accompagnent le code à trois chiffres et lèvent son ambiguïté. Leur découpage est normalisé par la RFC 3463 : le X reprend la temporalité (4 temporaire, 5 définitif), le Y désigne la classe de problème (1 adresse, 2 boîte aux lettres, 7 sécurité et politique), le Z le détail. La classe 7 est celle qui vous concernera le plus, car c'est là que les codes d'authentification de la RFC 7372 ont été enregistrés. Les libellés ci-dessous sont ceux du registre IANA, à ne pas confondre avec le texte libre que chaque opérateur ajoute derrière.
| Code DSN | Signification | Action |
|---|---|---|
| 5.1.1 | Adresse destinataire inexistante | Vérifier l'adresse destinataire |
| 5.2.2 | Boîte pleine | Attendre ou contacter le destinataire |
| 5.7.1 | Envoi non autorisé, message refusé (relaying denied, rejet DMARC) | Configurer l'authentification SMTP, vérifier la politique DMARC |
| 5.7.23 | Échec de validation SPF | Vérifier l'enregistrement SPF |
| 5.7.25 | Échec de validation du reverse DNS | Publier un PTR cohérent pour l'IP d'envoi |
| 5.7.26 | Plusieurs contrôles d'authentification en échec | Vérifier SPF et DKIM, puis l'alignment DMARC |
| 4.7.0 | Statut de sécurité temporaire non précisé (greylisting typique) | Réessayer dans 5-15 min |
Email non reçu du tout
Section intitulée « Email non reçu du tout »Un message qui n'arrive pas se range dans deux familles : soit vous avez reçu un rapport de non-remise et le diagnostic est écrit dedans, soit vous n'avez rien reçu du tout et il faut chercher. La première ligne du tableau est de loin la plus fréquente, et aussi la plus mal comprise : un message accepté par le serveur destinataire puis classé en spam ou en quarantaine ne génère aucune erreur côté émetteur. Vos journaux affichent status=sent, et pourtant personne ne le lira. Commencez donc toujours par faire vérifier le dossier indésirables avant de soupçonner le réseau.
| Symptôme | Cause probable | Vérification |
|---|---|---|
| Aucune erreur, email disparu | Filtré en spam ou quarantaine | Vérifier les dossiers spam |
| Bounce "550 User unknown" | Adresse invalide | Confirmer l'adresse avec le destinataire |
| Timeout à la connexion | Port bloqué | nc -zv smtp.dest.com 25 |
| "421 Too many connections" | Rate limiting | Espacer les envois |
| "550 5.7.1 Relaying denied" | Auth manquante | Activer l'authentification SMTP |
| SPF pass, DMARC fail | Problème d'alignment | Vérifier que le From: correspond au domaine SPF/DKIM |
Enregistrements DNS email
Section intitulée « Enregistrements DNS email »Pour configurer les emails d'un domaine, vous avez besoin de plusieurs enregistrements DNS :
| Type | Nom | Exemple | Rôle |
|---|---|---|---|
| MX | example.com | 10 mail.example.com | Serveur de réception |
| A | mail.example.com | 203.0.113.5 | IP du serveur mail |
| TXT | example.com | v=spf1 ... | Politique SPF |
| TXT | selector._domainkey.example.com | v=DKIM1; k=rsa; p=... | Clé DKIM |
| TXT | _dmarc.example.com | v=DMARC1; p=... | Politique DMARC |
Vérifier l'enregistrement MX :
dig MX example.com +shortRésultat typique :
10 mail.example.com.20 backup.example.com.Le nombre (10, 20) est la priorité : le plus bas est essayé en premier.
Scénarios courants en production
Section intitulée « Scénarios courants en production »Scénario 1 : Application → SMTP submission → Gmail/Outlook (spam)
Section intitulée « Scénario 1 : Application → SMTP submission → Gmail/Outlook (spam) »Symptôme : Vos emails transactionnels arrivent en spam chez les destinataires Gmail/Outlook.
Diagnostic :
# 1. Vérifier SPFdig TXT votredomaine.com +short | grep spf
# 2. Vérifier DKIM (trouvez le selector dans vos emails)dig TXT selector._domainkey.votredomaine.com +short
# 3. Vérifier DMARCdig TXT _dmarc.votredomaine.com +short
# 4. Vérifier le PTR de l'IP d'envoidig -x VOTRE_IP_SMTP +shortSolutions courantes :
- Ajouter l'IP/domaine du service d'envoi dans SPF
- Activer DKIM sur votre provider (SendGrid, SES...)
- Passer de
p=noneàp=quarantineune fois configuré
Scénario 2 : Serveur on-prem → Port 25 bloqué
Section intitulée « Scénario 2 : Serveur on-prem → Port 25 bloqué »Symptôme : Timeout ou connexion refusée sur le port 25.
nc -zv smtp.destinataire.com 25# Connection timed out ou refusedCause : La plupart des FAI/cloud providers bloquent le port 25 sortant pour éviter le spam.
Solutions :
- Utiliser un relais SMTP externe (SendGrid, Mailgun, SES) sur le port 587
- Demander le déblocage du port 25 à votre provider (justification requise)
- Utiliser un VPS dédié à l'envoi d'emails
Configurer un relais SMTP
Section intitulée « Configurer un relais SMTP »Pour une application qui doit envoyer des emails (alertes, mails transactionnels), vous avez plusieurs options :
Recommandé pour la plupart des cas.
Utilisez un service comme SendGrid, Mailgun, SES :
# Variables d'environnement typiquesSMTP_HOST=smtp.sendgrid.netSMTP_PORT=587SMTP_USER=apikeySMTP_PASSWORD=SG.xxxxxxxxxxxxxAvantages :
- Délivrabilité optimisée
- Réputation d'IP gérée
- Statistiques et tracking
Pour un contrôle total ou des contraintes spécifiques.
Configuration /etc/postfix/main.cf minimale :
myhostname = mail.example.commydomain = example.commyorigin = $mydomaininet_interfaces = allmydestination = $myhostname, localhost.$mydomain, localhostrelayhost =Avantages :
- Contrôle total
- Pas de dépendance externe
Inconvénients :
- Gestion de la réputation IP
- Maintenance du serveur
Validation des acquis
Section intitulée « Validation des acquis »Ces trois manipulations se font sur des domaines publics, sans aucun compte ni configuration préalable. Elles vérifient que vous savez lire une configuration de messagerie existante, ce qui est la compétence utile au quotidien : avant de corriger la vôtre, vous aurez toujours besoin de comparer avec un domaine dont vous savez qu'il délivre correctement.
-
Vérifier les enregistrements email d'un domaine
Fenêtre de terminal dig MX github.com +shortdig TXT github.com +short | grep spfdig TXT _dmarc.github.com +short -
Tester la connectivité SMTP
Fenêtre de terminal nc -zv smtp.gmail.com 587Attendu :
Connection to smtp.gmail.com port 587 [tcp/submission] succeeded! -
Analyser un header d'email
Ouvrez un email reçu, affichez les headers complets et cherchez
Authentication-Resultspour voir le statut SPF/DKIM/DMARC.
Dépannage rapide
Section intitulée « Dépannage rapide »Ce tableau condense les cinq incidents qui reviennent le plus souvent sur des serveurs applicatifs. Trois d'entre eux se règlent en changeant la configuration d'envoi de l'application, deux exigent une intervention sur le DNS ou auprès d'un tiers. Le délistage d'une IP en liste noire est le seul cas où le délai ne dépend pas de vous : comptez de quelques heures à plusieurs jours selon l'organisme, ce qui rend le passage par un relais tiers souvent plus rapide que l'attente.
| Symptôme | Cause probable | Solution |
|---|---|---|
| Emails en spam | SPF/DKIM/DMARC manquants | Configurer les enregistrements DNS |
| "550 5.7.1 Relaying denied" | Authentification manquante | Activer l'auth SMTP |
| IP blacklistée | Spam envoyé depuis cette IP | Demander le delist, utiliser un relais |
| Timeout port 25 | Bloqué par le FAI | Utiliser port 587 ou un relais |
| "DKIM signature invalid" | Clé mal configurée | Vérifier le sélecteur et la clé publique |
Outils avancés (pour aller plus loin)
Section intitulée « Outils avancés (pour aller plus loin) »swaks : Swiss Army Knife for SMTP
Section intitulée « swaks : Swiss Army Knife for SMTP »swaks est l'outil de référence pour tester SMTP en détail :
# Test basique avec AUTHswaks --to dest@example.com --from exp@votredomaine.com \ --server smtp.example.com:587 --tls --auth-user apikey --auth-password "$SMTP_PASSWORD"
# Test STARTTLS expliciteswaks --to dest@example.com --server smtp.example.com:587 --tlsInstallation : apt install swaks ou brew install swaks
Analyser les logs serveur
Section intitulée « Analyser les logs serveur »Sur un serveur Postfix, les logs sont dans /var/log/mail.log :
# Suivre les envois en temps réeltail -f /var/log/mail.log | grep -E "(status=|reject|warning)"
# Chercher un email par queue IDgrep "QUEUE_ID" /var/log/mail.logÀ retenir
Section intitulée « À retenir »- SMTP (port 587 submission, 465 submissions) sert à envoyer des emails ; le port 25 est réservé au relay MTA↔MTA
- IMAP (port 993) est préféré à POP3 pour la réception multi-appareils synchronisée
- SPF déclare les serveurs autorisés (attention : limite de 10 DNS lookups, cassé par le forwarding)
- DKIM signe cryptographiquement les emails ; le selector permet la rotation de clés
- DMARC exige l'alignment entre le domaine du From: et celui validé par SPF/DKIM
- Le PTR (reverse DNS) de l'IP d'envoi est souvent vérifié par les serveurs destinataires
- Utilisez
openssl s_client -starttls smtppour tester STARTTLS, pas justenc
Testez vos connaissances
Section intitulée « Testez vos connaissances »Dix questions tirées de la banque réseau, à traiter en dix minutes avec un seuil de réussite fixé à 80 %. Elles portent volontairement sur les points qui se confondent : la distinction entre soumission et relais, le champ évalué par SPF, et la condition d'alignment de DMARC. Un échec sur une question d'alignment renvoie à la section DMARC plus haut, pas à la section SPF.
Contrôle de connaissances
Validez vos connaissances avec ce quiz interactif
Informations
- Le chronomètre démarre au clic sur Démarrer
- Questions à choix multiples, vrai/faux et réponses courtes
- Vous pouvez naviguer entre les questions
- Les résultats détaillés sont affichés à la fin
Lance le quiz et démarre le chronomètre
Vérification
(0/0)Profil de compétences
Quoi faire maintenant
Ressources pour progresser
Des indices pour retenter votre chance ?
Nouveau quiz complet avec des questions aléatoires
Retravailler uniquement les questions ratées
Retour à la liste des certifications
FAQ : questions fréquentes sur l'email
Section intitulée « FAQ : questions fréquentes sur l'email »Les questions rassemblées ici sont celles qui reviennent quand une équipe met en place ses premiers envois transactionnels. Elles complètent le guide sans le répéter : chaque réponse tient en quelques lignes et renvoie au besoin vers la section détaillée correspondante.
Envoyer ou recevoir
| Protocole | Rôle | Port (TLS) |
|---|---|---|
| SMTP | envoyer le courrier | 587 / 465 |
| IMAP | recevoir (synchronisé) | 993 |
| POP3 | recevoir (téléchargé) | 995 |
- IMAP synchronise : les messages restent sur le serveur, lisibles depuis plusieurs appareils (mobile + PC) avec le même état (lu/non lu).
- POP3 télécharge les messages et les efface souvent du serveur : pratique pour un seul appareil, mais pas de synchronisation.
Les trois piliers de l'authentification
| Mécanisme | Rôle | Enregistrement DNS |
|---|---|---|
| SPF | serveurs autorisés à envoyer | TXT sur le domaine |
| DKIM | signature cryptographique | TXT sur selecteur._domainkey |
| DMARC | politique si SPF/DKIM échouent | TXT sur _dmarc |
- SPF (RFC 7208) : liste les serveurs autorisés à émettre pour le domaine (
v=spf1 include:_spf.google.com -all). - DKIM (RFC 6376) : signe chaque message avec une clé privée ; la clé publique est publiée en DNS pour vérification.
- DMARC (RFC 7489) : dit aux serveurs receveurs quoi faire en cas d'échec (
p=none,quarantineoureject) et reçoit des rapports.
D'abord l'authentification
La cause numéro un en 2026, c'est un défaut d'authentification. Vérifiez dans l'ordre :- SPF, DKIM et DMARC présents et valides. Depuis 2024, Google et Yahoo rejettent ou classent en spam les messages non authentifiés des expéditeurs en masse.
- Reverse DNS (PTR) : l'IP du serveur d'envoi doit résoudre vers un nom cohérent. Un PTR manquant fait chuter la délivrabilité.
- Réputation de l'IP : une IP neuve ou blacklistée envoie en spam. Vérifiez sur les listes de blocage (RBL).
- Contenu : pièces jointes suspectes, liens douteux, ratio texte/image déséquilibré.
mail-tester.com ou en lisant les en-têtes Authentication-Results d'un message reçu.Les ports de la messagerie
| Port | Usage | Chiffrement |
|---|---|---|
| 25 | transfert entre serveurs | STARTTLS |
| 587 | soumission client (envoi) | STARTTLS |
| 465 | soumission client (envoi) | TLS implicite |
| 993 | réception IMAP | TLS implicite |
| 995 | réception POP3 | TLS implicite |
Deux façons de chiffrer
| STARTTLS | TLS implicite | |
|---|---|---|
| Ports | 587, 143, 25 | 465, 993, 995 |
| Début | en clair, puis bascule | chiffré d'emblée |
| Risque | stripping TLS | aucun (pas de phase claire) |