Est-il difficile d’envoyer un email ? Du point de vue de l’utilisateur, tout semble assez simple. En coulisses, cependant, il existe un système complexe qui achemine les emails de l’expéditeur au destinataire.
Lorsque vous cliquez sur un bouton pour envoyer un email, votre fournisseur de services de messagerie se connecte au serveur de messagerie. Les serveurs sont des ordinateurs qui gèrent des services spécifiques. Un serveur de messagerie est destiné à gérer les emails.
Par ailleurs, nous pouvons diviser les serveurs de messagerie en deux catégories : sortants et entrants. Aujourd’hui, nous allons parler d’un concept lié à un serveur de messagerie sortant, connu sous le nom de serveur SMTP.
Qu’est-ce qu’un serveur SMTP ?
Un serveur SMTP est un ordinateur ou une application responsable de l’envoi des emails. Il fonctionne selon le Simple Mail Transfer Protocol (SMTP). Un serveur SMTP reçoit des emails du fournisseur de services de messagerie. Il les transmet ensuite à un autre serveur de messagerie SMTP et les relaie au serveur de messagerie entrant.
Comment fonctionne un serveur SMTP ?
Regardons les étapes de base de l’envoi d’un email et le rôle que joue le serveur SMTP.
- Un Mail User Agent (MUA), qui peut être votre fournisseur de services de messagerie ou une application, se connecte au serveur SMTP de votre domaine (par exemple, live.smtp.mailtrap.io) pour commencer la connexion SMTP. On appelle cela une poignée de main SMTP. La connexion se fait via un port SMTP, qui est normalement le 25. Cependant, d’autres ports, tels que le 465, 587 et 2525, peuvent également être utilisés dans différents cas. Pour en savoir plus à leur sujet, consultez notre article de blog sur les ports SMTP. Une fois connecté, la session SMTP commence.
- Le client soumet les adresses email de l’expéditeur et du destinataire, ainsi que le corps de l’email et les pièces jointes, au serveur.
- Le serveur SMTP, ou plus précisément, le Mail Transfer Agent (MTA), vérifie si le nom de domaine du destinataire et de l’expéditeur est le même. Si c’est le cas, l’email va directement au serveur POP3 ou IMAP du destinataire. Si les domaines sont différents, le serveur SMTP doit communiquer avec le Domain Name Server (DNS).
- Le DNS fournit l’adresse IP du destinataire.
- Le serveur SMTP de l’expéditeur se connecte au serveur SMTP du destinataire et relaie l’email. Si le serveur du destinataire n’est pas disponible (en panne ou occupé), l’email sera placé dans une file d’attente SMTP. Il s’agit d’un tampon où les emails sont stockés avant d’atteindre leur destination. Pour en savoir plus, lisez notre article de blog sur les emails en file d’attente. Alternativement, l’email peut être transféré à un serveur de sauvegarde.
- Le serveur SMTP du destinataire vérifie l’email entrant. Si le domaine et le nom d’utilisateur sont reconnus, le serveur transfert l’email aux serveurs de réception, serveur POP3 ou IMAP.
Un serveur SMTP est-il sécurisé ?
Étonnamment, le serveur SMTP n’est pas intrinsèquement sécurisé. Il ne dispose d’aucun mécanisme de chiffrement ou de sécurité intégré. Cela le rend vulnérable à l’usurpation d’identité, au spam ou aux fuites de données. Pour éviter tous ces événements malheureux, les fournisseurs de messagerie ont ajouté des couches de sécurité à l’infrastructure.
Le premier mécanisme qu’ils ont incorporé a été le Secure Sockets Layer (SSL), mais il avait des failles de sécurité importantes. En conséquence, l’Internet Engineering Task Force (IETF) a abandonné sa version finale, SSL 3.0 en 2015 en imposant le RFC 7568.
Quatre ans après la création de SSL, une autre norme de sécurité, le Transport Security Layer (TLS), a été introduite au public. Initialement, il n’était pas parfait non plus, mais il a été amélioré au fil des ans. En 2022, la version TLS 1.3 était considérée comme le protocole le plus sûr pour le chiffrement des emails.
Tout cela est bien, mais à quel moment de la connexion SMTP le TLS entre-t-il en jeu ? Par défaut, la plupart des fournisseurs de services de messagerie initient une connexion TLS pendant la poignée de main. Ils le font en utilisant la commande SMTP STARTTLS, qui initie le passage à une connexion chiffrée. Pour en savoir plus, consultez notre article de blog sur la sécurité SMTP.
Qu’est-ce que l’authentification SMTP ?
L’authentification SMTP ou SMTP AUTH est le mécanisme utilisé pour sécuriser le serveur de messagerie sortant. C’est le service fourni par l’Extended Simple Mail Transfer Protocol (ESMTP) qui ajoute de nouvelles fonctionnalités au protocole SMTP, y compris l’authentification.
SMTP AUTH “exige” que l’expéditeur soit autorisé à utiliser le serveur pour envoyer des emails. Cela complique l’usurpation de l’identité des utilisateurs réels, les protégeant ainsi des usurpateurs et des spammeurs.
SMTP AUTH utilise le mécanisme SASL pour l’authentification, qui spécifie le niveau de sécurité et les méthodes de connexion. Les mécanismes tels que PLAIN, LOGIN et CRAM-MD5 sont couramment utilisés dans ce processus. Pour en savoir plus sur l’authentification SMTP, consultez notre guide dédié.
Faut-il utiliser des serveurs SMTP locaux ou basés sur le cloud ?
Votre propre serveur SMTP
Configurer votre propre serveur SMTP peut être une option si vous souhaitez envoyer beaucoup d’emails. Cela n’impose aucune limite sur le nombre d’emails que vous envoyez par heure/jour et garantit le contrôle de tous vos emails sortants.
Cependant, il existe un inconvénient, car le taux de rebond peut augmenter de 20 à 30%, ce qui est un facteur majeur à considérer pour la délivrabilité des emails transactionnels ou des campagnes de marketing par email. Si vous souhaitez connaître tous les tenants et aboutissants de la configuration de votre propre serveur SMTP, lisez cet article de blog.
API tierces d’envoi d’emails
Dans notre guide sur les meilleurs serveurs SMTP gratuits, nous avons présenté une liste d’API d’email tierces basées sur le cloud que la plupart des startups et des projets choisissent. Ce sont des services de relais SMTP tels que Gmail, Amazon SES, Elastic Email, Mailtrap, et d’autres.
Le principal avantage d’utiliser des fournisseurs de services SMTP plutôt qu’un serveur SMTP local est que vous n’avez pas à construire et maintenir toute l’infrastructure de messagerie par vous-même. Cela signifie que vous économisez vos ressources.
Cependant, il est important de choisir une option fiable comme l’Email API/SMTP de Mailtrap. C’est une solution de bout en bout qui peut livrer les emails dans les boîtes de réception des destinataires en toute sécurité.
Elle comprend de nombreuses fonctionnalités utiles, telles que des analyses exploitables, des SDK pour divers langages de programmation, une livraison d’emails dans les délais, une configuration fluide et sécurisée, et bien plus encore. Les analyses mentionnées peuvent être utilisées pour suivre et contrôler la délivrabilité de tous vos emails sortants.
Le plus important, c’est le fait que l’Email API/SMTP de Mailtrap facilite grandement l’utilisation de son service SMTP ou de son API d’email. Une fois que vous avez vérifié votre domaine avec les protocoles d’authentification SPF, DKIM et DMARC, vous verrez immédiatement les identifiants SMTP et API d’email pour le flux d’envoi d’emails en masse et transactionnels.
Le serveur SMTP d’Email API/SMTP de Mailtrap utilise les mécanismes d’authentification PLAIN et LOGIN et nécessite le chiffrement STARTTLS.
Maintenant que vous savez ce qu’est un serveur SMTP et comment il fonctionne, approfondissons et répondons aux autres questions que vous pourriez avoir.
Serveur relais SMTP ou API HTTP – lequel est le meilleur et dans quelle situation ?
Un Mail User Agent (le client) envoie des emails au serveur via SMTP. C’est un protocole indépendant de la plateforme largement utilisé pour l’envoi d’emails. Parallèlement, vous pouvez envoyer des emails depuis votre application en utilisant un protocole spécifique au web – HTTP. Dans ce cas, il n’y a pas de va-et-vient entre le client et le serveur ou entre les serveurs. Votre application envoie des requêtes HTTP à un service tiers qui effectue l’envoi d’emails. Cette méthode de livraison d’emails est connue sous le nom d’API HTTP ou API Web.
Nous ne pouvons pas affirmer que les APIs Web surpassent le service des serveurs relais SMTP. Chaque option a ses avantages et ses inconvénients.
Choisissez un serveur SMTP si :
- vous préférez la simplicité pour des tâches de base
- vous avez besoin d’intégration avec votre système CRM ou service de messagerie pour gérer les relations avec les clients
- vous recherchez une solution fiable et durable
Choisissez une API Web si :
- vous gérez des emails en masse
- vous avez besoin de plus de fonctionnalités
- modifier et jouer avec le code ne vous dérange pas
Pour en savoir plus sur les différences entre serveur relais SMTP et API HTTP, lisez notre article de blog.
Qu’est-ce qu’une adresse serveur SMTP ?
Un serveur SMTP a une adresse web pour communiquer avec d’autres serveurs et clients sur Internet. En général, elle ressemble à smtp. ou mail. plus le nom du domaine. Voici quelques exemples :
Fournisseur de services de messagerie | Paramètres et adresses SMTP |
Microsoft 365 et Outlook | Serveur : smtp.office365.com Port : 587 Chiffrement : STARTTLS |
Gmail | Serveur : smtp.gmail.com Port : 587 or 465 Chiffrement : SSL, TLS ou STARTTLS |
GMX | Serveur : mail.gmx.net Port : 587 Chiffrement : N/A |
Yahoo | Serveur : smtp.mail.yahoo.com Port : 587 or 465 Chiffrement : SSL ou TLS |
iCloud Mail | Serveur : smtp.mail.me.com Port : 587 Chiffrement : SSL, TLS ou STARTTLS |
Si vous avez configuré votre propre serveur SMTP, vous pouvez utiliser son adresse IP, par exemple, 192.0.2.0, au lieu de l’adresse web.
Les utilisateurs de services de messagerie partagés peuvent trouver des informations sur le nom et l’adresse du serveur SMTP en consultant les enregistrements MX du domaine.
Un serveur SMTP et un relais SMTP sont-ils la même chose ?
Le relais SMTP est le processus de transfert d’emails entre les serveurs SMTP (ou MTA si vous préférez). Un relais se produit si l’expéditeur et le destinataire proviennent de différents domaines. En pratique, cependant, le terme relais SMTP fait souvent référence aux serveurs SMTP qui permettent le relais. Les fournisseurs de messagerie comme l’Email API/SMTP de Mailtrap offrent de tels serveurs de relais pour l’envoi d’emails en masse et transactionnels. Dans ce contexte, on peut dire qu’un serveur SMTP et un relais SMTP sont la même chose.
Qu’est-ce qu’un faux serveur SMTP ?
- Un vrai serveur SMTP accepte les emails du client et les envoie au serveur de messagerie entrant.
- Un faux serveur SMTP accepte les emails du client et simule l’envoi sans livraison réelle.
Pourquoi aurais-je besoin d’un faux serveur SMTP alors ? – Pour tester l’envoi d’emails, bien sûr !
À un certain stade de votre projet, vous aurez besoin d’envoyer quelques emails de test depuis votre application ou votre site web. Vous pouvez le faire en utilisant un vrai serveur SMTP. Dans ce cas, vous devrez bricoler avec des comptes email fictifs, c’est-à-dire créer des centaines d’adresses email qui disparaîtront en quelques heures.
Pour être tout à fait honnête, les emails fictifs ne sont pas la meilleure solution pour les tests. Ils nécessitent trop de ressources, ont des capacités limitées en termes de test de conception et contiennent le risque de spammer de vrais utilisateurs. C’est là qu’un faux serveur SMTP entre en jeu !
En plus de l’Email API/SMTP, la plateforme d’Email Delivery de Mailtrap comprend l’Email Testing, une solution de test basée sur le cloud qui capture le trafic SMTP sortant.
Avec l’Email Testing de Mailtrap, les emails de test que vous envoyez depuis votre application seront capturés à l’aide d’un faux serveur SMTP et placés dans une boîte de réception virtuelle. Vous pouvez être sûr qu’aucun des emails ne sera envoyé à vos utilisateurs. Contrairement aux emails fictifs, l’Email Testing permet l’automatisation de l’assurance qualité et élimine la plupart du travail manuel.
De plus, vous pouvez prévisualiser les emails, vérifier les spam et la présence de votre domaine d’expéditeur/IP sur des listes noires, inspecter le HTML/CSS, et bien plus encore.
Vous pouvez également envisager de configurer un faux serveur SMTP local comme MailHog ou MailCatcher, voire une application de bureau, par exemple FakeSMTP ou DevNull SMTP. Nous avons décrit les raisons de choisir entre un faux SMTP cloud ou local dans l’article de blog dédié.
Quelle est la différence entre un serveur SMTP et un serveur IMAP/POP3 ?
SMTP est un protocole d’envoi d’emails, tandis qu’IMAP4 et POP3 sont des protocoles de réception d’emails. Par conséquent, un serveur de messagerie entrant peut utiliser l’un de ces protocoles pour la livraison d’emails. Voici comment ils fonctionnent :
Flux de travail IMAP | Flux de travail POP3 |
Le fournisseur de services de messagerie se connecte au serveur Le destinataire peut voir les en-têtes de tous les emails sur le serveur Le fournisseur de services de messagerie télécharge un email choisi sur demande | Le fournisseur de services de messagerie se connecte au serveur Le fournisseur de services de messagerie récupère les emails Le serveur supprime les emails stockés Le fournisseur de service de messagerie se déconnecte du serveur |
La principale différence entre ces protocoles est que les serveurs IMAP stockent toujours des copies des emails, tandis que les serveurs POP3 les suppriment une fois qu’ils sont récupérés. Pour en savoir plus sur les différences entre les serveurs entrants et sortants, consultez notre article de blog IMAP vs POP3 vs SMTP.
En quoi un MTA diffère-t-il d’un serveur SMTP ?
Il est courant d’utiliser le terme “Mail Transfer Agent” plutôt que “serveur SMTP”. Mais ces notions ne sont-elles pas différentes ? Un MTA est un logiciel installé sur le serveur SMTP. En général, un MTA reçoit des emails d’un MUA et les transfère à :
- un Mail Delivery Agent (MDA), si l’expéditeur et le destinataire ont le même domaine, ou
- un autre MTA (serveur SMTP)
Dans certains cas, il peut également y avoir un Mail Submission Agent (MSA) entre le MUA et le MTA. Cependant, de nombreux MTAs remplissent la fonction de MSA, c’est pourquoi la mention des Mail Submission Agents est souvent omise. Les MTAs les plus utilisés sont Postfix, Sendmail et Exim.
Donc, si vous appelez le serveur SMTP un MTA ou même un MSA, ce ne sera pas une erreur. La différence réside dans la nomenclature que vous utilisez.
Checklist pour le dépannage du serveur SMTP
Disons que vous avez vérifié l’envoi d’emails de votre application, et que tout est en ordre. Nous espérons que la Plateforme d’Email Delivery de Mailtrap vous a aidé avec cela :). Mais lorsque vous avez commencé à utiliser un vrai serveur SMTP pour envoyer des emails, ils n’ont pas été livrés. La checklist suivante vous aidera à détecter ce qui peut en être la cause :
- vérifier la connexion Internet
- vérifier la configuration du serveur SMTP (nom du serveur, port, nom d’utilisateur, mot de passe)
- essayer différents ports SMTP
- tester la connexion au serveur SMTP. Pour cela, vous pouvez soit utiliser un service en ligne comme MXToolbox, soit effectuer une session telnet manuelle. Lisez notre article de blog sur tester le serveur SMTP pour apprendre à le faire. Vous pouvez également avoir besoin de connaître les commandes SMTP et les codes de réponse pour le dépannage.
Conclusion
Voilà tout ce que nous voulions couvrir dans ce guide sur les serveurs SMTP. Nous avons abordé toutes les questions fréquemment posées, y compris ce qu’est un serveur SMTP, comment il fonctionne, comment il se compare à d’autres serveurs SMTP et comment résoudre les erreurs. Nous avons également discuté des relais SMTP tiers et des faux serveurs SMTP pour les tests.
Pour exploiter les faux serveurs SMTP, puis envoyer des emails via un SMTP basé sur le cloud, nous recommandons d’utiliser la Plateforme d’Email Delivery de Mailtrap. C’est une solution unique pour tous vos besoins SMTP.
Pour un examen approfondi des différents aspects du serveur SMTP, consultez les articles de blog que nous avons recommandés ci-dessus.
Si vous souhaitez que nous abordions d’autres sujets, faites-le nous savoir sur X.