{"id":71,"date":"2016-03-25T02:04:21","date_gmt":"2016-03-25T02:04:21","guid":{"rendered":"http:\/\/www.smtp-server.net\/?p=71"},"modified":"2015-05-04T20:34:26","modified_gmt":"2015-05-04T20:34:26","slug":"serveur-smtp-le-protocole-smtp","status":"publish","type":"post","link":"https:\/\/www.smtp-server.net\/fr\/serveur-smtp-le-protocole-smtp\/","title":{"rendered":"Serveur Att SMTP - Le protocole SMTP"},"content":{"rendered":"<p>Le courrier \u00e9lectronique existe sous une forme ou une autre depuis les ann\u00e9es 1960. Les gens se laissaient des messages les uns aux autres en utilisant un certain nombre de m\u00e9thodes diff\u00e9rentes sur les ordinateurs centraux, mais ce n'est qu'en ao\u00fbt 1982, lorsque l'Information Sciences Institute a publi\u00e9 The Simple Mail Transfer Protocol (SMTP ; RFC 821), qu'une m\u00e9thode normalis\u00e9e d'envoi et de r\u00e9ception du courrier \u00e9lectronique a \u00e9t\u00e9 propos\u00e9e.<\/p>\n<p><!--more--><\/p>\n<p>Le protocole SMTP s'est rapidement impos\u00e9 sur l'ARPANET, rempla\u00e7ant les anciennes m\u00e9thodes plus complexes utilis\u00e9es pour transf\u00e9rer le courrier d'un ordinateur central \u00e0 un autre. Il a \u00e9t\u00e9 pris en charge pour la premi\u00e8re fois fin 1982 par Sendmail, l'un des premiers agents de transfert de courrier, dans la version 4.1c de BSD.<br \/>\nDepuis lors, le protocole a \u00e9t\u00e9 r\u00e9vis\u00e9 et \u00e9tendu assez r\u00e9guli\u00e8rement, mais le principe de base de l'envoi de courriers \u00e9lectroniques est rest\u00e9 pratiquement inchang\u00e9.<\/p>\n<p>Ce protocole est un protocole textuel qui, \u00e0 l'origine, ne prenait pas en charge la transmission de donn\u00e9es binaires. Cependant, son caract\u00e8re textuel a facilit\u00e9 sa mise en \u0153uvre et sa maintenance. Le protocole MIME (Multipurpose Internet Mail Extensions) s'est popularis\u00e9 \u00e0 la fin des ann\u00e9es 80 pour l'encodage et l'envoi de donn\u00e9es binaires via SMTP. Aujourd'hui, SMTP est le protocole dominant pour l'envoi et la r\u00e9ception d'e-mails sur Internet, et une bonne ma\u00eetrise de ce protocole est indispensable pour tout administrateur r\u00e9seau.<\/p>\n<p>Le protocole SMTP \u00e9tant bas\u00e9 sur du texte, son apprentissage est nettement plus simple que celui de nombreux autres protocoles ; il suffit d'un programme capable d'envoyer des donn\u00e9es ASCII via le port TCP\/IP 25, tel que Telnet, pour communiquer directement avec un serveur SMTP.<\/p>\n<p>Les e-mails sont envoy\u00e9s via SMTP dans le cadre d'une transaction ; cela signifie que si l'envoi du message ne s'ach\u00e8ve pas compl\u00e8tement et sans g\u00e9n\u00e9rer d'erreur, le message est abandonn\u00e9. La norme RFC 821 d\u00e9crit une transaction comme comportant trois \u00e9tapes : sp\u00e9cifier un exp\u00e9diteur, fournir un ou plusieurs destinataires, puis envoyer le message lui-m\u00eame. Cependant, il est plus facile de consid\u00e9rer une transaction SMTP comme comportant 5 \u00e9tapes :<\/p>\n<ul>\n<li>Poign\u00e9e de main<\/li>\n<li>Indiquez l'adresse de r\u00e9ponse<\/li>\n<li>Envoyer aux destinataires<\/li>\n<li>Envoyer les donn\u00e9es du message<\/li>\n<li>Terminer la transaction<\/li>\n<\/ul>\n<p><b>Poign\u00e9e de main<\/b><\/p>\n<p>Lorsqu'il se connecte \u00e0 un serveur SMTP sur le port 25, l'exp\u00e9diteur d'un message doit attendre que le destinataire accepte la connexion et s'identifie selon le format suivant :<\/p>\n<blockquote><p>220 [domaine] [Informations sur le service]<br \/>\nExemple : 220 example.com Pr\u00eat \u00e0 l'emploi<\/p><\/blockquote>\n<p>L'exp\u00e9diteur doit alors s'identifier aupr\u00e8s du destinataire \u00e0 l'aide de la commande HELO.<\/p>\n<blockquote><p>HELO [domaine]<br \/>\nExemple : HELO example.com<\/p><\/blockquote>\n<p>Les serveurs de messagerie attendront que chacun s'identifie \u00e0 l'aide d'un nom de domaine, qui pourrait servir \u00e0 v\u00e9rifier l'identit\u00e9 du serveur en effectuant une recherche d'enregistrement MX ; toutefois, le serveur destinataire ne doit pas rejeter la connexion \u00e0 ce stade, m\u00eame si l'identit\u00e9 de l'exp\u00e9diteur ne peut \u00eatre v\u00e9rifi\u00e9e, et doit donc r\u00e9pondre par :<\/p>\n<blockquote><p>250 [Message]<br \/>\nExemple : 250 example.com Bonjour Bob \u00e0 example.com<\/p><\/blockquote>\n<p>Le code de r\u00e9ponse 250 est la r\u00e9ponse g\u00e9n\u00e9rique \u2018 OK \u2019 envoy\u00e9e par un serveur SMTP pour indiquer que la derni\u00e8re op\u00e9ration s'est d\u00e9roul\u00e9e avec succ\u00e8s.<\/p>\n<p><b>Adresse de r\u00e9ponse :<\/b><\/p>\n<p>Une fois que les deux serveurs ont \u00e9tabli la connexion, la transaction SMTP est lanc\u00e9e et nous pouvons commencer \u00e0 envoyer des commandes au serveur. Si vous souhaitez conna\u00eetre les commandes prises en charge par le serveur, envoyez la commande HELP ; le serveur SMTP devrait alors vous renvoyer un message indiquant les commandes disponibles.<\/p>\n<p>Pour pouvoir envoyer un message \u00e0 un utilisateur sur ce serveur, nous devons toutefois commencer par d\u00e9finir une adresse de r\u00e9ponse. Cette adresse doit \u00eatre indiqu\u00e9e au pr\u00e9alable afin que, en cas d'erreur lors de la transaction SMTP, celle-ci puisse \u00eatre signal\u00e9e \u00e0 cette adresse. Pour ce faire, nous utilisons la commande \u2018 MAIL FROM : \u2019 :<\/p>\n<blockquote><p>E-MAIL DE :<br \/>\nExemple : EXP\u00c9DITEUR :<\/p><\/blockquote>\n<p>Notez les caract\u00e8res \u00ab inf\u00e9rieur \u00e0 \u00bb et \u00ab sup\u00e9rieur \u00e0 \u00bb. La norme RFC 821 exige qu'ils encadrent l'adresse e-mail elle-m\u00eame. Si l'adresse est valide, le protocole SMTP renverra une r\u00e9ponse \u00ab 250 OK \u00bb.<\/p>\n<p><b>Envoyer aux destinataires<\/b><\/p>\n<p>Une fois l'adresse de r\u00e9ponse d\u00e9finie, le protocole SMTP nous permettra d'identifier les destinataires du message. Pour ce faire, nous utilisons la commande \u2018 RCPT TO : \u2019 :<\/p>\n<blockquote><p>\u00c0 L'ATTENTION DE :<br \/>\nExemple : DESTINATAIRE :<\/p><\/blockquote>\n<p>Pour d\u00e9finir plusieurs destinataires, il suffit de r\u00e9p\u00e9ter cette commande pour chaque destinataire. Si le destinataire accepte les messages destin\u00e9s \u00e0 cet utilisateur et est en mesure de recevoir le message \u00e0 ce moment-l\u00e0, il devrait renvoyer une r\u00e9ponse \u00ab 250 OK \u00bb. Toutefois, si le courrier n'est pas accept\u00e9 pour cet utilisateur, une r\u00e9ponse d'\u00e9chec 550 sera envoy\u00e9e, ou le code d'erreur appropri\u00e9. Si nous recevons une r\u00e9ponse 250 OK, nous pouvons poursuivre l'envoi des donn\u00e9es du message.<\/p>\n<p><b>Envoyer les donn\u00e9es du message<\/b><\/p>\n<p>L'envoi de donn\u00e9es via SMTP est assez simple, mais les formats de message peuvent s'av\u00e9rer assez complexes, en particulier lors de l'envoi de pi\u00e8ces jointes binaires. Pour commencer l'envoi de donn\u00e9es, il faut envoyer la commande \u2018 DATA \u2019, \u00e0 laquelle le serveur doit r\u00e9pondre par un code 354 (r\u00e9ponse interm\u00e9diaire). Par exemple :<\/p>\n<blockquote><p>354 Saisissez votre message en terminant par un \u201c . \u201d sur une ligne \u00e0 part<\/p><\/blockquote>\n<p>Le message le plus simple que l'on puisse envoyer est un message en texte brut, qui ne n\u00e9cessite pas l'utilisation du format de message MIME multipart. Tous les messages, qu'ils soient en texte brut ou non, se terminent par l'envoi d'une ligne ne contenant qu'un point. De plus, avant d'envoyer un message, vous pouvez inclure certaines informations d'en-t\u00eate telles que la date, l'objet, les champs \u00ab \u00c0 \u00bb, \u00ab Cc \u00bb et \u00ab De \u00bb.<\/p>\n<p>Exemple :<\/p>\n<blockquote><p>DONN\u00c9ES<br \/>\n354 Saisissez votre message en terminant par un \u201c . \u201d sur une ligne \u00e0 part<br \/>\nObjet : Il s'agit de l'objet du SMS<br \/>\nEt voici le corps du message en texte brut.<\/p><\/blockquote>\n<p>En cas d'acceptation, le serveur SMTP renverra une r\u00e9ponse \u00ab 250 OK \u00bb ou un code d'erreur si la transaction a \u00e9chou\u00e9 ou n'a pas \u00e9t\u00e9 men\u00e9e \u00e0 terme. Notez le point \u00e0 la fin de la ligne du corps du message : ce n'est que lorsqu'un point appara\u00eet seul sur une ligne que le serveur cesse d'attendre des donn\u00e9es. Si le serveur exp\u00e9diteur envoie un message susceptible de provoquer la fermeture pr\u00e9matur\u00e9e de la session de donn\u00e9es parce que le message contient un seul point sur une ligne, il doit ajouter un point suppl\u00e9mentaire \u00e0 cette ligne.<\/p>\n<p><b>Cl\u00f4ture de la transaction<\/b><\/p>\n<p>Jusqu'\u00e0 ce stade, tout ce qui a \u00e9t\u00e9 envoy\u00e9 au serveur SMTP destinataire est consid\u00e9r\u00e9 comme jetable. Si la commande \u2018 QUIT \u2019 n'est pas envoy\u00e9e avant la fermeture de la connexion, le serveur de destination supprimera simplement toutes les donn\u00e9es de message qui ont \u00e9t\u00e9 stock\u00e9es. Initialement utilis\u00e9e comme un moyen \u00e9l\u00e9gant de fermer une connexion, elle est aujourd'hui couramment utilis\u00e9e pour signaler qu'une transaction est termin\u00e9e, de nombreux serveurs de messagerie attendant la commande QUIT avant de mettre le message en file d'attente pour que l'agent de transfert de messages (MTA) l'achemine. Une fois que vous avez envoy\u00e9 la commande QUIT, le serveur de destination doit envoyer une r\u00e9ponse 221 pour confirmer que la transaction est termin\u00e9e et que la connexion est en cours de fermeture.<\/p>\n<p>Si vous vous familiarisez avec le protocole SMTP, il est recommand\u00e9 de consulter les RFC 821, 2476 et 2554. N'oubliez pas, notamment lorsque vous lisez la RFC 821, que depuis 1982, les serveurs de messagerie ont consid\u00e9rablement \u00e9volu\u00e9, en partie pour lutter contre les abus commis par les spammeurs.<\/p>","protected":false},"excerpt":{"rendered":"<p>Electronic Mail has existed in one form or another as far back as the 1960&#8217;s. People would leave messages for one another using a number of different methods on mainframe computers but it wasn&#8217;t until August 1982 when the Information Sciences Institute published The Simple Mail Transfer Protocol (SMTP; RFC 821) that a standardized method <a href=\"https:\/\/www.smtp-server.net\/fr\/serveur-smtp-le-protocole-smtp\/\" rel=\"nofollow\"><span class=\"sr-only\">Read more about Att SMTP Server &#8211; The SMTP Protocol<\/span>[...]<\/a><\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-71","post","type-post","status-publish","format-standard","hentry","category-smtp-servers"],"_links":{"self":[{"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/posts\/71","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/comments?post=71"}],"version-history":[{"count":1,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/posts\/71\/revisions"}],"predecessor-version":[{"id":72,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/posts\/71\/revisions\/72"}],"wp:attachment":[{"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/media?parent=71"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/categories?post=71"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.smtp-server.net\/fr\/wp-json\/wp\/v2\/tags?post=71"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}