diff --git a/networking/030-smtp.md b/networking/030-smtp.md index dca65c9..c2ffca8 100644 --- a/networking/030-smtp.md +++ b/networking/030-smtp.md @@ -20,4 +20,34 @@ SMTP è un protocollo basato su comandi e codici di risposta, similmente a HTTP. - `QUIT`: inviato dal client per terminare la comunicazione con il server. Il server risponde con il codice 221, confermando la chiusura della connessione - `AUTH LOGIN`: comando utilizzato dal client per l'autenticazione sul server SMTP. Se l'autenticazione ha successo, il server risponde con il codice 235, indicando *Authentication successful* -![smtp-commands](asset/img/smtp-commands.png) \ No newline at end of file +![smtp-commands](asset/img/smtp-commands.png) + +## Codici di risposta SMTP + +I codici di risposta SMTP sono suddivisi in cinque categorie principali: + +- `1XX`: *risposte informative*. Sono molto rari e non vengono utilizzati frequentemente +- `2XX`: *comando eseguito con successo*. Alcuni esempi comuni includono: + - `250`: comando eseguito con successo + - `235`: autenticazione riuscita + - `221`: il server sta chiudendo la connessione +- `3XX`: questi codici indicano che *il server richiede ulteriori informazioni* al client per completare la richiesta. Ad esempio: + - `334`: il server chiede le credenziali per l'autenticazione + - `354`: il server è pronto a ricevere i dati della mail (comando DATA) +- `4XX`: *errori temporanei*, che possono essere risolti con un nuovo tentativo. Alcuni esempi includono: + - `421`: il server chiude la connessione per sovraccarico o manutenzione + - `450`: la casella di posta del destinatario non è disponibile + - `451`: errore del server + - `452`: troppe mail inviate in poco tempo +- `5XX`: *errori permanenti*. + - `500`: errore di sintassi di un comando smtp + - `501`: parametri errati + - `503`: sequenza di comandi errata + - `504`: comando non supportato dal server + - `550`: indirizzo email del destinatario inesistente + - `552`: casella del destinatario piena + - `554`: il server rifiuta il messaggio, classificandolo come spam o phishing + +## MIME + +`MIME`, acronimo di *Multipurpose Internet Mail Extensions*, è uno standard che amplia le funzionalità del protocollo SMTP, permettendo l'invio di contenuti più complessi via email. Supporta caratteri non ASCII, inclusi caratteri accentati e simboli di diverse lingue. Inoltre, consente di allegare file di vari tipi, come immagini, audio, video e documenti, e di inviare email in formato HTML.