Protocollo SMTP. Introduzione. Utilizzo



Documenti analoghi
Teoria di un server di posta. Corso GNU/Linux Avanzato Torino,

SMSPortal. SMS-Gateway interfaccia SMTP. Versione , 2005, 2006 SMSPortal. Digitel Mobile Srl Via Raffaello, Pescara (Italy)

Come pubblicare un server MDaemon su Internet per ricevere in SMTP. Claudio Panerai - Direttore Tecnico di Achab S.r.l. claudio.panerai@achab.

Posta elettronica per gli studenti for the students

- Corso di computer -

Configurazione account di posta elettronica certificata per Qualcomm Eudora

Unsolicited Bulk (UBE) (spamming) Francesco Gennai IAT - CNR Francesco.Gennai@iat.cnr.it

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account

MANUALE UTENTE FORMULA PEC

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

La posta elettronica. Informazioni di base sul funzionamento

Mail Cube Guida utente

INFORMATICA DISTRIBUITA. lez 6 World Wide Web (cont)

MODALITÀ DI ACCESSO ALLA CASELLA DI POSTA ELETTRONICA CERTIFICATA

INFN Sezione di Perugia Servizio di Calcolo e Reti Fabrizio Gentile Enrico Becchetti

Servizio di Posta elettronica Certificata (PEC)

Servizio di Posta elettronica Certificata (PEC)

-Fig.1-

1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale

Archiviare messaggi di posta elettronica senza avere un proprio mail server

Le caselle di Posta Certificata attivate da Aruba Pec Spa hanno le seguenti caratteristiche:

Servizio di Posta elettronica Certificata (PEC)

Servizio di Posta elettronica Certificata (PEC)

Servizio di Posta elettronica Certificata (PEC)

Nella videata successiva compilare il campo Nome visualizzato, quindi cliccare su Avanti;

Manuale di configurazione del client di posta Microsoft Outlook COME LEGGERE LA CASELLA PEC

Servizio di Posta elettronica Certificata (PEC)

Reti di Telecomunicazione Lezione 7

Ordine dei Dottori Commercialisti e degli Esperti Contabili di Padova

Vediamo un esempio di spedizione e ricezione di , puntualizzando i passaggi.

Reti di Calcolatori:

Posta Elettronica Certificata

Application Layer FTP, SMTP, POP3, IMAP

Ordine dei Dottori Commercialisti e degli Esperti Contabili di Padova

COME CONFIGURARE UN CLIENT DI POSTA

Protocolli applicativi: FTP

Posta Elettronica. Comunicare con . Definizione di . metodo di trasmissione dei messaggi tramite Internet:

Posta elettronica DEFINIZIONE

La posta elettronica parte 1^

Parte II: Reti di calcolatori Lezione 9

Protocolli per le . Impianti Informatici. Protocolli applicativi

Configurazione gestore di posta elettronica Configurazione OUTLOOK EXPRESS POP3

SHAREPOINT INCOMING . Configurazione base

la posta elettronica

Reti di Comunicazione e Internet

COME CONFIGURARE LA PEC SU MICROSOFT OFFICE OUTLOOK 2007

{slide= Ricezione funzionante, errore nell'invio. Errore 0x800CCC79/6F} Messaggio di errore

GLI ERRORI DI OUTLOOK EXPRESS

Telematica II 13. Posta Elettronica

Manuale servizio

Spedire posta elettronica ad un utente dello stesso dominio, ma residente su un server non locale

Configurazione Client di Posta Elettronica

Manuale per la configurazione di un account di PEC in Mozilla.

Manuale Fax2Mail Guida all uso. Operativo

1) GESTIONE DELLE POSTAZIONI REMOTE

Posta Elettronica e Web

Programma Servizi Centralizzati s.r.l.

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Configurazione account di posta elettronica certificata per Microsoft Outlook

Per la connessione del router 3Com Office Connect Remote 812 ad un singolo computer è sufficiente rispettare il seguente schema:

Come si può vedere, la regola è stata fatta in modo da spostare tutti i messaggi di Spam nella cartella del cestino.

I protocolli di posta elettronica

. SMTP, POP, IMAP. mail server. smtp [RFC 821] Tre componenti: user agent mail server simple mail transfer protocol: smtp

