SMTP, POP3 e IMAP
Inviare e consultare la posta
SMTP, POP3 e IMAP sono protocolli del livello applicativo della suite TCP/IP e utilizzano TCP. Svolgono compiti diversi: SMTP invia e trasferisce i messaggi; POP3 e IMAP permettono al client di accedere alla posta ricevuta.
Il client è il programma usato dall’utente, per esempio Thunderbird o Outlook. Il server riceve, inoltra e conserva i messaggi nelle caselle di posta. Un messaggio non viene quindi inviato necessariamente da un PC direttamente al PC del destinatario: può restare sul server anche mentre il destinatario è scollegato.
TCP offre un trasferimento affidabile dei dati della connessione. La conferma che un server ha accettato un messaggio non dimostra però che il destinatario lo abbia letto.
SMTP — Invio e trasferimento
SMTP significa Simple Mail Transfer Protocol. Viene usato dal client per affidare il messaggio al proprio server e dai server per trasferire la posta verso il dominio del destinatario.
Bob scrive a Alice
- Bob compone un messaggio nel client di posta e preme Invia.
- Il client lo consegna al server SMTP configurato per l’account.
- Per un destinatario di un altro dominio, il server mittente individua normalmente i server di posta del dominio attraverso i record MX del DNS.
- Il messaggio viene trasferito al server destinatario con SMTP.
- Il sistema di posta destinatario lo deposita nella casella di Alice.

SMTP non serve a consultare i messaggi già presenti nella casella. Per quell’operazione il client usa POP3 oppure IMAP.
Porte SMTP
| Porta TCP | Uso |
|---|---|
| 25 | Trasferimento SMTP tra server. |
| 587 | Invio dal client al server (submission), normalmente con autenticazione e negoziazione TLS tramite STARTTLS. |
| 465 | Invio dal client al server con TLS implicito: la connessione è protetta con TLS fin dall’inizio. |
Comandi SMTP
Il protocollo scambia comandi e risposte testuali. I comandi seguenti descrivono una transazione di invio:
| Comando | Funzione |
|---|---|
EHLO | Presenta il client e richiede le estensioni disponibili. |
MAIL FROM: | Indica il mittente della busta SMTP. |
RCPT TO: | Indica un destinatario della busta SMTP; può essere ripetuto per più destinatari. |
DATA | Avvia l’invio delle intestazioni e del corpo del messaggio. |
QUIT | Termina la sessione. |
Nell’esempio, C: indica il client e S: il server. È un dialogo didattico semplificato: omette autenticazione e negoziazione TLS.
S: 220 mail.example.org ESMTP
C: EHLO pc-bob.example.org
S: 250 mail.example.org
C: MAIL FROM:<bob@example.net>
S: 250 OK
C: RCPT TO:<alice@example.org>
S: 250 OK
C: DATA
S: 354 End data with <CRLF>.<CRLF>
C: From: bob@example.net
C: To: alice@example.org
C: Subject: Prova SMTP
C:
C: Ciao Alice, questa e una prova.
C: .
S: 250 Message accepted
C: QUIT
S: 221 ByeIl punto su una riga separata chiude il contenuto del messaggio. 220 annuncia il servizio, 250 indica il successo dell’operazione e 354 autorizza l’invio dei dati. In generale le risposte 4xx segnalano errori temporanei, quelle 5xx errori permanenti.
La busta SMTP (MAIL FROM e RCPT TO) serve al trasferimento. Le intestazioni From: e To: fanno parte del messaggio: non sono gli stessi campi e non devono necessariamente coincidere con la busta.
POP3 — Scaricare i messaggi
POP3 significa Post Office Protocol version 3. Il client si collega al server, si autentica e scarica i messaggi presenti nella casella.
- Alice apre il client di posta.
- Il client stabilisce la connessione con il server POP3 e si autentica.
- Richiede l’elenco dei messaggi e scarica quelli da consultare.
- In base alla configurazione, lascia una copia sul server oppure ne richiede la cancellazione.

