Passer au contenu principal
Vidéo : Présentation de SMTP

Vidéo : Présentation de SMTP

Technologie de l'e-mailConseils techniquesVidéos

Nous avons préparé une courte vidéo de présentation sur le SMTP :

Cette vidéo fait partie d'une série de vidéos plus complète sur tout ce qui concerne DMARC.

Voici la transcription :


Cette courte vidéo explique les bases du courrier électronique et comment il circule sur Internet via le Simple Mail Transport Protocol, connu sous le nom de SMTP.

Une attention particulière est accordée à la relation entre le SMTP et le sujet de DMARC, car cette vidéo a été créée par les concepteurs de dmarcian pour continuer à aider à diffuser DMARC dans le monde entier.

Le SMTP est utilisé pour acheminer les e-mails entre les serveurs lorsqu'un e-mail doit transiter par Internet. Le transfert d'e-mails entre deux serveurs différents est ce que le SMTP accomplit, et le SMTP le fait en utilisant un ensemble de commandes très conversationnel. Autrement dit, les serveurs se parlent, échangent des informations sur eux-mêmes, ils échangent des informations sur l'e-mail qui sera transféré, puis l'e-mail proprement dit est communiqué au serveur de réception. Cet échange est appelé la conversation SMTP.

Avant de plonger dans les détails de la conversation SMTP, il est important de noter que beaucoup de choses se produisent avant que le SMTP n'entre en jeu. Tout d'abord, un e-mail est composé par une personne ou un logiciel qui génère des e-mails. La personne ou le logiciel appuie ensuite sur ENVOYER, ce qui amène le client de messagerie à se connecter à un serveur de messagerie sortant. Si vous avez déjà utilisé un client de messagerie, vous avez probablement vu l'écran de configuration ou de préférences qui demande le serveur et le nom d'utilisateur + mot de passe pour l'envoi d'e-mails. Ces identifiants sont utilisés lorsque le client de messagerie se connecte au serveur sortant, et c'est ainsi que le serveur sortant sait qu'il est autorisé à livrer des e-mails au nom du client.

Le serveur sortant fait alors quelque chose d'intéressant. Il détermine où va l'e-mail, et il le fait en examinant le domaine de messagerie du destinataire. Une fois le domaine du destinataire connu, le serveur de messagerie sortant demande au système de noms de domaine global (presque toujours appelé « le DNS ») une liste de serveurs qui acceptent les e-mails au nom du domaine du destinataire. Lorsque la liste est renvoyée, le serveur de messagerie sortant peut alors se connecter au serveur qui acceptera l'e-mail du domaine du destinataire. Lorsque cette connexion est établie, la conversation SMTP commence. Gardez à l'esprit que le « S » de SMTP signifie Simple !

La conversation SMTP est une série de commandes que le serveur de messagerie sortant envoie au serveur de réception. Chaque commande reçoit une réponse du serveur de réception, et les réponses consistent en des codes numériques suivis de messages textuels réguliers qui sont destinés à faciliter la vie des gens s'ils devaient un jour plonger dans l'enfer spécial connu sous le nom de journal d'e-mails pour comprendre ce qui est arrivé à l'e-mail d'un PDG qui avait probablement quelque chose à voir avec des dîners ou des scandales impliquant des voitures électriques.

Nous allons examiner un exemple de conversation. Cet exemple utilise « smtp.sample.net » comme serveur sortant, en bleu en haut, et « mail.example.org » comme serveur de réception, en vert. La conversation se déroule de haut en bas, comme l'indique la grande flèche au centre de l'écran. La toute première commande que le serveur sortant émet après s'être connecté au serveur de réception est la commande HELO, qui inclut le nom du serveur sortant. C'est un peu comme se présenter à une fête… Bonjour, je suis le serveur de messagerie sortant.

À titre de remarque, il ne s'agit que d'un exemple de conversation pour montrer comment cela fonctionne. Dans le monde réel, la commande « HELO » a été largement remplacée par la commande « EHLO » (E-H-L-O), qui permet au serveur de réception de transmettre des informations sur ses capacités au serveur sortant dans le cadre de la réponse à la commande EHLO. Des extensions au SMTP sont ajoutées de temps en temps, ce qui maintient le courrier électronique à jour, mais transforme également le « S » de SMTP en une sorte de blague.

Bien, revenons de la parenthèse. Le code numérique que le serveur de réception utilise pour dire « OK, allez-y » est 250. En réponse à la commande HELO, le serveur de réception renvoie ici 250 et inclut son propre nom de serveur. C'est comme répondre à « Bonjour, je suis le serveur de messagerie sortant » par « Bonjour, je suis le serveur de réception, parlons-en ».