MDaemon: tecniche per non finire in black list. Claudio Panerai - Direttore Tecnico di Achab S.r.l. claudio.panerai@achab.it

BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX

Guida alla configurazione

Manuale per la configurazione di un account di PEC in Eudora.

Application Layer FTP, SMTP, POP3, IMAP. Ricapitolando. FTP: File Transfer Protocol [RFC 959] porta 80

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Configurazione di Outlook Express

P03_S50AT01_Manuale Fax2Mail Rev 02 del 11/04/2013. Manuale Fax2Mail-Guida all uso

Manuale per la configurazione di un account di PEC in Mozilla Thunderbird.

Parte II: Reti di calcolatori Lezione 7

Manuale servizio Webmail. Introduzione alle Webmail...2 Webmail classica (SquirrelMail)...3 Webmail nuova (RoundCube)...8

Configurazione di un nuovo account di posta in Outlook Express

NOKIA E61 GUIDA ALLA CONFIGURAZIONE SKYPHO

FISM del Veneto. caselle di posta FISM.

5. Configurazione Mozilla Thunderbird

Guida di Pro Spam Remove

Posta Elettronica Certificata

Manuale di configurazione per iphone

NOKIA E61 GUIDA ALLA CONFIGURAZIONE EUTELIAVOIP

Configurazione account per libreria MXOutlook

INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

Guida Microsoft Outlook, Creare e configurare l'account su dominio generico

Assegnamento di un indirizzo IP temporaneo a dispositivi Barix

MC-link Lan+ Connessione e configurazione del router PRESTIGE 100

AWN ArchiWorld Network. Manuale generale del sistema di posta elettronica. Manuale generale del sistema di posta elettronica

COME CONFIGURARE LA PEC SU MAC OS X

1.b. Nella finestra Account di posta elettronica selezionare l opzione Aggiungi un nuovo account di posta elettronica, poi cliccare su Avanti

Come configurare una casella di posta certificata su MICROSOFT OUTLOOK

Guida all amministrazione VPH Webmin/Virtualmin

Sommario. Oggetto: Istruzioni configurazione client VPN per piattaforma Mac OSX Data: 25/01/2016 Versione: 1.0

Manuale per la configurazione di un account di PEC in Outlook 2003.

PEC. Posta Elettronica Certificata. securepec.com

Come leggere la posta con il programma Windows Mail (Windows Vista) Come leggere la posta con il programma Outlook Express (Windows XP / 2000)

Software di gestione della stampante

Archiviazione con Kerio Connect

Come installare un nuovo account di posta elettronica in Outlook 2010

OSOR. Applicazioni di Rete

Transcript:

Protocollo SMTP Introduzione Simple Mail Transfer Protocol (SMTP) is a relatively simple, text-based protocol, where one or more recipients of a message are specified (and in most cases verified to exist) and then the message text is transferred. It is a client-server protocol, where the client transmits an email message to the server. Either an end-user's email client, a.k.a. MUA (Mail User Agent), or a relaying server's MTA (Mail Transfer Agents) can act as an SMTP client. An email client knows the outgoing mail SMTP server from its configuration. A relaying server typically determines which SMTP server to connect to by looking up the MX (Mail exchange) DNS record for each recipient's domain name, the part of the email address to the right of the at sign (@). Conformant MTAs (not all) fall back to a simple A record in the case of no MX. Some current mail transfer agents will also use SRV records, a more general form of MX, though these are not widely adopted. (Relaying servers can also be configured to use a smart host.) The SMTP client initiates a TCP connection to server's port 25 (unless overridden by configuration.) It is quite easy to test an SMTP server using the telnet program. SMTP is a "push" protocol that does not allow one to "pull" messages from a remote server on demand. To do this a mail client must use POP3 or IMAP. Another SMTP server can trigger a delivery in SMTP using ETRN. SMTP is the de facto standard for e-mail transmission across the Internet. Formally SMTP is defined in RFC 821 (STD 10) as amended by RFC 1123 (STD 3) chapter 5. The protocol used today is also known as ESMTP and defined in RFC 2821. Fonte: Wikipedia - http://en.wikipedia.org/wiki/simple_mail_transfer_protocol Utilizzo Il protocollo client/server per l'invio della posta elettronica richiede che vi sia un software client (che permette all'utente di redigere una messaggio di posta elettronica, specificando mittente, destinatario, oggetto, contenuto, eventuali allegati etc.) e un software server in grado di recepire il messaggio da parte di un mittente e di consegnarlo al server che gestisce la casella di posta (mailbox) del/dei destinatario/i. In genere, i fornitori di connettività provvedono anche a fornire l'accesso a un server SMTP per permettere ai propri clienti (e solo a quelli) di inviare posta elettronica; chi possiede un collegamento modem o ADSL casalingo, oltre ai normali parametri per configurare la connessione, ha ricevuto dal proprio fornitore di connettività anche l'indicazione del server SMTP da utilizzare per l'invio della posta. Per un uso professionale di tale servizio, ad esempio per enti e aziende, si preferisce adottare servizi dedicati in outsourcing oppure si provvede all'installazione e alla configurazione di un server interno dedicato all'invio della posta (tipicamente installato in DMZ). Nell'esperienza di laboratorio il server SMTP per l'invio della posta è il PC del docente, identificato da un indirizzo IP e dall'equivalente nome host (nota: chiedere la docente questi dati). Tale server è configurato per operare il cosiddetto relay della posta senza operare restrizioni in base a un ben 1

