Réseau - Web - GNU/Linux

2011 12 mai

Émulation d'une session SMTP en utilisant Telnet - Debian 5.0 Lenny

Rédigé par Marc GUILLAUME | Aucun commentaire
Article précédent Mail façon FAI - Debian 5.0 Lenny Article suivant

Premier test du serveur via Telnet.

Essayons maintenant d'envoyer un mail à un utilisateur. Comme le domaine "example.com" n'existe pas réellement (ou ne vous appartient pas) vos enregistrements DNS ne doivent pas pointer sur le bon serveur, c'est pourquoi nous devons émuler une session SMTP à l'aide de la commande telnet. Installez le paquet telnet si ce n'est pas déjà fait :

$> aptitude install telnet

Ensuite établissez une connexion TCP sur le port SMTP :

$> telnet localhost smtp

Le serveur devrait répondre :

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 mailtest ESMTP Postfix (Debian/GNU)

Parfait, Postfix écoute et veut que vous parliez SMTP. Commençons par être polis :

ehlo example.com

Postfix apprécie notre amabilité et nous dit quelles fonctionnalités il offre :

250-my-new-mailserver
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

Eh, Postfix, nous avons un mail de steve@example.com :

mail from:<steve@example.com>

Il semble que cela plaise à Postfix car il retourne un code commençant par un '2' ce qui est bon signe :

250 2.1.0 Ok

Dites à Postfix qui est le destinataire du mail :

rcpt to:<john@example.com>

Postfix accepte :

250 2.1.5 Ok

Nous sommes prêt à envoyer le mail

data

Postfix accepte et nous dit que nous pouvons envoyer le mail maintenant et que nous devons terminer notre envoi par une ligne vide qui ne contient qu'un point :

354 End data with<CR><LF>.<CR><LF>

C'est bon, tapez le contenu du mail :

Hi John,

just wanted to drop you a note.
.

Postfix nous dit qu'il a reçu le mail et qu'il l'a mis en fille d'attente avec un numéro de distribution (ID) :

250 2.0.0 Ok: queued as A9D64379C4

Merci Postfix, nous avons fini :

quit

Vérification des logs

Maintenant jetez un oeil a /var/log/mail.log. Vous devriez voir quelque chose de similaire à ça :

postfix/smtpd[..: connect from localhost[127.0.0.1]
postfix/smtpd[..: 5FF712A6: client=localhost[127.0.0.1]
postfix/cleanup[..: 5FF712A6: message-id=<...>
postfix/qmgr[..: 5FF712A6: from=<steve@example.com>, size=364, nrcpt=1 (queue active)
postfix/pipe[..: 5FF712A6: to=<john@example.com>, relay=dovecot, ...,  
status=sent (delivered via dovecot service)
postfix/qmgr[..: 5FF712A6: removed
postfix/smtpd[..: disconnect from localhost[127.0.0.1]

La distribution à fonctionné. Postfix a correctement déterminé que le domaine de destination est un domaine virtuel et a transmis le courrier au service Dovecot.

Vérification de la boîte de l'utilisateur

Le mail devrait se trouver maintenant quelque part sous /var/vmail/example.com/john. Regardons :

$> cd /var/vmail/example.com/john/Maildir
$> find
.
./cur
./new
./new/1179521979.V801I2bbf7M15352.mailtest
./tmp

Le mail se trouve bien là. Essayez de lire le mail avec le programme "mutt" :

$> mutt -f .

Le nouveau mail est affiché :

q:Quit  d:Del  u:Undel  s:Save  m:Mail  r:Reply  g:Group  ?:Help
   1 N   May 18 steve@example.c (0.1K)

Appuyez sur ENTER pour le lire :

From: steve@example.com
To: undisclosed-recipients: ;

Hi John,

just wanted to drop you a note.

Le mail est bien arrivé sur le compte de John. Parfait, tappez q deux fois pour quitter mutt.

Écrire un commentaire

Quelle est la dernière lettre du mot lfyzfe ?

Fil RSS des commentaires de cet article

À propos

Yakati.info - Réseau - Web - GNU/Linux © 2017

Généré par PluXml en 0.038s  - Administration

Mes coordonnées

Marc Guillaume
contact[at]yakati.info
79150 ÉTUSSON

Crédits

Pour la gestion du contenu

Généré par PluXml, le Blog ou Cms sans base de données

Pour le contenu

Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.

Pour le thème

Thème SOLID de blacktie.co adapté pour PluXml