Comment tester la connectivité SMTP de vos serveurs MX
Par CaptainDNS
Publié le 17 février 2026

- Un enregistrement MX valide ne prouve pas que votre serveur mail fonctionne : testez la connexion TCP, le banner, STARTTLS et le certificat TLS
- Utilisez
telnetpour vérifier la connectivité port 25 et le banner SMTP, puisopenssl s_clientpour inspecter STARTTLS et le certificat - Les problèmes courants (port 25 bloqué, certificat expiré, STARTTLS mal configuré) sont silencieux : seul un test actif les détecte
- Automatisez le diagnostic avec le SMTP/MX Connectivity Tester de CaptainDNS pour tester tous vos MX en une seule requête
Vos enregistrements SPF, DKIM et DMARC sont correctement configurés. Votre domaine passe tous les tests DNS. Pourtant, certains emails n'arrivent pas à destination, ou arrivent sans chiffrement TLS. Le problème ne vient pas de la configuration DNS, mais de la couche transport : la connexion SMTP entre les serveurs.
Ce guide vous montre comment tester la connectivité SMTP de vos serveurs MX, de la résolution DNS jusqu'à l'inspection du certificat TLS. Chaque commande est reproductible depuis un terminal Linux, macOS ou WSL. Que vous diagnostiquiez un problème de livraison ou que vous auditiez la sécurité de votre infrastructure email, vous saurez exactement quoi vérifier et comment interpréter les résultats.
Pourquoi tester la connectivité SMTP de vos MX ?
La configuration DNS (enregistrements MX, SPF, DKIM, DMARC) est une condition nécessaire, mais pas suffisante. Trois catégories de problèmes échappent aux outils de vérification DNS classiques.
La délivrabilité dépend du transport
Si votre serveur MX est injoignable sur le port 25, les serveurs expéditeurs reçoivent une erreur "connection timed out" et retentent pendant 24 à 48 heures avant d'abandonner. Le message est perdu, et l'expéditeur reçoit un bounce tardif. Ce type de panne est invisible depuis votre côté tant que vous ne testez pas activement.
Le chiffrement TLS n'est pas garanti
En 2024, plus de 95 % des emails reçus par Gmail transitent via TLS (Google Transparency Report). Mais STARTTLS est opportuniste : si la négociation échoue silencieusement, la connexion continue en clair. Un certificat expiré ou une mauvaise configuration TLS peut dégrader la sécurité de tous vos flux entrants sans générer d'alerte.
Un open relay détruit votre réputation
Un serveur SMTP qui accepte de relayer du mail pour n'importe qui est un open relay. Les spammeurs l'exploitent en quelques heures, et votre IP se retrouve sur les blacklists (Spamhaus, Barracuda, SpamCop). Tous vos emails sortants sont alors rejetés.

