Aller au menu - Aller au contenu

Icône Ma boîte aux lettres: le serveur POP

Avatar
Par Avatar yoch
Mise à jour : 26/08/2008
1 479 visites depuis 7 jours, dont 118 sur ce chapitre classé 88/786
Comme vu plus haut, il y a en réalité deux types de serveurs pour récupérer les mails : les serveurs POP, et les serveurs IMAP. Nous allons tout d'abord découvrir le protocole le plus utilisé : POP3, qui est la version la plus récente des serveurs POP.

Le protocole POP est tout simplement "le langage" permettant de récupérer et de manipuler les e-mails se trouvant sur les serveurs POP.

Dans ce chapitre, nous allons apprendre à le faire avec Telnet. N'ayez pas peur, tout le monde devrait y arriver du premier coup. ^^

Bon, alors on y va....

Sommaire du chapitre :
Icône du chapitre
Chapitre précédent Sommaire Chapitre suivant

Établir la connexion

Question : comment va-t-on s'y prendre pour se connecter au serveur POP ?



Ben... C'est simple, on lance un Telnet, et on fait :
open pop.laposte.net 25


Arrêtez, malheureux !

Si vous faites ça, vous recevrez un message du genre :
421 Cannot connect to SMTP server 191.251.214.115

Souvenez-vous que l'on n'utilise pas le même port pour deux services !


On va plutôt ouvrir la connexion sur le port 110.

Lancez Telnet, et tapez :

Code : Console
open pop.laposte.net 110

Pour ceux qui n'auraient pas suivi ^^ , cela signifie tout simplement que vous demandez d'établir une connexion avec le serveur pop.laposte.net sur le port 110.

Rappelez-vous que pop.laposte.net correspond à une adresse IP. Cela revient donc à écrire :

Code : Console
open 193.251.214.115 110

Essayez !



Si tout se passe bien, vous devriez avoir un retour du genre (en rouge) :

open pop.laposte.net 110
+OK connected to pop3 on 8201

Pourquoi cette fois il n'y a pas eu de message SMTP du genre "220..." comme tout à l'heure ?

Parce que l'on ne parle pas avec un serveur SMTP, mais avec un serveur POP, pardi ! :p
Les réponses du serveur POP sont très simples à comprendre (même si vous ne savez pas ce que veut dire OK ! :lol: ) :
  • si la phrase commence par le signe +, c'est bon ;
  • si elle commence par le signe -, eh bien, c'est pas bon !

Exemple d'un message d'erreur :
Code : Console
-ERR Unrecognized command

S'identifier

L'identification est ici cent fois plus simple :

user paul
+OK name is a valid mailbox
pass 123
+OK user exists with that password


Et voilà !

Il existe aussi une façon sécurisée de s'identifier, avec la commande APOP (qui n'est d'ailleurs pas supportée par tous les serveurs).

Manipuler ses mails

Lire son courrier



La première chose à faire est de vérifier si vous avez reçu un mail.
Je vais donc utiliser une nouvelle commande :

stat
+OK 1 2552


Le serveur me renvoie que j'ai 1 e-mail non lu, d'une longueur de 2552 octets.

Pour le lire, j'entre :
retr 1
+OK Message follows
.....
Subject: Dernière news.
Bla Bla Bla...


retr veut dire "récupère", et on lui passe en argument le numéro d'e-mail à récupérer (dans mon cas, 1).

Beaucoup de logiciels de messagerie envoient les e-mails au format HTML. Ne soyez donc pas étonnés si vous recevez du HTML.

OK, OK... Mais qu'est-ce que c'est que tous ces textes cabalistiques avant le message ?

Image utilisateur


Pas de panique ! :p Il faut savoir que les logiciels de messagerie et les serveurs SMTP qui se respectent envoient des tas d'informations sur la source de l'e-mail : ce sont les en-têtes du mail. Je ne vous demande pas de tout comprendre, mais jetez-y un coup d'oeil, c'est très instructif !

Et si j'ai plusieurs mails dans ma boîte de réception, il se passe quoi ?

Si jamais vous recevez une réponse du genre :
+OK 3 70204

...vous pouvez sans aucun problème faire :
retr 1
Bla Bla Bla...
retr 2
Bla Bla Bla...
retr 3
Et encore Bla...


Mais si vous désirez simplement connaître la taille de chacun des mails séparément, il existe une commande simple :
list
+OK scan listing follows
1 2323
2 3842
3 64039
.

Le listing se termine par un point à l'usage des courrieleurs qui doivent savoir où la liste s'arrête ! ça ne vous rappelle rien ?

Récupérer les en-têtes