Le serveur de messagerie sortant exprime ensuite son désir de livrer un e-mail en indiquant au serveur de réception d'où provient l'e-mail. C'est la commande MAIL FROM, et nous utilisons « [email protected] » dans cet exemple. En réponse à cette commande, le serveur de réception envoie une réponse qui dit « 250 – cet expéditeur est acceptable pour moi, allez-y ». Satisfait de cette réponse, le serveur sortant continue et informe le récepteur du destinataire de l'e-mail. C'est la commande « RCPT TO », et l'adresse d'exemple est « [email protected] ». En raison de la « danse » de pré-connexion effectuée avant la conversation SMTP, le serveur sortant peut s'attendre à ce que le serveur de réception accepte les e-mails au nom du domaine du destinataire — sinon le serveur sortant ne se serait pas connecté à ce serveur de réception !

Le serveur de réception répond donc avec 250, confirmant que le destinataire est bien valide.

Pour clore cette conversation, le serveur d'envoi transmet la commande DATA pour indiquer au récepteur que le contenu réel de l'e-mail va suivre, ce que le récepteur accuse réception avec le code numérique 354. Le contenu de l'e-mail est alors transmis, puis le serveur d'envoi se déconnecte avec la commande QUIT.

Notez qu'après la livraison du contenu de l'e-mail, le serveur de réception peut ajouter des informations après la réponse 250.  Ce petit supplément d'information est très utile lorsque des humains doivent intervenir pour comprendre ce qui est arrivé à un e-mail.  L'opérateur du serveur d'envoi peut contacter l'opérateur du serveur de réception et demander « qu'est-il arrivé à l'e-mail que vous avez appelé 17 763 873 ? ».  L'opérateur de l'autre côté peut alors retrouver le sort de l'e-mail en utilisant le numéro fourni.

Sous sa forme simplifiée, voici comment fonctionne le SMTP.  Une fois que le serveur de réception accepte l'e-mail, celui-ci est probablement soumis à des processus tels que l'analyse anti-spam, les vérifications DMARC, puis éventuellement à la livraison dans une boîte de réception.

Qu'en est-il de l'e-mail lui-même ?  À quoi ressemble-t-il ?

Un e-mail se compose de deux sections : les en-têtes et le corps.

La section contenant les en-têtes est toujours située en haut de l'e-mail.  Les en-têtes sont des paires clé/valeur où la partie clé est le nom de l'en-tête suivi d'un deux-points, et la partie valeur est tout ce qui suit.  Les valeurs peuvent s'étendre sur plusieurs lignes tant que la ligne suivante commence par un espace.  Dans l'exemple ici, les deux premiers en-têtes—Return-Path et Delivered-To—sont des en-têtes sur une seule ligne, tandis que le troisième—Authentication-Results—s'étend sur 3 lignes au total.

Un petit ensemble d'en-têtes est ajouté à un e-mail par l'expéditeur original, mais à mesure que l'e-mail transite sur Internet, les serveurs qui le traitent peuvent ajouter des en-têtes.  Généralement, les en-têtes sont ajoutés pour faciliter le traçage du parcours de l'e-mail, mais ils peuvent également inclure des informations supplémentaires que le serveur de réception juge utiles.

L'en-tête Return-Path est un peu particulier et mérite d'être noté.  Il contient une copie de l'adresse e-mail qui est apparue dans la commande SMTP MAIL FROM.  L'en-tête Return-Path est renseigné par le serveur de réception, ce qui signifie que si un e-mail passe par plusieurs serveurs avant d'être livré, l'en-tête Return-Path peut être modifié plusieurs fois.  Personne n'a dit que le contenu des e-mails était simple—ce n'est pas S-MAIL, ni SMAIL—donc nous laisserons cela de côté.

Le dernier en-tête marque le début du corps de l'e-mail.  Dans la plupart des clients de messagerie, à l'exception des en-têtes comme Subject, From et Date, la plupart des en-têtes sont masqués.  Le corps de l'e-mail est ce que les gens lisent.  Cet exemple est très simple, mais la plupart des e-mails modernes utilisent MIME (ou Multipurpose Internet Mail Extensions) pour étendre les capacités de formatage et de reconnaissance de contenu des e-mails.  Plus d'informations sur MIME sont laissées à l'appréciation du lecteur !

Comprendre le SMTP et la structure des e-mails est essentiel pour appréhender le fonctionnement technique de DMARC.  DMARC établit un lien entre le contenu d'un e-mail et un domaine en utilisant SPF ou DKIM, un sujet développé dans la vidéo de présentation technique de DMARC.

Pour commencer avec DMARC, visitez dmarcian.com.

Des questions ? Contactez [email protected]

Merci de votre attention !