Vous ne le savez peut-être pas, mais si vous utilisez YAM, vous êtes des veinards :
non seulement les virus de type "vers outlook" vous laissent de marbre (et vous ne
polluez pas la boite aux lettres de vos contacts) mais en plus vous pouvez effacer
vos mails directement sur le serveur ;-) Les pauvres windaubistes abreuvés à
l'Outlouk sont généralement condamnés à utiliser Telnet pour ce genre d'opérations
alors qu'il leur suffirait de désinstaller le bestiaud et d'installer un vrai
mailer digne de ce nom (Pegasus Mail ou Eudora Pro par exemple).
Telnet CéKoiDonc ?
Telnet est tout simplement l'un des moyens d'envoyer des commandes sur une
machine distante. Typiquement, cela peut être des commandes shell (Unix, Linux,
etc.) ou si l'on s'adresse à un port particulier (21 pour le FTP, 110 pour le
POP, etc.) à envoyer des commandes à un serveur pour lui faire exécuter telles
ou telles opérations (relever un email, effacer un fichier en FTP, etc..).
Dans cet article, nous vous expliquerons comment lire ou effacer vos emails
sur votre POP. C'est ni plus ni moins les commandes que YAM ou Simplemail
envoient à votre serveur POP (bravo, vous venez de mettre les mains dans le
cambouis).
Ceci pourra toujours vous servir que vous ayez un Amiga, un Mac, un PDA, une
grosse station Sun en passant par n'importe quel PC sous Windows ou Linux...
Sur Amiga "classic" nous avons des clients Telnet corrects (MiamiTelnet fourni
avec MiamiDX, AmTelnetII, DCTelnet, etc.) mais parfois un peu limités en
version démo notamment pour faire du SSH (connexion telnet sécurisée).
N'oublions pas qu'aux origines, Arpanet, l'un des ancètres de l'internet actuel,
a été justement conçu (par les militaires américains et rapidement par les
universitaires de l'époque post-soixante huitarde) de manière à pouvoir reposer
sur des machines et des OS complètement hétérogènes (tout le contraire de la
politique Wintel qui verrouille l'information par tous les moyens possibles et
cherche à imposer son matériel et son logiciel propriétaire).
Cette politique d'ouverture et de partage du savoir est justement l'un des
piliers qui a permis au net de supporter le nombre d'utilisateurs en croissance
exponentielle ces dernières années et toujours plus gourmands en bande-passante...
(et les abus genre spam, virus "pour neuneus", etc... n'arrangent rien bien évidemment).
RFC KesKeCestCeTruc ?
RFC pour Request For Comments ou l'une clé du monde libre. Très simplement, c'est
la documentation (en Anglais) qui décrit les normes et protocoles (règles de
communications) utilisés par Internet : les premiers RFC datent de 1969...
Comme quoi les NTIC ne sont plus "nouvelles" puisque certaines ont plus de 30 ans !
Le RFC N°959 par exemple décrit le File Transfert Protocol (FTP) en long et en
large, etc.
Tout programmeur potentiel de mailer, client ou serveur FTP, etc. y trouve toutes
les informations de base en texte (ou RTF, etc.) pour savoir ce qu'il peut
implanter dans son programme. C'est l'accès à cette masse de documentation qui
permet aujourd'hui à des OS complétement différents d'avoir des utilitaires qui
communiquent entre eux sans trop de problèmes puisque les protocoles sont communs !
Le format d'image PNG (prononcez "ping") est décrit dans la RFC N°2083 par exemple.
Ci-dessous un ou deux URLs "fiables" où consulter des RFC :
http://www.rfc-editor.org par exemple ou http://www.rfc-editeur.org pour la VF
des principaux RFCs (merci à Nicolas Jourdan et aux autres traducteurs).
Le RFC qui nous intéresse pour relever nos mails est donc le N°1939 (POP3) mais
on pourrait aussi utiliser le RFC N°2060 (IMAP) encore plus puissant (pratique
pour classer vos mails directement sur le serveur) ou on pourrait lire le RFC
N°821 (SMTP, voir aussi le 2821) pour savoir comment envoyer un email en telnet ;)
Le protocole Telnet en lui même est aussi décrit dans le RFC N°854 !
Procédure pour relever un email via telnet (Pop)
Nous utiliserons un compte email Free fictif (en fait ce compte est cloturé,
inutile d'essayer de lire des mails sur ce compte donc ;-) C'est le même principe
quelque soit votre provider !
Login : artbas
password: string
pop.free.fr (port 110)
Sous Linux ou un shell, un simple "telnet pop.free.fr:110" suffit pour se
connecter sur le pop de Free. Si vous utilisez un client graphique (voir grab),
il faudra renseigner les quelques champs demandés.
La lecture du RFC 1939 nous donne donc quelques commandes utilisables sur un POP.
- USER et PASS servent à s'identifier sur le serveur POP.
- STAT renvoie le nombre de mails et le nombre d'octets qu'ils occupent sur le serveur.
- LIST renvoie les numéros d'emails et leurs tailles en octets.
- RETR n affiche le mail numéro "n" à l'écran (RETR 7 par exemple).
- DELE n marque le message pour l'effacement (DELE 3 par exemple, il ne sera en fait
réellement effacé qu'à la cloture de la session avec la commande QUIT).
- TOP n x affiche les entêtes du mail numéro n et les x premières lignes du mail
en question (exemple : TOP 2 0 pour avoir l'entête du mail N°2 ou TOP 27 10 pour
avoir les 10 premières lignes du mail N°27).
- QUIT sert à se déconnecter proprement du pop.
Exemple d'une session telnet classique (commentée).
Les lignes commencant par S: représentent les messages du serveur. Celles
commencant par C: sont celles du client telnet (ce que vous tapez "à l'aveugle"
donc). Les messages de confirmations (+OK) ou d'erreurs (-ERR) sont généralement
suivi d'un message d'explication qui varie suivant les serveurs...
telnet pop.free.fr 110
S: +OK <12595.1039292011@pop2-1.free.fr>
Ok on est connecté sur le pop de Free
C: USER artbas
S: +OK
C: PASS string
S: +OK
On est loggué sous le compte artbas
C: STAT
S: +OK 5 405560
Il y a 5 messages en attente pour le compte artbas@free.fr pour un total de
405 560 octets.
C: LIST
S: +OK
S: 1 3499
S: 2 2205
S: 3 3528
S: 4 36612
S: 5 359716
S: .
On a donc cinq mails numérotés de 1 à 5 avec leurs tailles respectives.
C: TOP 2 10
Nous renvoie l'entête du mail N°2 et les dix premières lignes.
C: RETR 2
Nous renvoie tous le mail N°2 (entête et corps du mail).
C: DELE 3
S: +OK
Marque le message numéro 3 pour l'effacer.
C: DELE 6
S: -ERR
Le serveur nous renvoie une erreur car il n'y a pas de message N°6.
C: QUIT
Et on quitte proprement le pop de Free (déconnexion).
Envoi de mails via telnet (smtp.free.fr, port 25)
On peut aussi envoyer des mails via telnet... Ci dessous l'exemple d'une
session minimale côté client (chaque ligne se termine par entrée).
telnet smtp.free.fr:25
EHLO artbas
(ou l'ancienne notation HELO artbas toujours valable : on signale ainsi au SMTP
qui on est).
MAIL FROM:artbas@free.fr
RCPT TO:obligement@free.fr
On précise l'expéditeur et le destinataire.
DATA
salut Daff
un petit exemple de mail
bidon pour te dire qu'Edmond
le Mouton code comme un mouflon
.
On saisit le corps du mail. Le point final suivi d'un retour ligne sert à signaler
la fin du corps du message (texte du message). Le serveur renvoie un message du
type "+OK queued xxxyyy" pour signaler l'envoi du mail. Rien de bien sorcier ;-D
Les petits malins se servent de telnet pour forger un e-mail (en mettant MAIL
FROM:bill@microsoft.com ou un autre e-mail bidon par exemple) : honte à eux...
Ils devraient bien se douter que cette technique archaïque ne suffit pas elle
seule à masquer leur identité et qu'avec un peu de temps on peut retrouver leur
identité réelle (je vous renvoie sur le site de la CNIL et
sur les sites de chasse anti-spammers comme spamcop, antispam.net, etc.).
En espérant que ces quelques exemples auront servis à quelques uns d'entre vous
pour tester les possibilités de telnet.
Bonus : RFCs à consulter les jours de pluie : RFC N°1149 et 2549.
|
|