POP3 non sincronizza le cartelle e lo stato letto/non letto come IMAP. Due dispositivi possono scaricare copie degli stessi messaggi se questi restano sul server, ma la gestione locale delle copie è distinta.
Porte POP3
| Porta TCP | Uso |
|---|---|
| 110 | POP3; se supportato, TLS può essere negoziato con il comando STLS. |
| 995 | POP3 con TLS implicito, spesso indicato come POP3S. |
Comandi POP3
| Comando | Funzione |
|---|---|
USER | Indica il nome utente. |
PASS | Invia la password per l’autenticazione. |
STAT | Restituisce numero dei messaggi e dimensione complessiva in ottetti. |
LIST | Elenca numeri e dimensioni dei messaggi. |
RETR 1 | Richiede il messaggio numero 1 della sessione. |
DELE 1 | Contrassegna il messaggio numero 1 per l’eliminazione. |
QUIT | Termina la sessione; dopo l’autenticazione avvia la fase di aggiornamento della casella. |
Esempio dei comandi inviati dal client, senza le risposte del server:
USER alice
PASS password_di_esempio
STAT
LIST
RETR 1
QUITRETR scarica il messaggio, senza marcarlo per l’eliminazione. DELE lo marca: la rimozione viene richiesta nella fase di aggiornamento aperta dal QUIT della sessione autenticata. La password dell’esempio è fittizia; su una connessione senza TLS, USER e PASS non proteggono le credenziali.
IMAP — Gestire la casella su più dispositivi
IMAP significa Internet Message Access Protocol. Permette al client di lavorare sui messaggi e sulle cartelle conservati nel server. I dispositivi condividono così lo stato della casella, anziché gestire soltanto copie locali indipendenti.
Se Alice legge un messaggio sullo smartphone, il server può registrarlo come letto e il client del PC ritrova quello stato quando si sincronizza. Anche gli spostamenti tra cartelle e le cancellazioni vengono riportati sul server e sugli altri client connessi.

IMAP non significa che il contenuto non venga mai scaricato: il client può richiedere intestazioni, parti del messaggio o messaggi completi. Le operazioni eseguite offline vengono sincronizzate quando torna disponibile la connessione.
Porte IMAP
| Porta TCP | Uso |
|---|---|
| 143 | IMAP; TLS può essere negoziato con STARTTLS. |
| 993 | IMAP con TLS implicito, spesso indicato come IMAPS. |
Alcune operazioni IMAP
| Comando | Funzione |
|---|---|
LIST | Elenca le caselle/cartelle disponibili. |
SELECT | Seleziona una casella, per esempio INBOX. |
FETCH | Richiede dati o contenuto dei messaggi. |
STORE | Modifica gli attributi dei messaggi, come il flag di lettura. |
LOGOUT | Termina la sessione. |
IMAP gestisce l’accesso alla casella; per spedire un nuovo messaggio il client continua a usare SMTP.
SMTP, POP3 e IMAP a confronto
| Aspetto | SMTP | POP3 | IMAP |
|---|---|---|---|
| Compito | Invio e trasferimento | Scaricamento dalla casella | Accesso e gestione della casella sul server |
| Comunicazione | Client–server e server–server | Client–server | Client–server |
| Messaggi | Trasferiti verso il destinatario | Scaricati; copia sul server opzionale | Conservati sul server, con eventuali copie locali |
| Più dispositivi | Non gestisce lo stato della casella | Nessuna sincronizzazione di cartelle e stato come in IMAP | Sincronizzazione di cartelle e stato dei messaggi |
| Porte TCP | 25, 587, 465 | 110, 995 | 143, 993 |
Usare IMAP per leggere la posta non sostituisce SMTP: lo stesso account può usare entrambi, uno per consultare la casella e l’altro per inviare.
Protezione della connessione
Con TLS implicito, la negoziazione TLS inizia appena stabilita la connessione TCP al servizio. Con STARTTLS — STLS in POP3 — client e server avviano prima il dialogo del protocollo e poi negoziano TLS, se supportato e richiesto dalla configurazione.
Nei servizi reali, l’invio dal client e l’accesso alla casella vanno protetti con TLS. La protezione della connessione non equivale alla cifratura del messaggio da mittente a destinatario: il server può comunque trattarne il contenuto.
Il percorso completo di un messaggio

Bob invia il messaggio al proprio server con SMTP. Il sistema di posta lo trasferisce alla casella di Alice. Alice accede poi alla casella usando POP3 oppure IMAP: la scelta riguarda la consultazione e la gestione della posta ricevuta, non il suo invio.
Se la posta viene letta dal browser con una webmail, il browser comunica con il servizio web tramite HTTPS. SMTP, POP3 e IMAP descrivono altri collegamenti del sistema di posta, non necessariamente il collegamento browser–sito.
Esercizio con Cisco Packet Tracer
Configura le LAN di Bob e Alice, il DNS e due server di posta; verifica l’invio SMTP e lo scaricamento POP3.
Apri il laboratorio SMTP e POP3