D'aucuns voudront consulter les en-têtes avant de récupérer le mail. Pour cela, il existe une commande spéciale qui permet de récupérer un nombre de lignes précis du message, sachant que les lignes d'en-têtes ne sont pas comptées. On l'utilise par exemple ainsi :
top 1 0

J'ai demandé de récupérer 0 ligne sur le message numéro 1, ce qui me permet de récupérer uniquement les en-têtes.
Sur certains serveurs, il est obligatoire de récupérer au moins une ligne.

Effacer un message



Si je veux effacer le mail, je fais :

dele 1
+OK Message deleted


C'est pareil : dele veut dire "efface", et on lui passe en argument le numéro d'e-mail à effacer (dans mon cas, 1).
Note importante : le message n'est effacé que si vous quittez proprement le serveur.

Les pièces jointes

Comme envoyer une pièce jointe avec telnet est quasiment impossible, nous allons envoyer une pièce jointe de façon classique, puis la récupérer avec telnet.

Pour des raisons de simplicité, nous allons envoyer une pièce jointe toute simple.
Lancez votre éditeur de texte, puis entrez-y la phrase :

Image utilisateur


Sauvegardez le fichier au format .txt, et enfin envoyez-le à votre adresse mail.

Nous allons maintenant récupérer ce courrier avec telnet.
On lance telnet, on se connecte au serveur POP3 sur le port 110, on s'identifie, puis on vérifie que le mail est bien arrivé, et enfin on le récupère avec la commande retr.

Voici ce que ça donne chez moi (fin du message) :

Image utilisateur


Vous pouvez constater que le type MIME de la pièce jointe est donné :
Content-Type: text/plain
Ainsi que la description du fichier (pièce jointe), et son nom :
Content-Disposition: attachment; filename="texte.txt"

Et enfin (parce que ça ne pouvait quand même pas être si simple ^^ ) :
Content-Transfert-Encoding: base64
Ce qui veut dire que le fichier a été encodé en base64, comme c'est généralement le cas (si vous ne savez pas ce que c'est, vous devriez relire ceci ).

Pour vous en assurer, allez sur cette page (http://www.paulschou.com/tools/xlate/), et encodez la phrase que nous avons envoyée en pièce jointe.

Vous pouvez constater que la pièce jointe a été encodée en base64.

Image utilisateur


Et le pire, c'est que les pièces jointes seront toujours encodées en base64. Alors, imaginez-vous une image en base64 ! Et je ne vous parle pas de la longueur... :p
Voilà pourquoi il n'est pas très facile d'envoyer une pièce jointe avec telnet.

Quitter

Enfin, pour quitter, on fait comme tout à l'heure :
quit
+OK
Goodbye

Chapitre précédent Sommaire Chapitre suivant

Partager

4 commentaires pour "Ma boîte aux lettres: le serveur POP"
Note moyenne : 3.75 / 4 (20 votes)
Pseudo Commentaire
Hors ligne Gojira # Posté le 10/03/2008 à 18:53:07
Avatar

salut , super tuto ! je te met 20 !!! :p



 
Hors ligne Belut # Posté le 04/04/2008 à 20:56:19
Avatar

Ville : Vaux le pénil
Pays : France métropolitaine
Études : Paris II (Assas)

Un petit tuto qui ne paye pas de mine!!

Je me suis régalé à envoyer des mails et à aller sur ma boite aux lettres.
Merci pour ce tuto
Je te met 14

En espérant une suite, je ne sais pas trop ce que tu pourrais faire mais si il y en a une possible je compte sur toi pour la faire.
 
Hors ligne TheGamerz # Posté le 06/04/2008 à 11:41:51
"Je pense donc je suis"
Avatar

B'jour !

Moi je te met un 12 (mais un 15 pour ne pas trop baisser t'a moyenne quand même ;p) :

- Ce qui t'enlève le + de points, c'est 'arghh' il y a rien pour Mac dedans... on ne faire ton tuto sous Mac ?
Tu ne sais pas comment le faire ?

- Et, tu oublies parfois quelque explications (ou redirections) pour le "vocabulaire".
[parfois c'est souligner avec un "?" quand passe dessus, mais rien ne se passe si je clique]

Voilà =)


Corentin.

La Mort est un état de non-existance,
Tout ce qui n'existe pas n'est pas,
Donc, la mort n'existe pas...

Vous suivez ? ;p
 
Hors ligne Stryke # Posté le 11/01/2010 à 21:56:24
Avatar

Ville : Eschentzwiller
Pays : France métropolitaine

Merci !
J'ai pris plaisir à te lire.
Je suis près à lire une suite ;-)

Voir tous les commentaires