Tutorial su Telnet e server ESMTP

Come spedire e-mail usando telnet e un server ESMTP

Per usare Telnet bisogna accertarsi di avere sul pc il file telnet.exe; solitamente è collocato in X:\windows\ (X rappresenta la lettera del disco rigido su cui è installato Windows). Se il programma non è presente è necessario installare Accesso Remoto o il protocollo TCP/IP Microsoft dal cd di Windows.

Lanciato il programma, ecco come apparira' sullo schermo.

Il programma Telnet in esecuzione

Di default Telnet non visualizza il testo digitato, perciò consiglio di attivare l'eco locale, ovverosia la visualizzazione del testo immesso, andando sul menu "Terminal (Terminale)", cliccando sulla voce "Preferences (Preferenze)" e selezionando la casella "Local Echo (Eco locale)".

la finestra delle Preferenze

Ora ci si può connettere ad un server di posta ESMTP o SMTP.

Piccola digressione: il server ESMTP (Extended Simple Mail Transfer Protocol), come il suo antenato SMTP, è un programma attivo su un computer permanentemente connesso a Internet e si occupa di ricevere e spedire la posta elettronica dialogando con gli altri computer che compongono la rete mondiale.

Si deve dunque trovare il nome di questo server ESMTP. Noi in questo esempio useremo il server di Libero: smtp.libero.it.

Fate attenzione: per contrastare il fastidioso fenomeno dello spamming la maggior parte dei server consente l'invio di e-mail ad un ristretto numero di computer, solitamente facenti parte della loro sottorete: ciò vuol dire che se siete connessi telefonicamente ad un Dial-up Server di Libero potrete spedire posta col suo server ESMTP, altrimenti dovrete connettervi a quello del vostro provider (ad es. per TIN smtp.tin.it e così via, cercate sul sito del vostro provider il nome esatto del server ESMTP).

Per lanciare la connessione al server si deve cliccare sul menu "Connect (Connetti)", e scegliere la voce "Remote System (Sistema remoto)". Apparsa la piccola finestra di dialogo, si devono riempire le caselle di testo: nella casella "Host Name (Nome host)" digitare il nome del server di posta smtp.libero.it (in alternativa Telnet accetta anche l'indirizzo IP). Nella casella "Port (Porta)" digitare il numero della porta su cui è in ascolto il server ESMTP: di default è la 25. Infine in "TermType (Tipo terminale)" lasciare il modello vt100. Premere il pulsante "Connect (Connetti)".

la finestra dei dati della connessione

Alla pressione del tasto "Connect (Connetti)" Telnet chiederà al server di aprire una connessione (detta anche socket) e, se stabilita, dovrebbe apparire il saluto del server sulla finestra di Telnet; attualmente, 7 maggio 2001 la dicitura di Libero è

 

 

Approfittiamo di questo momento per analizzare il modo in cui si "esprime" il server: davanti ogni messaggio mette un numero, che è legato all' informazione veicolata: in questo caso 220 indica il messaggio di benvenuto. Fra gli altri numeri, il 221 indica invece il messaggio di congedo, il 250 il messaggio di avvenuta accettazione del comando, e così via. (Per una trattazione completa del protocollo SMTP e ESMTP vi rimando ai documenti RFC (Request For Comment) 821 e seguenti, disponibili su ftp://ftp.nic.it/rfc.)

Ora il protocollo SMTP prevede che ci si "autentichi" con il comando "HELO", percio' è necessario scrivere "HELO" seguito da un nome o dominio a vostra scelta (tenete presente che il server in ogni caso legge, e salva nell'e-mail che spedirete, il vostro numero IP):



il server rispondera' con un 250:

 

 

NOTA: Può capitare che fra un comando ESMTP e l'altro lasciate passare un tempo sufficiente a far scattare il time-out del server. Purtroppo in tal caso dovrete ripetere tutti i passaggi per tornare al punto in cui siete stati interrotti.

A questo punto si può digitare il comando: "MAIL FROM:" seguito dall'account che si desidera inserire come mittente (esso apparirà negli "headers" della e-mail), ad esempio:



NOTA: per i vecchi server SMTP si devono omettere le parentesi angolari a delimitazione dell'account, ad esempio:


Accertato che il server abbia risposto con il messaggio 250 di accettazione del comando si prosegue scrivendo il destinatario usando il comando "RCPT TO:" (RCPT sta per recipient, ricevente in inglese):



(per le parentesi angolari vale la nota al comando "MAIL FROM:").


Ricevuto l'atteso 250 è arrivato il momento di scrivere il corpo della e-mail; lo si fa usando il comando "DATA" senza nessun altro parametro:



il server risponderà col messaggio 354: qualcosa tipo

 

 

Avverte che ora si deve scrivere il testo della lettera, e che sarà necessario comunicare di averla terminata digitando un ritorno a capo (tasto Invio), un punto, e un altro ritorno a capo. (NOTA: CRLF sta per Carriage return - Line feed, ovvero Ritorno del Carrello, Nuova Linea).
Dopo il messaggio 354 si dovrà scrivere il corpo della lettera, ma preceduto almeno dagli header più classici come "Subject:", "From:", "To:", "Cc:" eccetera.

(Ovviamente, quale che sia l'email del mittente indicata precedentemente col comando "MAIL FROM:" il programma di posta visualizzerà come mittente il nome digitato dopo l'header "From:" facente parte del corpo della lettera; lo stesso discorso vale per il nome del destinatario indicato con "RCPT TO:" e quello scritto dopo "To:").

Esempio di header:



Quindi ecco un esempio da digitare dopo il 354:


 

A questo punto, se non si sono fatti errori, il server risponderà con il messaggio 250 di accettazione comando; e spedirà l'e-mail.
Ora se si desidera spedirne un'altra, è sufficente ripartire dal comando "MAIL FROM:", se invece si desidera uscire si scrive "QUIT" senza parametri, il server salutera' con un 221 e Telnet avvertirà dell'avvenuta chiusura del socket.

E ora... non spedite mail anonime, mi raccomando!!!! :-)