Social Icons

lundi 1 octobre 2012

installation et configuration serveur messagerie SMTP et POP3


Protocole SMTP
Commandes de base :
Le but du protocole de courrier Simple Mail Transfer Protocol (SMTP) est de transférer du courrier électronique selon un procédé efficace et fiable. L'émetteur SMTP établit une communication bidirectionnelle vers un récepteur SMTP. Celui-ci peut être soit la destination finale, soit seulement un intermédiaire. Le canal de transmission SMTP standard est une connexion TCP bidirectionnelle sur le port de service 25 Dès que le canal de transmission est établi, un échange de protocole s'assure que l'hôte demandeur communique bien avec l'hôte attendu. Les deux commandes suivantes sont utilisées dans les phases d’établissement et de fermeture de canal :
HELO <SP> <domain> <CRLF>
QUIT <CRLF>
  • La première étape de la procédure de transmission d’un message est la commande MAIL. L'argument contient le nom de la boîte aux lettres de l'émetteur. 
           MAIL <SP> FROM:<reverse-path> <CRLF>
  • La deuxième étape de la procédure est l'émission des commandes RCPT (Recipient) indiquant l’adresse du destinataire (plusieurs commandes RCPT à suivre si plusieurs destinataires du message).
           RCPT <SP> TO:<cheminDirect> <CRLF>
  • La troisième étape consiste en l'émission de la commande DATA suivie du message en caractères ASCII 7 bits, la fin des données est indiquée par une ligne ne contenant qu’un point.
           DATA <CRLF>

Tests à effectuer :
  • Ouvrir une fenêtre « TELNET » (configurée avec « écho local » de préférence) et se connecter sur le serveur de mail indiqué (type smtp.truc.fr) sur le port 25.
  • Effectuez l’émission d’un message et donnez la capture d’écran de votre échange.
  • Utilisez un logiciel de messagerie pour émettre des messages. A l’aide d’un analyseur
réseau, capturez l’échange entre votre PC et le serveur. Retrouvez les commandes
supplémentaires utilisées et donnez leur signification (consultez la RFC 821).
Voici un exemple de transaction entre un client (C) et un serveur SMTP (S)
S: 220 smtp.commentcamarche.net SMTP Ready  
C: EHLO machine1.commentcamarche.net  
S: 250 smtp.commentcamarche.net  
C: MAIL FROM:<webmaster@commentcamarche.net>  

S: 250 OK  
C: RCPT TO:<meandus@meandus.net>  

S: 250 OK  
C: RCPT TO:<tittom@tittom.fr>  

S: 550 No such user here  
C: DATA  
S: 354 Start mail input; end with <CRLF>.<CRLF>  

C: Subject: Petit Bonjour  
C: Salut Meandus,  
C: comment ca va?  
C :  
C: A bientot !  
C: <CRLF>.<CRLF>  

S: 250 OK  
C: QUIT  
R: 221 smtp.commentcamarche.net closing transmission




Les spécifications de base du protocole SMTP veulent que tous les caractères transmis soient codés en code ASCII sur 7 bits et que le 8ème bit soit explicitement mis à zéro. Ainsi pour envoyer des caractères accentués il faut faire recours à des algorithmes intégrant les spécifications MIME :
  • base64 pour les fichiers attachés
  • quoted-printable (d'abbréviation QP) pour les caractères spéciaux contenus dans le corps du message



Il est ainsi possible d'envoyer un courrier grâce à un simple telnet sur le port 25 du serveur SMTP :
telnet smtp.commentcamarche.net 25

(le serveur indiqué ci-dessus est volontairement inexistant, vous pouvez essayer en remplaçant commentcamarche.net par le domaine de votre fournisseur d'accès à internet)

Voici un récapitulatif des principales commandes SMTP

CommandeExempleDescription
HELO (désormais EHLO)EHLO 193.56.47.125Identification à l'aide de l'adresse IP ou du nom de domaine de l'ordinateur expéditeur
MAIL FROM:MAIL FROM: expediteur@domaine.comIdentification de l'adresse de l'expéditeur
RCPT TO:RCPT TO: destinataire@domaine.comIdentification de l'adresse du destinataire
DATADATA messageCorps du mail
QUITQUITSortie du serveur SMTP
HELPHELPListe des commandes SMTP supportées par le serveur

L'ensemble des spécifications du protocole SMTP sont définies dans le RFC 821 (depuis avril 2001, les spécifications du protocole SMTP sont définies dans le RFC 2821).

Protocole POP3

Le protocole POP3 (Post Office Protocol) permet à un utilisateur non connecté en permanence sur le Net de lire son courrier stocké sur un serveur. Un client de messagerie (type Eudora ou Outlook Express) correctement configuré permet généralement de réaliser cette opération de manière automatique. Le TP permet de vérifier les commandes utilisées par ces logiciels.

Les commandes de base :
Connexion :
USER machin permet la connexion de l’utilisateur « machin »
PASS xxxxxx indique le mot de passe de l’utilisateur.
Si la connexion est possible le serveur indique OK
Exploitation :
STAT Retourne le nombre de message et le nombre d’octets
LIST Retourne la liste des messages (n° et taille de chacun)
RETR n Récupération du message n° n
DELE n Marquage du message n pour effacement
RSET Retire le marquage « effacement » aux message marqués par DELE
QUIT Effacement des messages marqués et fermeture de la connexion
Options :
TOP n x Affiche x lignes du message n° n
UIDL Indique les UID (Unique Identifier) des messages

Tests à effectuer :
Votre compte de messagerie doit posséder quelques messages non lus (utiliser un logiciel de messagerie si nécessaire).
  • Ouvrir une fenêtre « TELNET » (configurée avec « écho local » de préférence) et se connecter sur le serveur de mail indiqué (type pop.truc.fr) sur le port 110.
  • Effectuez une lecture d’un message et donnez la capture d’écran de votre échange.
  • La connexion USER/PASS circule en clair sur le réseau, pour une meilleure sécurité une commande optionnelle POP3 existe. Recherchez dans la RFC 1939 cette commande et indiquez brièvement son fonctionnement.
  • A l’aide d’un analyseur réseau, capturez l’échange entre votre PC et le serveur, utilisez un logiciel de messagerie pour lire vos messages. Le mot de passe circule t’il en clair ?

Aucun commentaire :

Enregistrer un commentaire

Abonnez-vous par e-mail

Pour recevoire les nouvelles article