determinato dominio Internet di gestione. Tale pratica è vivamente sconsigliata nell'utilizzo reale ma necessaria per effettuare le esercitazioni di laboratorio. Per poter capire il funzionamento del protocollo SMTP si effettuerà un invio di e-mail manuale (utilizzando una connessione diretta alla porta TCP/25 del server) e un invio tramite client dedicato. Per ogni esercizio si richiede la cattura e l'analisi del traffico generato tramite Wireshark. Nota Per poter verificare il corretto invio del messaggio e-mail è necessario possedere un indirizzo e- mail reale al quale poter accedere per visionare il messaggio di posta inviato (meglio se accessibile anche direttamente via POP3 e non solo tramite webmail...). Nel caso non si abbia un indirizzo da poter utilizzare è possibile chiedere al docente l'attivazione momentanea di un indirizzo e-mail su un dominio di servizio ( tennici.it ). Il protocollo SMTP prevede che l'invio del messaggio di posta avvenga a partire da una fase di presentazione per proseguire poi con una serie di invii di informazioni tra il client (che utilizza gli appositi comandi del protocollo) e il server (che notifica l'avvenuta ricezione o l'eventuale errore riscontrato); la comunicazione avviene quindi in modalità testuale e utilizza i seguenti comandi (non sono riportati tutti i comandi; si rimanda al comando HELP e alle relative RFC): HELO sendinghostname EHLO sendinghostname MAIL From: <source email address> RCPT To: <destination email address> SIZE=numberofbytes DATA QUIT VRFY username EXPN aliasname SMTP Commands: This command initiates the SMTP conversation. The host connecting to the remote SMTP server identifies itself by it's fully qualified DNS host name. An alternative command for starting the conversation. This states that the sending server wants to use the extended SMTP (ESMTP) protocol. This is the start of an email message. The source email address is what will appear in the "From:" field of the message. This identifies the receipient of the email message. This command can be repeated multiple times for a given message in order to deliver a single message to multiple receipients. The size command tells the remote sendmail system the size of the attached message in bytes. If ommited, mail readers and delivery agents will try to determine the size of a message based on indicators such as them being terminated by a "." on a line by themselves and headers being sent on a line separated from body text by a blank line. But these methods get confused when you have headers or header like information embedded in messages, attachements, etc. This command signifies that a stream of data, ie the email message body, will follow. The stream of data is terminated by a "." on a line by itself. This terminates an SMTP connection. Multiple email messages can be transfered during a single TCP/IP connection. This allows for more efficient transfer of email. To start another email message in the same session, simply issue another "MAIL" command. This command will request that the receiving SMTP server verify that a given email username is valid. The SMTP server will reply with the login name of the user. This feature can be turned off in sendmail because allowing it can be a security hole. VRFY commands can be used to probe for login names on a system. See the security section below for information about turning off this feature. EXPN is similar to VRFY, except that when used with a distribution list, it will list all users on that list. This can be a bigger problem than the 2

