Envoyer un mail via telnet

Par convention, je présente les parties que nous introduisons au clavier de cette manière.

Pour établir une connexion telnet, nous n'avons pas besoin d'un logiciel spécial : nous pouvons simplement le faire au travers du prompt.

  • Sous Windows :
    • Dans le menu démarrer, sélectionner Exécuter (ou utiliser la combinaison de touches Windows drapeau flagWin1 + R).
    • Dans la fenêtre, tapez la commande cmd. La fenêtre de prompt est alors ouverte.
  • Sous Linux :
    • Si vous êtes en mode graphique, ouvrez une console.
    • Si vous travaillez déjà en mode console, rien à faire.

Nous devons établir la connexion à notre serveur, sur le port 25 (SMTP) :

telnet smtp.free.org 25

Trying 66.102.9.104...
Connected to smtp.free.org
Escape character is '^]'.
220 smtp.free.org ESMTP Sendmail 8.9.3/8.9.3; Wed, 08 Sep 2005 05:30:15 +0100

Si vous ne voyez pas sur votre écran ce que vous tapez au clavier, c'est que le retour (echo) ne se fait pas. Vous êtes connectés via telnet sur une machine distante, les caractères ne sont donc normalement pas envoyés vers votre écran.

Une fois connectés via la commande telnet, nous pouvons négocier l'option ECHO pour avoir un retour à l'écran.

telnet
set localecho

localecho on
open 66.102.9.104 25

Une fois que nous sommes connectés sur le serveur SMTP, nous pouvons tenter d'identifier le client par la commande EHLO. Si le serveur répond favorablement à la commande, c'est qu'il implémente ESMTP, qui est une version étendue de SMTP.

Dans le cas contraire, nous devons utiliser la commande SMTP HELO.

ehlo
250-Welcome [213.186.33.19], pleased to meet you
250-XEXCH50
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250 HELP

L'ensemble des termes qui suivent le groupe de 3 chiffres décrit les extensions de service que le serveur supporte.

Nous pouvons écrire l'enveloppe du message :

mail from: linus.torvald@free.org
250 linus.torvald@free.org... Sender ok
rcpt to: billou@microsoft.com
billou@microsoft.com... Recipient ok
data
354 Enter mail, end with "." on a line by itself

Le serveur smtp nous signale que nous pouvons commencer à rédiger le corps du message, et que ce dernier sera considéré comme terminé lorsqu'un point final sera rencontré, suivi par un retour à la ligne.

From: linus.torvald@free.org
To: billou@microsoft.com
Subject: invitation

Viens manger chez moi ce soir
Je sais que tes fins de mois sont difficiles
.

250 WAA11355 Message accepted for delivery
quit
221 smtp.free.org closing connection
Connection closed by foreign host.

Remarques

Aucune vérification n'est faite sur l'identité de la personne qui émet un message SMTP.

Nous devons absolument utiliser une ligne vide pour séparer le contenu de l'en-tête du reste du message.

Nous pouvons remarquer deux types d'en-têtes utilisés : ceux de l'enveloppe, et ceux du message proprement dit.
Les en-têtes de l'enveloppe permettent le cheminement du message au travers des différents MTA, alors que les en-têtes du message servent au MUA qui les utilisera pour remplir les différents champs.

 

Document créé le 08/09/2005, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/reseaux-telnet-smtp.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Notes

  1.  Touche [Win] : Touche Windows (le petit drapeau Win ou Win10), souvent entre les touches [Ctrl] et [Alt], à gauche de la barre d'espace