Ce que vérifie un test SMTP complet
Un test de connectivité SMTP complet couvre sept points, dans cet ordre.
| Étape | Vérification | Outil |
|---|---|---|
| 1 | Résolution DNS MX | dig ou nslookup |
| 2 | Connexion TCP port 25 | telnet |
| 3 | Banner SMTP (220) | telnet |
| 4 | Extensions EHLO | telnet |
| 5 | STARTTLS et version TLS | openssl s_client |
| 6 | Certificat TLS (validité, expiration, SAN) | openssl s_client |
| 7 | Test open relay | telnet |
Chaque étape peut échouer indépendamment. Un serveur peut répondre sur le port 25, annoncer STARTTLS dans EHLO, mais échouer à la négociation TLS à cause d'un certificat expiré.
Étape 1 : résoudre les enregistrements MX
Avant de tester la connectivité, identifiez les serveurs MX de votre domaine. La commande dig retourne les MX triés par priorité :
$ dig captaindns.com MX +short
10 mx1.captaindns.com.
20 mx2.captaindns.com.
Le chiffre (10, 20) est la priorité : les serveurs expéditeurs contactent d'abord le MX avec la valeur la plus basse. Testez tous vos MX, pas seulement le primaire. Un MX secondaire mal configuré reste joignable et peut accepter du mail sans TLS.
Si dig ne retourne aucun résultat, le problème est DNS : votre domaine n'a pas d'enregistrement MX, ou le DNS ne répond pas.
Étape 2 : tester la connexion TCP et le banner avec telnet
La commande telnet teste deux choses en une seule opération : l'ouverture du port TCP 25 et la réception du banner SMTP.
$ telnet mx1.captaindns.com 25
Trying 203.0.113.10...
Connected to mx1.captaindns.com.
Escape character is '^]'.
220 mx1.captaindns.com ESMTP Postfix
Interpréter le résultat
| Résultat | Signification | Action |
|---|---|---|
Connected + 220 ... | Serveur joignable, banner OK | Continuer le test |
Connection refused | Port 25 fermé ou service arrêté | Vérifier le firewall et le service SMTP |
Connection timed out | Port 25 bloqué (FAI, firewall) | Tester depuis un autre réseau |
220 sans hostname | Banner mal configuré | Corriger la config MTA |
Capturer les extensions EHLO
Après le banner, envoyez la commande EHLO pour découvrir les capacités du serveur :
EHLO test.captaindns.com
250-mx1.captaindns.com
250-PIPELINING
250-SIZE 52428800
250-STARTTLS
250-8BITMIME
250-SMTPUTF8
250 OK
Cherchez 250-STARTTLS dans la réponse : c'est la ligne qui confirme que le serveur supporte le chiffrement TLS. Si elle est absente, le serveur n'accepte que les connexions en clair.
Étape 3 : tester STARTTLS et le certificat TLS avec openssl
telnet ne peut pas initier une négociation TLS. Pour tester STARTTLS et inspecter le certificat, utilisez openssl s_client :
$ openssl s_client -connect mx1.captaindns.com:25 -starttls smtp
CONNECTED(00000003)
depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = R3
verify return:1
depth=0 CN = mx1.captaindns.com
verify return:1
---
Certificate chain
0 s:CN = mx1.captaindns.com
i:C = US, O = Let's Encrypt, CN = R3
1 s:C = US, O = Let's Encrypt, CN = R3
i:C = US, O = Internet Security Research Group, CN = ISRG Root X1
---
[...]
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
[...]
Les informations clés à vérifier
Version TLS : cherchez la ligne New, TLSv1.X. TLS 1.3 est optimal, TLS 1.2 est acceptable. TLS 1.0 et 1.1 sont obsolètes et vulnérables.
Chaîne de certificats : verify return:1 à chaque niveau signifie que la chaîne est valide. verify return:0 indique un problème (certificat expiré, émetteur inconnu, SAN manquant).
Sujet du certificat : le CN ou les SAN doivent correspondre au hostname du MX. Un certificat émis pour mail.captaindns.com ne sera pas valide pour mx1.captaindns.com.
Vérifier la date d'expiration
$ openssl s_client -connect mx1.captaindns.com:25 -starttls smtp 2>/dev/null | openssl x509 -noout -dates
notBefore=Jan 15 00:00:00 2026 GMT
notAfter=Apr 15 23:59:59 2026 GMT
Si notAfter est dans le passé, le certificat est expiré. Les serveurs expéditeurs qui vérifient les certificats (via MTA-STS ou DANE) refuseront la connexion.
Étape 4 : tester l'open relay
Un open relay accepte de transmettre du mail pour des destinataires externes sans authentification. Pour le détecter, tentez d'envoyer un email vers un domaine que votre serveur ne gère pas :
$ telnet mx1.captaindns.com 25
220 mx1.captaindns.com ESMTP
EHLO test.captaindns.com
250 OK
MAIL FROM:<test@captaindns.com>
250 OK
RCPT TO:<test@domaine-externe.example>
550 5.7.1 Relaying denied
QUIT
Interpréter le résultat
| Réponse à RCPT TO | Signification |
|---|---|
550 Relaying denied | Serveur correctement configuré (pas un open relay) |
250 OK | Open relay détecté, correction urgente requise |
450 ou 451 | Greylisting actif (normal, pas un open relay) |
554 | Rejeté pour une autre raison (blacklist, policy) |
Si votre serveur retourne 250 OK à un RCPT TO vers un domaine externe, il est configuré en open relay. Corrigez immédiatement la configuration de votre MTA (Postfix : smtpd_relay_restrictions, Exchange : receive connectors).
Diagnostiquer les problèmes courants
Port 25 bloqué
Symptôme : telnet mx1.captaindns.com 25 retourne "Connection timed out".
Causes possibles :
- Firewall local ou réseau qui bloque le port 25 en sortie
- Hébergeur cloud (AWS, Google Cloud, Azure) qui bloque le port 25 par défaut
- FAI qui bloque le port 25 sur les connexions résidentielles
Diagnostic : testez depuis un serveur hors de votre réseau. Si le test passe depuis l'extérieur mais échoue en local, le blocage est côté réseau/FAI. Pour plus de détails sur le blocage du port 25, consultez notre guide sur les ports SMTP.
Certificat TLS expiré
Symptôme : openssl s_client affiche verify return:0 et certificate has expired.
Impact : les serveurs qui appliquent MTA-STS refuseront de livrer les emails. Les serveurs sans MTA-STS livreront quand même (STARTTLS opportuniste), mais la connexion n'est pas authentifiée.
Solution : renouvelez le certificat (Let's Encrypt : certbot renew), puis rechargez le service SMTP.
STARTTLS annoncé mais échoue
Symptôme : le serveur annonce 250-STARTTLS dans EHLO, mais openssl s_client -starttls smtp échoue avec une erreur de handshake.
Causes possibles :
- Certificat référencé dans la config MTA mais fichier absent ou illisible
- Permissions incorrectes sur les fichiers de clé privée
- Version TLS trop ancienne (TLS 1.0 refusé par le client)
Diagnostic :
$ openssl s_client -connect mx1.captaindns.com:25 -starttls smtp -debug 2>&1 | head -30
Timeout de connexion (serveur lent)
Symptôme : la connexion TCP s'établit, mais le banner met plus de 30 secondes à apparaître.
Impact : certains serveurs expéditeurs abandonnent après un timeout (généralement 5 minutes pour le banner, RFC 5321 section 4.5.3.2). Un MX lent provoque des retards de livraison et des retries inutiles.
Solution : vérifiez la charge du serveur, les règles de greylisting agressives, ou les lookups DNS inversés lents (PTR) dans la configuration du MTA.

Automatiser les tests SMTP
Les commandes telnet et openssl sont utiles pour un diagnostic ponctuel, mais elles ont des limites : elles ne testent qu'un seul serveur à la fois, ne produisent pas de rapport structuré et ne sont pas pratiques pour un monitoring régulier.
Script bash de vérification rapide
#!/bin/bash
# Test SMTP basique pour tous les MX d'un domaine
DOMAIN="captaindns.com"
echo "=== MX de $DOMAIN ==="
dig $DOMAIN MX +short | sort -n | while read priority mx; do
mx="${mx%.}" # Retirer le point final
echo ""
echo "--- $mx (priorité $priority) ---"
# Test connexion port 25
timeout 10 bash -c "echo QUIT | telnet $mx 25 2>&1" | head -5
# Test STARTTLS + certificat
echo | timeout 10 openssl s_client -connect $mx:25 -starttls smtp 2>/dev/null | \
openssl x509 -noout -subject -dates 2>/dev/null || echo "STARTTLS: échec ou non supporté"
done
Ce script teste chaque MX du domaine : connexion TCP, banner et certificat TLS. Il ne couvre pas le test open relay (qui nécessite une interaction SMTP plus complexe).
Outil en ligne CaptainDNS
Pour un diagnostic complet sans installation, le SMTP/MX Connectivity Tester de CaptainDNS teste automatiquement tous les MX d'un domaine en une seule requête : résolution DNS, connexion port 25, banner, EHLO, STARTTLS, certificat TLS et détection open relay. Les résultats sont présentés avec un scoring par serveur et des codes de diagnostic explicites.
Testez la connectivité SMTP de vos serveurs MX : Utilisez notre SMTP/MX Connectivity Tester pour diagnostiquer en quelques secondes tous vos MX, avec validation du certificat TLS et détection open relay.
FAQ
Comment tester si un serveur SMTP répond sur le port 25 ?
Utilisez la commande telnet hostname 25. Si la connexion s'établit et que vous recevez une ligne commençant par 220, le serveur est joignable et le service SMTP fonctionne. Si vous obtenez "Connection refused" ou "Connection timed out", le port est fermé ou bloqué.
Comment vérifier le support STARTTLS d'un serveur MX ?
Connectez-vous avec telnet hostname 25, envoyez EHLO votre.hostname, et cherchez 250-STARTTLS dans la réponse. Pour tester la négociation TLS effective, utilisez openssl s_client -connect hostname:25 -starttls smtp. Si la négociation réussit, STARTTLS est fonctionnel.
Comment inspecter un certificat TLS SMTP avec openssl ?
Exécutez openssl s_client -connect hostname:25 -starttls smtp 2>/dev/null | openssl x509 -noout -text. Cette commande affiche le sujet, l'émetteur, les dates de validité, les SAN (Subject Alternative Names) et le type de clé. Vérifiez que le CN ou un SAN correspond au hostname du MX.
Comment détecter si un serveur est un open relay ?
Connectez-vous au serveur, envoyez MAIL FROM:<test@captaindns.com>, puis RCPT TO:<test@domaine-externe.example>. Si le serveur retourne 250 OK au RCPT TO vers un domaine qu'il ne gère pas, c'est un open relay. Un serveur correctement configuré retourne 550 Relaying denied.
Pourquoi mon serveur MX est injoignable sur le port 25 ?
Les causes les plus fréquentes : firewall qui bloque le port 25, hébergeur cloud qui bloque le port 25 par défaut (AWS, GCP, Azure), service SMTP arrêté, ou enregistrement MX pointant vers une mauvaise IP. Testez depuis un réseau différent pour isoler la cause.
Quelle version TLS est acceptable pour un serveur MX ?
TLS 1.2 est le minimum acceptable en 2026. TLS 1.3 est recommandé pour une sécurité optimale et de meilleures performances (handshake plus rapide). TLS 1.0 et 1.1 sont obsolètes (RFC 8996) et ne devraient plus être activés.
Quels outils en ligne testent la connectivité SMTP ?
Le SMTP/MX Connectivity Tester de CaptainDNS teste automatiquement tous les MX d'un domaine : banner, EHLO, STARTTLS, certificat TLS et open relay. D'autres outils comme MXToolbox SMTP Test ou CheckTLS offrent des fonctionnalités similaires, mais avec moins de détails sur le certificat.
Glossaire
- Banner SMTP : Première réponse du serveur (code 220) lors de la connexion TCP. Contient le hostname et parfois le logiciel MTA (Postfix, Exchange, Exim).
- EHLO : Extended HELO. Commande SMTP qui identifie le client et demande au serveur de lister ses extensions (STARTTLS, SIZE, PIPELINING, etc.).
- STARTTLS : Extension SMTP (RFC 3207) qui permet de basculer une connexion en clair vers une connexion chiffrée TLS via une commande explicite.
- Open relay : Serveur SMTP qui accepte de transmettre du mail pour des destinataires externes sans authentification. Vecteur de spam, cause de blacklisting rapide.
- SAN : Subject Alternative Name. Champ du certificat TLS qui liste les hostnames pour lesquels le certificat est valide.
- MTA : Mail Transfer Agent. Logiciel serveur qui transporte les emails (Postfix, Exim, Exchange, Sendmail).
- Greylisting : Technique anti-spam qui rejette temporairement (code 450) les emails d'expéditeurs inconnus. Le serveur légitime retente, le spammeur non.
📚 Guides SMTP et connectivité email connexes
- Les ports SMTP expliqués : 25, 465, 587, 2525 : rôle, chiffrement et cas d'usage de chaque port SMTP
- STARTTLS, SSL/TLS et SMTP : quel chiffrement pour vos emails ? : protocoles, configuration Postfix/Exim/Exchange et protection contre le downgrade
- Port 25 bloqué : diagnostic et solutions par hébergeur (à venir)


