Accedere ad una mailbox via Telnet di Vincenzo "Clyde" Buccafusca

Introduzione
Come connettersi ad un server POP3
Prima Fase - L'autorizzazione
Seconda fase - La transazione (elenco comandi)
Una possibile sessione
Ulteriori dettagli


Introduzione
A cosa può servire sapere accedere alla propria mailbox via Telnet?

Effettivamente, considerando l'estrema scomodità della lettura delle mail con questo metodo, soprattutto per quelle in formato html che ovviamente vengono visualizzate nel loro reale formato, la risposta sembrerebbe una sola: a nulla.

Come fare però a sapere, ovunque siate, se qualcuno ha risposto ad una vostra mail?

Come agire nel caso in cui qualcuno abbia “intelligentemente” mandato ad ogni vostro indirizzo di posta elettronica (mettiamo siano 3) la stessa mail contenente un allegato di 1MB?

Con Telnet potrete accedere al vostro server POP3 e cancellarla, potrete sapere non solo chi vi ha scritto ma cosa vi hanno scritto ed eventualmente mandato, questo e quant'altro vi viene in mente di fare (si, anche spiare la mailbox di qualcuno di cui conoscete user name e password).


Come connettersi ad un server POP3

Lanciate il client Telnet (lo trovate nella directory di WINDOWS), cliccate sul menù “Terminale” e quindi su “Preferenze”.



Nella finestra che vi si presenta checkate “Eco locale” (altrimenti non vedrete cosa digiterete) e se volete maggiori righe di visualizzazione aumentate il campo “Dimensione Buffer”. Confermate le modifiche.



Scegliete ora il menù “Connetti” e quindi “Sistema remoto...”. Nel campo “Nome host” inserite il vostro server POP3 (ad es. popmail.inwind.it), nel campo “Porta” scrivete 110, il campo “Tipo Terminale” lasciatelo com'è e cliccate su “Connetti”.



Dopo un periodo più o meno breve il server selezionato vi risponderà (di solito con un messaggio di benvenuto) comunicandovi che è pronto a ricevere i vostri comandi. Le risposte del server POP3 sono normalmente di due tipi: positive (“+OK”) e negative (“-ERR”).

Esempio:

+OK POP3 server ready


Prima Fase - L'autorizzazione

Il server è nella cosidetta fase di autorizzazione, si aspetta cioè che voi vi facciate riconoscere al fine di poter soddisfare le vostre richieste. Dovete quindi fornire nell'ordine il nome col quale accedete al vostro server POP3 e la password. I comandi per farlo sono rispettivamente USER e PASS (maiuscoli, come tutti gli altri che vedrete in seguito) e vanno dati consecutivamente, aspettando sempre la risposta da parte del server. Nel caso in cui il vostro server non riesca a completare l'autorizzazione vanno ripetuti entrambi. Ecco degli esempi:

Esempio A:

S: +OK POP3 server ready
U: USER UnNome
S: +OK
U: PASS UnaPassword
S: +OK

Esempio B:

S: +OK POP3 server ready
U: USER UnNome
S: +OK
U: PASS UnaPasswordd
S: -ERR invalid password
U: USER UnNNome
S: -ERR user unknown
U: USER UnNome
S: +OK
U: PASS UnaPassword
S: +OK


N.B.
Molti server non verificano il nome dell'utente inserito ma la coppia nome utente/password, quindi la risposta al comando USER potrebbe essere sempre positiva. Vi sarete inoltri resi conto che la password è in chiaro quindi evitate di usare questo metodo se non vi fidate di chi vi sta eventualmente vicino.


Seconda fase - La transazione (elenco comandi)

Tralasciando le operazioni realmente svolte dal server a questo punto, possiamo dire di essere nella cosidetta fase di transazione: il server numera tutte le mail presenti nella vostra mailbox, prende nota delle dimensioni delle stesse e si mette in attesa dei vostri comandi.

STAT