Subject: Cc: Reply-To: "VRFY" command since sites often have an alias such as "all". Email header lines are not SMTP commands per se. They are sent in the DATA stream for a message. Header lines appear on a line by themselves, and are separated from the body of a message by a blank line. L'instaurazione della comunicazione è riportata in Figura 1. Fig. 1: esempio di inizio di una sessione di telnet con utilizzo del protocollo SMTP Quindi, per simulare una connessione SMTP è necessario instaurare la seguente sessione telnet sulla porta 25: in neretto è riportato l'input che va dato simulando la parte client. Si consiglia di inviare un messaggio e-mail ad un proprio account esistente e attivo, dal quale si possa poi, tramite webmail, controllarne l'avvenuta ricezione. # telnet a541.aula5.lan 25 Trying 192.168.1.171... Connected to 192.168. 1.171. Escape character is '^]'. 220 a541.aula5.lan ESMTP Postfix HELO polimi.it 250 a541.aula5.lan Tramite il programma telnet viene contattato il server SMTP sulla porta TCP/25 E' possibile notare dal messaggio la keyword ESMTP che indica che il server supporta le SMTP Service Extensions Il client si identifica tramite il comando helo (sostituire polimi.it 3

MAIL FROM: tode@cremona.polimi.it 250 2.1.0 Ok RCPT TO: tode@tennici.it 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> From: Carlo Todeschini Poli <tode@cremona.polimi.it> To: Carlo Todeschini Tennici <tode@tennici.it> Subject: Prova di invio Questo e' un test di invio di una e-mail tramite protocollo SMTP. con il proprio) E' necessario specificare un indirizzo e-mail che abbia un dominio reale altrimenti il server rifiuta il dato. Impostare, ad esempio, il proprio indirizzo e-mail E' necessario specificare un indirizzo e-mail di destinazione; ad esempio utilizzare l'indirizzo di un collega Con il comando DATA inizia l'inserimento del corpo della mail Ogni parametro dati che compone l'e-mail va scritto su un'unica riga, terminandola con un a capo. Il comando "." (punto), seguita da un a capo, termina l'inserimento del messaggio Ciao, tode. 250 2.0.0 Ok: queued as XXXXXXXXXXXX Il server SMTP accetta il messaggio per il delivery QUIT 221 2.2.0 Bye La connessione TCP termina e si ritorna al prompt A questo punto è necessario accedere, tramite il proprio programma di posta oppure l'applicazione webmail, alla propria mailbox per leggere il messaggio arrivato. Nota: la ricezione del messaggio nella mailbox di destinazione può richiedere tempo oppure può essere scartata dal server di destinazione in quanto considerata SPAM. Esercizio 1 Eseguire la connessione indicata sopra e catturare il traffico con Wireshark. Verificare che la comunicazione è effettivamente riconosciuta come traffico SMTP. Ora è possibile impostare un programma client per l'invio/ricezione della posta tra quelli a disposizione in Knoppix. Ad esempio, è possibile configurare KMail (come mostrato in figura 2) specificando la propria identità (menu Settings >> Configure KMail >> Identities ), facendo attenzione a configurare un indirizzo e-mail esistente, e il server di posta in uscita (menu Settings >> Configure KMail >> Accounts >> Sending ; per questo occorre cancellare il server esistente e crearne uno nuovo, di tipo SMTP, con i dati già a conoscenza). Tipo di server di posta in ingresso: POP3 (v. prossima scheda) Indirizzo e-mail: il proprio indirizzo e-mail reale o l'indirizzo appositamente creato dal docente sul server Server posta in uscita: <NOME MACCHINA DOCENTE> (senza opzione SSL) Server posta in entrata: <NOME MACCHINA DOCENTE> (senza opzione SSL) 4

Nota: potrà richiedersi una ulteriore configurazione per disabilitare il supporto all'ssl Fig. 2: utilizzo di KMail Nota: configurare Wireshark per sniffare su tutte le interfacce e non solo su eth0. Esercizio 2 Eseguire un invio di e-mail con il programma KMail (o equivalente). Come varia il traffico catturato con Wireshark? Esercizio 3 Eseguire un invio di e-mail con il programma KMail (o equivalente) inserendo un allegato nel testo della e-mail. Come varia il traffico catturato con Wireshark? Come viene gestito l'invio dell'allegato? Nota La parte che segue è facoltativa. 5

Sul Knoppix dei laboratori è già installato un server SMTP: Smail-3. Si consiglia di sostituirlo con il server Postfix (scaricabile dal sito del docente nella pagina dedicata Pacchetti.deb di supporto ; salvare il pacchetto postfix* nella dir /tmp/ ) con i seguenti comandi: # apt-get remove smail [...] # dpkg -i /tmp/postfix_2.5.2-2_i386.deb [...] Durante la fase di installazione che segue al lancio di questo comando verranno richieste alcune configurazioni: scegliere sempre le opzioni di default proposte. Al termine è necessario verificare che il demone sia attivo, utilizzando i comandi nmap oppure netstat, sulla porta 25/TCP, dedicata al protocollo. A questo punto il server è in attesa di connessioni da parte di client remoti; con la semplice configurazione adottata, il server è in grado di accettare messaggi e-mail da altri server di posta indirizzati ai propri utenti locali. Si può quindi procedere alla creazione di ulteriori utenti dotati di mailbox sulla macchina server in uso con il comando: # adduser <NOME UTENTE> [...] A seguito del comando appena impartito verranno richiesti alcuni parametri per la configurazione dell'account, compresa la password di autenticazione. A questo punto è possibile inviare una e-mail, a uno degli utenti appena creati, dalla propria macchina oppure inviare un messaggio a uno degli utenti che un collega ha creato sulla sua macchina, connettendosi direttamente al server SMTP che questo ha attivato e configurato. Per simulare una connessione SMTP è necessario instaurare la seguente sessione telnet sulla porta 25. Il server utilizzato non effettua relay per cui è possibile inviare messaggi e-mail indirizzati solo agli utenti locali del server. # telnet a5xx.aula5.lan 25 Trying 192.168.xxx.xxx... Connected to 192.168.xxx.xxx (192.168.xxx.xxx). Escape character is '^]'. 220-Knoppix Smail-3.2.0.115 (#2 2005-Mar-28) 220-ready at Wed, 7 Jun 2006 23:22:37 +0200 (CEST) 220 ESMTP supported Tramite il programma telnet viene contattato il server SMTP sulla porta TCP 25 E' possibile notare dal messaggio ESMTP Service che il server supporta le SMTP Service Extensions HELO a5xx.aula5.lan 250 Knoppix Hello a5xx.aula5.lan (yyy.yyy.yyy from address [192.168.xxx.xxx]). Il client si identifica tramite il comando helo 6

MAIL FROM: tode@cremona.polimi.it 250 2.1.0 tode@cremona.polimi.it Sender Okay. NOTA: è necessario specificare un indirizzo e-mail che abbia un dominio reale altrimenti il server rifiuta il dato RCPT TO: utente 250 2.1.0 'utente' Recipient Okay. NOTA: sostituire a 'utente' uno degli utenti creati sulla macchina su cui gir il server SMTP. DATA Inizia l'inserimento del corpo della mail (NOTA: non lasciare spazi tra il campo e il valore) 354 Enter mail, end with "." on a line by itself... From:Carlo Todeschini To:Root di Knoppix Subject:Prova di invio Questo e' un test di invio di una e-mail tramite protocollo SMTP. Ciao, tode. 250 2.6.0 Mail accepted, queue ID m1fo5vv-00017nc on Knoppix. Il comando "." punto termina l'inserimento del messaggio; Il server SMTP lo accetta QUIT 221 2.2.0 Knoppix closing connection Connection closed by foreign host. La connessione TCP termina e si ritorna al prompt # E' possibile verificare che il delivery delle e-mail è avvenuto senza problemi visualizzando il contenuto del file /var/spool/mail/<utente> ; in questa directory vengono memorizzate le mailbox relative a tutti gli account memorizzati sul server; si tratta di file di testo che riportano, in un unico file, tutte le e-mail ricevute per un dato account. Esercizio 4 (facoltativo) Coordinarsi con un collega e testare l'invio di messaggi e-mail utilizzando il server SMTP installato sulla macchina del collega. Approfondimenti RFC 2821 - Simple Mail Transfer Protocol: ftp://ftp.rfc-editor.org/in-notes/rfc2821.txt 7