Comment fonctionnent les échanges d’emails sur Internet ?

Simple Mail Transfer Protocol

Simple Mail Transfer Protocol

Le protocole SMTP (Simple Mail Transfert Protocol) est à la base de tous les échanges d’emails. Développé dans les années 80, il est aujourd’hui un des protocoles les plus utilisés dans le monde et entretenu par l’IETF (Internet Engineering Task Force, un groupe de travail qui participe à la définition des protocoles d’Internet). Il est défini, dans sa version actuelle, par la RFC 5321 qui détaille les méthodes et codes à utiliser dans les communications entre serveurs de messagerie.

 

Comment trouver le serveur destinataire ?

Lorsque vous envoyez un message, c’est par l’intermédiaire d’un MUA (Mail User Agent), plus communément nommé « Client de messagerie » (Outlook, Thunderbird ou un webmail). Il permet de composer le message (contenu et mise en page), avec les informations nécessaires à son envoi (expéditeur, destinataire, etc).

 

Le client communiquera ensuite l’email au MTA (Mail Transfert Agent), le serveur de messagerie qui, lui, permettra l’expédition du message à son (ou ses) destinataire(s). Pour cela, il commencera par rechercher l’adresse du serveur gérant la messagerie du domaine destinataire. Cette information est publiquement disponible via les DNS (Domain Name Service) et notamment les champs MX (Mail eXchange).

Voici un exemple de requête DNS visant à déterminer le serveur de messagerie gérant « orange.fr ».

# host -t MX orange.fr
orange.fr mail is handled by 10 smtp-in.orange.fr.

 

Comment fonctionne le SMTP ?

Le MUA connaissant maintenant l’adresse du serveur destinataire, il peut entamer le dialogue du protocole SMTP. Celui-ci se compose de 4 étapes obligatoires :

– « HELO » :  Permet d’initialiser la connexion.
– « MAIL FROM » : Indique l’adresse de l’expéditeur du message.
– « RCPT TO » : Indique l’adresse du destinataire du message.
– « DATA » : Apporte le contenu du message lui-même : les entêtes, le texte, les éventuelles images et/ou pièces jointes.

 

Il existe d’autres commandes disponibles, mais elles sont optionnelles. Par exemple « SIZE » qui demande au serveur destinataire le poids maximum autorisé pour les messages.

 

Chacune de ces étapes doit être validée pour un code de retour du serveur destinataire : « Acceptation », on continue ou « Erreur », on arrête. A l’issue de l’ensemble de la communication, si les étapes sont toutes validées, un code de réussite (« 250 ») sera émis. Si ce n’est pas le cas, un code d’erreur, plus ou moins explicite, justifiera l’échec de la communication.

 

Les limites du protocole SMTP

Actuellement, le protocole SMTP est largement implanté. Il est quasiment impossible de le remplacer par un nouveau protocole plus efficace pour des questions de compatibilité. Pourtant, il présente de nombreuses imperfections ; par exemple il n’est possible de transférer que du texte via SMTP, celui-ci n’est pas en mesure de gérer les polices, images ou pièces jointes. Pour pallier à cela, des extensions ont été mises en place, tels que le protocole MIME qui permet d’encoder ces différents éléments dans un format de données aisément exploité par le protocole SMTP.

D’autre part, SMTP n’est pas un protocole très sécurisé. Il ne comprend notamment aucun mécanisme de vérification de l’identité de l’expéditeur.

 

Il est donc indispensable de se protéger des différentes menaces liées à la messagerie : spams, virus (malwares, ransomwares, etc…), phishing et autres arnaques (fovi, scams, etc…).

 

Il existe pour cela des solutions très efficaces que nous proposons avec Altospam. Elles sont assemblées et mise en œuvre de façon transparente pour que vous ne receviez sur votre serveur que vos messages légitimes (plus d’informations).

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, …