E' il comando che chiede informazioni sulla mailbox. Il server risponderà fornendo il numero di mail presenti e la loro dimensione totale.

Esempio:

........
S: +OK
U: STAT
S: +OK 5 1572

LIST [n]

E' il comando che chiede l'elenco delle mail presenti. Se viene specificato un numero (n) vengono fornite informazioni su una determinata mail. Se indicate un numero non corretto o non avete messaggi vi sarà opportunamente segnalato l'errore.

Esempio A:

........
S: +OK
U: LIST
S: +OK 5 messages (1572 octets)
S: 1 320
S: 2 210
........
S: 5 155
S: .

Esempio B:

........
S: +OK
U: LIST 2
S: +OK 2 210
S: .

Esempio C:

........
S: +OK
U: LIST 7
S: -ERR no such message

RETR n

E' il comando che vi permette di leggere la mail numero n. Dopo il solito +OK il server vi snocciolerà l'intera mail. Anche in questo caso se il numero della mail non è corretto vi verrà segnalato l'errore.

Esempio A:

........
S: +OK
U: RETR 2
S: +OK 210 octets
S: <-------segue la mail #2------->

Esempio B:

........
S: +OK
U: RETR 7
S: -ERR no such message

TOP m n

Questo comando vi permette di leggere le prime n righe della mail numero m. Se n è superiore al numero di righe della mail questa viene visualizzata nella sua interezza; se invece m è il numero di una mail inesistente verrà come sempre segnalato l'errore.

Esempio:

........
S: +OK
U: TOP 1 7
S: +OK
S: <-------seguono le 7 righe richieste della mail #1------->
S: .
U: TOP 7 1
S: -ERR no such message

DELE n

E' il comando che vi permette di cancellare la mail numero n. La mail viene "marcata" per essere successivamente cancellata (quindi siete sempre in grado, prima di chiudere la sessione, di recuperarla). Dal momento in cui la marcate per essere cancellata non potete più riferirvi ad essa, a meno prima di ripristinarla (vedi il successivo comando), e quindi ogni riferimento determinerà un errore. Stessa cosa se indicate un numero non corretto.

Esempio:

........
S: +OK
U: DELE 7
S: -ERR no such message
U: DELE 2
S: +OK message 2 deleted
U: DELE 2
S: -ERR message 2 already deleted (oppure no such message)

RSET

Come già detto è il comando che vi permette di ripristinare le mail marcate per essere cancellate che tornano disponibilli. Il server risponderà con i soliti monosillabi (+OK e -ERR).

QUIT

Ovviamente è il comando che termina la sessione e l'unico che aggiorna la vostra mailbox. In altre parole le mail segnate per essere cancellate verranno effettivamente eliminate solo dopo l'esecuzione di questo comando. Se la transazione si conclude in altro modo (ad esempio per un blackout o per la chiusura accidentale del client) nessuna mail presente verrà modificata


Una possibile sessione

S: +OK POP3 server ready
U: USER UnNome
S: +OK
U: PASS UnaPasswordd
S: -ERR invalid password
U: USER UnNome
S: +OK
U: PASS UnaPassword
S: +OK
U: STAT
S: +OK 5 1572
U: LIST
S: +OK 5 messages (1572 octets)
S: 1 320
S: 2 210
........
S: 5 155
S: .
U: RETR 2
S: +OK 210 octets
S: <-------segue la mail #2------->
S: .
U: DELE 2
S: +OK message 2 deleted
U: RETR 1
S: +OK 320 octets
S: <-------segue la mail #1------->
S: .
U: DELE 2
S: -ERR no such message
U: DELE 1
S: +OK message 1 deleted
U: TOP 3 7
S: +OK
S: <-------seguono le 7 righe richieste della mail #3------->
S: .
U: TOP 2 7
S: -ERR no such message
U: QUIT



Ulteriori dettagli

Per la realizzazione di questa pagina si è fatto riferimento al file RFC1939.ZIP che si consiglia di consultare per eventualmente approfondire l'argomento.