AMMINISTRAZIONE

DI RETI DI

CALCOLATORI

 

 

 

Tesina di Ludovico Giannini

 


Obiettivo

 

Configurare POSTFIX come server SMTP in modo che permetta previa autenticazione di inviare mail da un client di posta elettronica connesso dall’esterno della rete locale (escludere la soluzione del Webmail), in altre parole avere la possibilità di usare un mail server come relay, anche dall’esterno della propria LAN, autenticadosi su di esso.

 

Implementazione di eventuali protocolli di crittografia per rendere più sicura la transazione SMTP.

 

 

 

Soluzione

 

Attualmente per inviare un messaggio di posta, un MUA (mail user agent ossia un client di posta) se il computer è all’interno della rete dipartimentale, il server SMTP postfix riceve il messaggio e lo invia a destinazione. Il server SMTP è configurato a non accettare messaggi da inviare ad altri da computer esterni alla rete dipartimentale. In questo modo si evita il problema degli Open Relay ossia server SMTP che permettono a chiunque in internet di inviare posta a chiunque altro, usati principalmente da chi invia spam e virus.

 

La soluzione a questo problema è che quando un MUA deve inviare un messaggio di posta, crea un canale sicuro di comunicazione con il server SMTP via SSL/TLS, si autentica presso il server tramite username e password, ed invia il messaggio. Quindi il server SMTP agisce da relay aperto solo per i client che si sono autenticati con successo.

 

La soluzione da implementare è SASL, Postfix con supporto per SASL e TLS e OpenSSL.

 

In pratica la procedura da seguire in sequenza è:

1.    installare e configurare SASL

2.    installare e configurare Postfix con supporto SASL e TLS

3.    installare OpenSSL

4.    creare i certificati digitali

 

Tipi di implemetazioni di SASL con e senza TLS:

 

·        SASL (login, plain) + TLS

 

·        SASL (ntlm, login, plain, digest-md5, cram-md5) + TLS

 

·        SASL (cram-md5): se il client non supporta uno dei meccanismi proposti la connessione sarà rifiutata.

 

I meccanismi di autenticazione supportati da SASL sono molteplici (ntlm, login, plain, digest-md5, cram-md5, …) : è stato scelto quello denominato PLAIN e LOGIN per la sua capacità di legarsi alle librerie PAM ossia saslauthd (demone di SASL) per interagire con PAM utilzza solo i meccanismi Plain e Login. Tra SASL e PAM si inserisce saslauthd, un servizio che gestisce le richieste di autenticazione di tipo PLAIN o LOGIN inoltrate alle librerie SASL. Pluggable Authentication Module (PAM) è un’Api generica per servizi legati all’autenticazione che permette di aggiungere nuovi metodi con la semplice installazione di nuovi moduli. Le policy di autenticazione sono ottenute con un file di configurazione di poche righe per ogni metodo scelto.

 

 

 

Software utilizzato

 

·        postfix        2.1.5-9ubuntu3 A high-performance mail transport agent

·        postfix-tls    2.1.5-9ubuntu3 TLS and SASL support for Postfix

·        libsasl2       2.1.19-1.5ubun Authentication abstraction library

·        libsasl2-modul 2.1.19-1.5ubun Pluggable Authentication Modules for SASL

·        sasl2-bin     2.1.19-1.5ubun Programs for manipulating the SASL users dat

·        openssl

·        linux UBUNTU vers. 5.04

 

 

 

 

Introduzione

 

Simple Mail Transfer Protocol (SMTP) è il protocollo utilizzato per trasmettere messaggi di posta elettronica tra due host.

SMTP utilizza il protocollo di trasporto TCP, ed in particolare un SMTP server rimane costantemente in ascolto sulla porta 25. Il server SMTP si occupa poi di trasferire i messaggi nelle caselle di posta (mailbox) dei destinatari, oppure qualora non fosse il diretto responsabile di queste, inoltrarli (operazione di relay) al server che provvederà.

 

I protocolli su cui si basa la distribuzione dei messaggi di posta elettronica non sono stati creati con sufficienti misure di sicurezza ed in particolare di autenticazione. La mancanza della certezza di chi sia il mittente di un messaggio, o anche solo da quale server il messaggio sia stato originato, rende possibili molti dei problemi attuali, dalla diffusione dei virus allo spam. Attualmente non sembra che in tempi brevi si possano adottare standard e protocolli completamente nuovi che risolvono questi problemi. Quello che invece stà lentamente succedendo è che vengono prese delle misure e fatte delle piccole modifiche o aggiunte ai protocolli esistenti per ridurre per quanto possibile i problemi. Una delle limitazioni del protocollo originale SMTP è che non è adeguatamente programmato per l’autenticazione, o verifica delle identità, dei mittenti. Per ovviare a questo problema è stata sviluppata un’estensione chiamata SMTP-AUTH.

 

SSL (secure socket layer) e TLS (transport layer security) sono due protocolli per la certificazione e la comunicazione cifrata. SSL è stato sviluppato da Netscape; TLS è l’evoluzione del primo, come standard pubblicato da IETF.

Le specifiche di sicurezza SASL e TLS consentono di usare un mail server  come relay, anche dall’esterno della propria LAN, autenticandosi su di esso.

Il protocollo Transport Layer Security (TLS) permette comunicazioni client-server garantendo l’integrità e la riservatezza dei dati. Il protocollo SMTP, qualora usi l’estensione starttls, viaggia incapsulato in TLS.

Simple Authentication and Security Layer (SASL) è un metodo per aggiungere un supporto di autenticazione ai protocolli di rete, ed eventualmente negoziare un layer di sicurezza per le comunicazioni successive. Un’implementazione è fornita dalle librerie cyrus-sasl che offrono diversi meccanismi di autenticazione (PLAIN, LOGIN, NTLM, CRAM-MD5, DIGEST-MD5 ecc.); per una lista completa si veda http://www.iana.org/assignments/sasl-mechanisms

I meccanismi PLAIN e LOGIN sono insicuri in quanto prevedono la comunicazione in chiaro della password.

 

I client di posta più diffusi supportano come autenticazione SMTP i seguenti metodi:

·        Outlook Express: LOGIN, PLAIN, NTLM.

·        Eudora: preferibilmente CRAM-MD5 in alternativa LOGIN, PLAIN.

·        Mozzilla Thunderbird: CRAM-MD5, LOGIN, PLAIN.

 

Per il protocollo SSL/TLS i certificati sono validi quando il server dimostra di possedere la chiave privata corrispodente a quella pubblica presente nel certificato, l’utente tramite il MUA decide se il certificato appartiene o meno al server mail a cui si vuole connettere.

In altre parole all’atto della connessione, il server presenta al client il suo certificato. Se il certificato è valido e il client “si fida” della CA che lo ha emesso, la sessione può continuare. Opzionalmente, il server può richiedere che anche il client dimostri la propria identità.

 

I certificati digitali hanno di solito una durata di un anno (buona politica di sicurezza) e si dividono in due grandi categorie:

 

1.    quelli self-signed, ossia firmati con la stessa chiave privata associata alla chiave pubblica presente nel certificato

 

2.    quelli firmati da un ente certificatore, detto comunemente CA.

 

 

 

Postfix in breve

 

Postfix implementa le specifiche di sicurezza permettendo l’autenticazione sicura sia in modalità server (rispetto ad un Mail User Agent) che in modalità client (rispetto ad altri Mail Transport Agent) e la connessione sicura tra client e server.

 

In particolare la specifica SMTP AUTH (RFC 2554) si basa su SASL (RFC 2222) e la specifica SMTP STARTTLS (RFC 2487) si basa su TLS (RFC 2246).

 

POSTFIX come server SMTP supporta i seguenti standards:

·        RFC 821 (SMTP protocol)

·        RFC 1123 (Host requirements)

·        RFC 1652 (8bit-MIME transport)

·        RFC 1869 (SMTP service extensions)

·        RFC 1870 (Message Size Declaration)

·        RFC 1985 (ETRN command)

·        RFC 2034 (Enhanced Status Codes)

·        RFC 2554 (AUTH command)

·        RFC 2821 (SMTP protocol)

·        RFC 2920 (SMTP Pipelining)

·        RFC 3207 (STARTTLS command)

·        RFC 3461 (SMTP DSN Extension)

·        RFC 3463 (Enhanced Status Codes)

 

Postfix è integrabile con diversi sistemi di autenticazione e sul sito ufficiale del pacchetto http://www.postfix.org è presente anche la documentazione per implementare diverse funzioni.

 

Tutti i programmi che compongono Postifix possono essere eseguiti in una “gabbia chroot” (chroot jail) ovvero in una porzione ristretta del filesystem. Sebbene questa modalità operativa non sia una garanzia assoluta di sicurezza si aggiunge in questo modo una barriera di difesa.

 

Postfix di default non permette l’invio di posta da parte di client e domini sconosciuti ovvero non è un open relay.

 

Il file /etc/postfix/master.cf descrive come gestire i demoni che costituiscono Postfix.

 

Quasi tutte le opzioni di configurazione di Postifix si trovano nel file /etc/postfix/main.cf (vedere il riquadro sottostante che riporta alcuni parametri principali).

 

# esempio di configurazione di Postfix in /etc/postfix/main.cf

 

# nome completo dell’host

myhostname = pingu.mrhark.it

 

# nome del dominio

mydomain = mrhark.it

 

# il banner riportato da postfix quando lo si contatta

smtpd_banner = $myhostname ESMTP $mail-name ($mail_version)

 

# permette di specificare il dominio da usare per la posta inviata da questo server,

# il valore di default è $myhostname

myorigin = $mydomain

 

# indica i domini che il sistema riconosce come locali e che pertanto non invia ad un altro server

mydestination = $myhostname, localhost.$mydomain, $mydomain

 

# indica gli indirizzi IP che sono autorizzati a spedire mail

# per reti più ampie aggiungere le relative sottoreti usando le maschere opportune

mynetworks = 127.0.0.0/8, 192.168.0.0/24

 

# indica il server SMTP a cui veranno inviate le mail in uscita

relayhost = mail.libero.it

 

# disabilita il comando VRFY che permette la verifica di indirizzi email sul server

disable_vrfy_command = yes

 

# restrizione per chi spedisce una mail

smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unknown_sender_domanin

 

# definisce i server usati per il controllo anti-spam

smtpd_rbl_domains = blackholes.mail-abuse.org, dialups.mail-abuse.org, rbl.maps.vix.com, dul.maps.vix.com

 

 

Postfix prevede dei comandi di amministrazione ad esempio:

·        postfix start per avviarlo

·        postfix stop per femarlo

·        postfix reload per ricaricare i file di configurazione

·        postfix check controlla che l’installazione sia corretta

·        postqueue –p visualizza tutte le code

·        postconf utility di configurazione

·        postsuper –d ALL elimina tutte le code

 

 

 

 

CONFIGURAZIONI

 

 

SASL

 

La configurazione di SASL è molto semplice, basta modificare il file /usr/lib/sasl2/smtpd.conf, se non esiste bisogna crearlo, ad esempio come indicato nel riquadro sottostante, e lanciare il programma indicando quale base dati usare per l'autenticazione: ad esempio si può lanciare saslauthd con l'opzione -a shadow (es. /usr/sbin/sasauthd –m /var/run/saslauthd/mux –a shadow), oppure -a pam, oppure -a ldap, eccetera. Di solito si usa la stessa base dati ove sono le credenziali degli utenti usate per l'accesso ai servizi POP3/IMAP4.

Le librerie di SASL permettono più metodi di autenticazione che sono contenute in /usr/lib/sasl2. Installando le librerie SASL di default, si avrà un link simbolico:

/usr/lib/sasl2  à  /usr/local/lib/sasl2 .

 

# esempio di Configurazione di SASL in /usr/lib/sasl2/smtpd.conf

# permette di utlizzare il demone SASL denominato saslauthd

pwcheck_method: saslauthd

 

# attiva solo questi meccanismi SASL per postfix

mech_list: plain login

 

 

 

Configurare il demone saslauthd in modo che autentichi gli utenti tramite per esempio PAM. In questo caso occorre configurare il demone saslauthd modificando il file /etc/default/saslauthd in questo modo:

 

# esempio di Configurazione di SASLAUTHD in /etc/default/saslauthd

 

# avvio automatico di saslauthd

START=yes

 

# specifica il meccanismo di autenticazione (si può usare anche shadow, sasldb), …)

MECHANISMS=pam

 

# passaggio di parametri

PARAMS=”-m /var/spool/postfix/etc”

 

 

Per connettersi al demone saslauthd i programmi comunicano tramite un socket che il demone stesso mette in /var/run/saslauthd/mux.

Il demone smtpd gira in modalità chroot, si può verificare la riga

smtp inet n - - - - smtpd contenuta in /etc/postfix/master.cf; il quinto campo rappresenta il chroot, un significa che gira in modo chroot, una n significa che gira in modo non chroot). Quindi in questo caso si deve creare la directory /var/spool/postfix/var/run/saslauthd con permessi 0710 e del gruppo postfix e poi fare il link simbolico:

/var/run/saslauthd  à  /var/spool/postfix/var/run/saslauthd

 

Bisogna eseguire codesti comandi:

 

/etc/init.d/saslauthd stop

mkdir /var/spool/postfix/var/run/saslauthd

chmod 0710 /var/spool/postfix/var/run/saslauthd

chgrp postfix /var/spool/postfix/var/run/saslauthd

rmdir /var/run/saslauthd

ln –s /var/spool/postfix/var/run/saslauthd /var/run/saslauthd

 

a questo punto si può avviare il demone saslauthd:

/etc/init.d/saslauthd start

 

 

 

Postfix e SASL

 

I parametri principali per configurare postfix ad utilizzare SASL per l'autenticazione degli utenti sono indicati nel riquadro sottostante.

 

# esempio di configurazione SASL per postfix in /etc/postfix/main.cf

# abilita il suporto SASL in Postfix

smtpd_sasl_auth_enable = yes

 

# permette di utilizzare SASL a vecchi client di posta elettronica Microsoft

broken_sasl_auth_clients = yes

 

# non permette autenticazioni anonime

smtpd_sasl_security_options = noanonymous

 

# abilita SASL per il dominio

smtpd_sasl_local_domain = $mydomain

 

#

 

# permette a qualunque host di collegarsi al mail server

smtpd_client_restrictions = reject_unknown_client

 

 

# consente il relay ai clients che si sono autenticati e ai clients dela LAN

# in altre parole consente il relay a chi è autenticato SASL, a connessioni provenienti

# dalla network locale ed a mail dirette a host per il quale riceve la posta

# reject_unauth_destination si usa per negare la consegna di mail per le quali la

# destinazione non sia altrove consentita quindi accetta mail destinate esclusivamente

# agli host dell’opzione mydestination

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination ……

 

Se non esiste il file /etc/postfix/sasl/smtpd.conf bisogna crearlo inserendo la seguente riga: pwcheck_method: saslauthd

 

 

 

test SASL

 

La RFC 2554 definisce un’estensione al protocollo SMTP (ESMTP) per l’autenticazione ed in particolare introduce un nuovo comando AUTH per iniziare una sessione autenticata.

Dopo il comando EHLO se il server supporta il meccanismo AUTH vengono presentati i metodi supportati dal server. Il client dovrà rispondere con il metodo selezionato e poi iniziare l’autenticazione.

 

Esempio per testare il funzionamento di SASL (“S” = server, “C” = client):

 

Di seguito viene mostrato un metodo per codificare una stringa in base64 che sarà utilizzata per autenticarsi in modalità plain:

 

# perl –MMIME::Base64 –e ‘print encode_base64(“test\0test\0testpass”);’

 

dGVzdAB0ZXN0AHRlc3RwYXNz codesta stringa rappresenta la codifica base64 di una username e password esistente ossia “username\0username\0password” (\0 è il carattere nullo)

 

# telnet localhost 25

Trying 127.0.0.1…

Connected to localhost.localdomain.

Escape character is ‘^]’.

S: 220 Alle.CE.UniPR.IT ESMTP Postfix (Ubuntu)

C: ehlo ludgia

S: 250-Alle.CE.UniPR.IT

S: 250-PIPELINING

S: 250-SIZE 10240000

S: 250-VRFY

S: 250-ETRN

S: 250-AUTH NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5

S: 250-AUTH=NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5

S: 250 8BITMIME

C: auth plain dGVzdAB0ZXN0AHRlc3RwYXNz

S: 235 Authentication successful

C: quit

S: 221 Bye

Connection closed by foreign host.

 

 

Di seguito viene mostrato un esempio di autenticazione SASL tramite invio email da client di posta collegato ad una rete esterna alla LAN digitando una username corretta e una password errata:

 

contenuto in /var/log/auth.log

 

Dec  5 16:08:43 Alle saslauthd[10941]: (pam_unix) authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=  user=ludgia

Dec  5 16:08:45 Alle saslauthd[10941]: DEBUG: auth_pam: pam_authenticate failed: Authentication failure

Dec  5 16:08:45 Alle saslauthd[10941]: do_auth         : auth failure: [user=ludgia] [service=smtp] [realm=CE.UniPR.IT] [mech=pam] [reason=PAM auth error]

 

contenuto in /var/log/mail.log

 

Dec  5 16:08:27 Alle postfix/smtpd[6696]: connect from unknown[192.167.18.85]

Dec  5 16:08:45 Alle postfix/smtpd[6696]: warning: unknown[192.167.18.85]: SASL LOGIN authentication failed

Dec  5 16:13:17 Alle postfix/smtpd[6696]: lost connection after AUTH from unknown[192.167.18.85]

Dec  5 16:13:17 Alle postfix/smtpd[6696]: disconnect from unknown[192.167.18.85]

 

 

Di seguito viene mostrato un esempio di autenticazione SASL tramite invio email da client di posta collegato ad una rete esterna alla LAN digitando una username e una password corretta:

 

contenuto in /var/log/mail.log

 

Dec  5 16:25:28 Alle postfix/smtpd[8279]: connect from unknown[192.167.18.85]

Dec  5 16:25:36 Alle postfix/smtpd[8279]: EACE5DFBAF: client=unknown[192.167.18.85], sasl_method=LOGIN, sasl_username=ludgia@CE.UniPR.IT

Dec  5 16:25:38 Alle postfix/cleanup[8294]: EACE5DFBAF: message-id=<43945BD2.8020900@alle.ce.unipr.it>

Dec  5 16:25:38 Alle postfix/qmgr[4412]: EACE5DFBAF: from=<ludgia@alle.ce.unipr.it>, size=684, nrcpt=3 (queue active)

Dec  5 16:25:38 Alle postfix/smtpd[8279]: disconnect from unknown[192.167.18.85]

Dec  5 16:25:38 Alle postfix/local[8299]: EACE5DFBAF: to=<ludgia@alle.ce.unipr.it>, relay=local, delay=2, status=sent (delivered to mailbox)

Dec  5 16:25:38 Alle postfix/smtp[8298]: EACE5DFBAF: to=<ulisse@libero.it>, relay=smtp.unipr.it[160.78.48.173], delay=2, status=sent (250 2.0.0 jB5FPJaS000885 Message accepted for delivery)

Dec  5 16:25:38 Alle postfix/smtp[8298]: EACE5DFBAF: to=<socrate@med.unibs.it>, relay=smtp.unipr.it[160.78.48.173], delay=2, status=sent (250 2.0.0 jB5FPJaS000885 Message accepted for delivery)

Dec  5 16:25:38 Alle postfix/qmgr[4412]: EACE5DFBAF: removed

 

 

 

 

 

 


Creazione di un certificato autofirmato

 

Teoricamente, il certificato che identifica e garantisce l’identità del servizio che si gestisce, deve essere fornito da un’autorità di certificazione (ufficiale). In alternativa è possibile generare in proprio un certificato autofirmato (certificato fittizio) che attiva il servizio ma non si può dimostare di essere chi si afferma di essere.

 

I passi da seguire sono:

1.    Creazione di una nostra Certification Authority (CA)

2.    Creazione di un certificato per il server

3.    Firmare il certificato del server con la nostra CA

Se si decide di utilizzare una CA riconosciuta dovremo procedere solo con i passi 2 e 3, mentre la CA sarà quella che è stata scelta.

 

Dapprima bisogna creare alcune directory:

 

# mkdir /etc/sslcerts

# cd /etc/sslcerts

# mkdir demoCA

# mkdir demoCA/private

# mkdir demoCA/newcerts

# echo “01” > demoCA/serial

# touch demoCA/index.txtc

 

Il common name deve essere l’hostname completo del server, ossia quello che abbiamo inserito nella variabile $myhostname del file di configurazione di Postfix

 

Ora creiamo una CA nostra che ci servirà successivamente a firmare il certificato:

# openssl req  –new  –x509  –keyout demoCA/private/cakey.pem  –out demoCA/cacert.pem  –days 365

 

Generating a 1024 bit RSA private key

…............++++++

..++++++

writing new private key to ‘demoCA/private/cakey.pem’

Enter PEM pass phrase:

Verifying – Enter PEM pass phrase:

 

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter ‘.’, the field will be left blank.

 

Country Name (2 letter code) [AU]:IT

State or Province Name (full name) [Some-State]:italia

Locality Name (eg, city) []:parma

Organization Name (eg, company) [Internet Widgits Pty Ltd]:università di parma

Organizational Unit Name (eg, section) []:dipartimento di informatica

Common Name (eg, YOUR name) []:alle.ce.unipr.it

Email Address []:admin@unipr.it

 

 

creiamo la richiesta di certificato:

# openssl  req  –new  –nodes  –keyout newreq.pem  –out newreq.pem  -days 365

 

Generating a 1024 bit RSA private key

…..........++++++

…++++++

writing new private key to ‘newreq.pem’

 

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter ‘.’, the field will be left blank.

 

Country Name (2 letter code) [AU]:IT

State or Province Name (full name) [Some-State]:italia

Locality Name (eg, city) []:parma

Organization Name (eg, company) [Internet Widgits Pty Ltd]:università di parma

Organizational Unit Name (eg, section) []:dipartimento di informatica

Common Name (eg, YOUR name) []:alle.ce.unipr.it

Email Address []:admin@unipr.it

 

Please enter the following ‘extra’ attributes

to be sent with your certificate request

A challenge password []:testpass78

An optional company name []:

 

 

creiamo il certificato firmato dalla nostra CA:

# openssl  ca  –policy policy_anything  –out newcert.pem  –infiles newreq.pem

 

Using configuration from /usr/lib/ssl/openssl.cnf

Enter pass phrase for ./demoCA/private/cakey.pem:

unable to load CA private key

17345:error:06065064:digital envelope routines:EVP_DecryptFinal:bad decrypt:evp_enc.c:450:

17345:error:0906A065:PEM routines:PEM_do_header:bad decrypt:pem_lib.c:423:

root@Alle:/etc/sslcerts # openssl ca –policy policy_anything –out newcert.pem –infiles newreq.pem

Using configuration from /usr/lib/ssl/openssl.cnf

Enter pass phrase for ./demoCA/private/cakey.pem:

Check that the request matches the signature

Signature ok

Certificate Details:

        Serial Number: 1 (0x1)

        Validity

            Not Before: Dec  5 17:00:00 2005 GMT

            Not After : Dec  5 17:00:00 2006 GMT

        Subject:

            countryName               = IT

            stateOrProvinceName       = italia

            localityName              = parma

            organizationName          = universit\E0 di parma

            organizationalUnitName    = dipartimento di informatica

            commonName                = alle.ce.unipr.it

            emailAddress              = admin@unipr.it

        X509v3 extensions:

            X509v3 Basic Constraints:

                CA:FALSE

            Netscape Comment:

                OpenSSL Generated Certificate

            X509v3 Subject Key Identifier:

                63:0B:A6:A3:99:04:E1:7E:22:13:7D:65:B0:AC:4D:A6:81:E3:88:E6

            X509v3 Authority Key Identifier:

                keyid:BD:2C:0A:7C:BC:65:51:C7:5C:91:04:D5:B8:15:44:C0:2E:63:C9:B8

                DirName:/C=IT/ST=italia/L=parma/O=universit\xE0 di parma/OU=dipartimento di informatica/CN=dipinfo/emailAddress=admin@unipr.it

                serial:D1:87:D0:B1:37:96:9F:5E

 

Certificate is to be certified until Dec  5 17:00:00 2006 GMT (365 days)

Sign the certificate? [y/n]:y

 

 

1 out of 1 certificate requests certified, commit? [y/n]y

Write out database with 1 new entries

Data Base Updated

 

 

Spostiamo il certificato della nostra CA e cambiamo i permessi ai certificati generati:

 

# mv demoCA/cacert.pem ./

# chmod 600 newreq.pem newcert.pem cacert.pem

 

 

I certificati generati sono non criptati (-nodes) e privi di password (-keyout) questo poiché risiederanno sul server leggibili solo da root, ma in particolare privi di password poiché se la password fosse presente, ogni volta che si riavviasse il computer server, il servizio che ne fa uso attenderebbe l’inserimento della password attraverso il prompt prima di attivarsi.

 

Il protocollo SMTP può non essere, in generale, un meccanismo end-end (è possibile che una e-mail attraversi più di un mail server fino alla destinazione). Pertanto l’implementazione di TLS fra due hop non rende sicuro tutto l’invio della mail, in quanto esiste parte del cammino in cui i dati viaggiano in chiaro. La soluzione consiste nella configurazione di ciascun hop con TLS o nella ricerca di misure alternative. Per quanto concerne la comunicazione fra client e server, essa avviene comunque su un livello criptato che assicura la segretezza indipendentemente dallo stato degli altri host.


Postfix e TLS

Innanzitutto abbiamo bisogno di un certificato digitale per postfix. In realtà dobbiamo avere 3 file: il certificato digitale della CA, il certificato digitale per postfix, ed il file contenente la relativa chiave privata non cifrata (altrimenti dobbiamo digitare la passphrase ad ogni attivazione di postfix). Mettiamo questi 3 file nella directory di configurazione di postfix, /etc/postfix/, ed aggiungiamo le relative configurazioni al file /etc/postfix/main.cf come indicato nel riquadro sottostante:

 

 

# esempio di configurazione TLS per postfix in /etc/postfix/main.cf

 

# abilita il suportoTLS in Postfix

smtpd_use_tls = yes

 

# si può usare l’autenticazione SASL solo se si utilizza TLS

smtpd_tls_auth_only = yes

 

# indica dove sono i certificati che sono stati generati per esempio con openssl

smtpd_tls_key_file = /etc/postfix/server_key.pem

smtpd_tls_cert_file = /etc/postfix/server_crt.pem

smtpd_tls_Cafile = /etc/postfix/cacert.pem

 

# da 1 a 4 abilita la registrazione di log TLS, invece 0 disabilita il log TSL

smtpd_tls_loglevel = 2

 

# richiede che il server postfix SMTP esibisce Ricevuto per le intestazioni di messaggi

# e per la chiave usata

smtpd_tls_received_header = yes

 

# tempo di durata nella cache dell’informazione di una sessione TLS

smtpd_tls_session_cache_timeout = 3800s

 

# indica la fonte di valori casuali nel processo di crittografia

tls_random_source = dev:/dev/urandom

 

# per proteggersi da attacchi attivi

smtpd_sasl_tls_security_options = $smtpd_sasl_security_option

 

 

Si può pensare di abilitare il protocollo criptato sulla porta 465, e anche l’autenticazione; invece sulla porta 25 si potrebbe abilitare il protocollo non criptato e quindi non permettere l’autenticazione.

 

L'autenticazione SASL è accettata solo se protetta da TLS (smtpd_tls_auth_only = yes). Un'alternativa all'uso della porta 25 per l'invio autenticato della posta, è quello dell'uso della porta submission=587 oppure smtps=465. Invece di aggiungere permit_sasl_authenticated ad smtpd_recipient_restrictions, si può modificare il file /etc/postfix/master.cf come indicato nel riquadro sottostante. In questo modo postfix accetterà la posta autenticata solo sulle porte 587 e 465, mentre sulla porta 25 fa relay solo per i clients MUA interni. Si noti che sulla porta 465 è attivato un TLS-wrapping usato da Outlook Express.

 

# per far usare TLS ed abilitare l’autenticazione SASL se non specificato in

# main.cf

# esempio di Configurazione porte di relay sicuro in /etc/postfix/master.cf

# ==========================================================================

# service   type  private  unpriv  chroot  wakeup  maxproc  command  +  args

#                 (yes)    (yes)   (yes)   (never) (50)

# ==========================================================================

smtps       inet  n        -        y      -       -        smtpd -o\

                     smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes

submission  inet  n        -        y      -       -        smtpd -o\

                         smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes

 

 

 

Test TLS

 

Nel riquadro sottostante è riportato un esempio per testare il funzionamento di TLS (“S” = server, “C” = client):

 

# telnet localhost 25

Trying 127.0.0.1…

Connected to localhost.localdomain.

Escape character is ‘^]’.

S: 220 Alle.CE.UniPR.IT ESMTP Postfix (Ubuntu)

C: ehlo ludgia

S: 250-Alle.CE.UniPR.IT

S: 250-PIPELINING

S: 250-SIZE 10240000

S: 250-VRFY

S: 250-ETRN

S: 250-STARTTLS

S: 250-AUTH NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5

S: 250-AUTH=NTLM LOGIN PLAIN DIGEST-MD5 CRAM-MD5

S: 250 8BITMIME

C: starttls

S: 220 Ready to start TLS

 


Nel riquadro sottostante è riportato un esempio di sessione criptata e memorizzata in /var/log/mail.log, generata inviando e-mail da un client di posta remoto:

 

Dec  5 19:55:49 Alle postfix/smtpd[28855]: starting TLS engine

Dec  5 19:55:49 Alle postfix/smtpd[28855]: connect from unknown[192.167.18.85]

Dec  5 19:55:49 Alle postfix/smtpd[28855]: setting up TLS connection from unknown[192.167.18.85]

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:before/accept initialization

Dec  5 19:55:49 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (11 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv2/v3 read client hello A

Dec  5 19:55:49 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (11 bytes => 11 (0xB))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0000 16 03 01 00 53 01 00 00|4f 03 01     ….S… O..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: read from 08081F40 [080925FB] (77 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read client hello B

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read client hello B

Dec  5 19:55:49 Alle postfix/smtpd[28855]: read from 08081F40 [080925FB] (77 bytes => 77 (0x4D))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0000 00 00 79 db 75 bf 59 e9|e0 91 17 1c 6f 75 4b ed  ..y.u.Y. ….ouK.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0010 61 ce 8f f2 f6 07 39 7b|c0 ac 4f 98 fe 8d d2 fa  a…..9{ ..O…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0020 00 00 28 00 39 00 38 00|35 00 33 00 32 00 04 00  ..(.9.8. 5.3.2…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0030 05 00 2f 00 16 00 13 fe|ff 00 0a 00 15 00 12 fe  ../….. ….....

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0040 fe 00 09 00 64 00 62 00|03 00 06 01     ….d.b. ….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 004d - <SPACES/NULS>?

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 read client hello B

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write server hello A

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write certificate A

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write key exchange A

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write server done A

Dec  5 19:55:49 Alle postfix/smtpd[28855]: write to 08081F40 [080A0740] (1587 bytes => 1587 (0x633))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0000 16 03 01 00 4a 02 00 00|46 03 01 43 94 8d 35 7c  ….J… F..C..5|

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0010 58 0b 8f e2 14 b2 50 42|2f 28 9b c4 ba e7 cf 49  X…..PB /(…..I

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0020 90 6b e8 6e 0f 8c 05 7a|2c 33 e3 20 2f 72 d3 c4  .k.n…z ,3. /r..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0030 a3 e8 b2 0d 36 e3 50 05|87 f0 b1 18 4e 80 4a 3e  ….6.P. ….N.J>

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0040 b2 22 2b 4b 43 67 be 45|56 cd 3c 50 00 39 00 16  .”+KCg.E V.<P.9..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0050 03 01 04 44 0b 00 04 40|00 04 3d 00 04 3a 30 82  …D…@ ..=..:0.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0060 04 36 30 82 03 9f a0 03|02 01 02 02 01 01 30 0d  .60….. …...0.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0070 06 09 2a 86 48 86 f7 0d|01 01 04 05 00 30 81 b8  ..*.H… …..0..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0080 31 0b 30 09 06 03 55 04|06 13 02 49 54 31 0f 30  1.0…U. …IT1.0

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0090 0d 06 03 55 04 08 13 06|69 74 61 6c 69 61 31 0e  …U…. italia1.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00a0 30 0c 06 03 55 04 07 13|05 70 61 72 6d 61 31 1c  0…U… .parma1.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00b0 30 1a 06 03 55 04 0a 14|13 75 6e 69 76 65 72 73  0…U… .univers

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00c0 69 74 e0 20 64 69 20 70|61 72 6d 61 31 24 30 22  it. Di p arma1$0”

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00d0 06 03 55 04 0b 13 1b 64|69 70 61 72 74 69 6d 65  ..U….d ipartime

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00e0 6e 74 6f 20 64 69 20 69|6e 66 6f 72 6d 61 74 69  nto di i nformati

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 00f0 63 61 31 10 30 0e 06 03|55 04 03 13 07 64 69 70  ca1.0… U….dip

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0100 69 6e 66 6f 31 32 30 30|06 09 2a 86 48 86 f7 0d  info1200 ..*.H…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0110 01 09 01 16 23 6c 75 64|6f 76 69 63 6f 2e 67 69  ….#lud ovico.gi

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0120 61 6e 6e 69 6e 69 40 73|74 75 64 65 6e 74 69 2e  annini@s tudenti.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0130 75 6e 69 70 72 2e 69 74|30 1e 17 0d 30 35 31 32  unipr.it 0…0512

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0140 30 35 31 37 30 30 30 30|5a 17 0d 30 36 31 32 30  05170000 Z..06120

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0150 35 31 37 30 30 30 30 5a|30 81 b8 31 0b 30 09 06  5170000Z 0..1.0..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0160 03 55 04 06 13 02 49 54|31 0f 30 0d 06 03 55 04  .U….IT 1.0…U.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0170 08 13 06 69 74 61 6c 69|61 31 0e 30 0c 06 03 55  …itali a1.0…U

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0180 04 07 13 05 70 61 72 6d|61 31 1c 30 1a 06 03 55  ….parm a1.0…U

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0190 04 0a 14 13 75 6e 69 76|65 72 73 69 74 e0 20 64  ….univ ersit. D

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01a0 69 20 70 61 72 6d 61 31|24 30 22 06 03 55 04 0b  i parma1 $0”..U..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01b0 13 1b 64 69 70 61 72 74|69 6d 65 6e 74 6f 20 64  ..dipart imento d

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01c0 69 20 69 6e 66 6f 72 6d|61 74 69 63 61 31 10 30  i inform atica1.0

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01d0 0e 06 03 55 04 03 13 07|64 69 70 69 6e 66 6f 31  …U…. dipinfo1

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01e0 32 30 30 06 09 2a 86 48|86 f7 0d 01 09 01 16 23  200..*.H …....#

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 01f0 6c 75 64 6f 76 69 63 6f|2e 67 69 61 6e 6e 69 6e  ludovico .giannin

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0200 69 40 73 74 75 64 65 6e|74 69 2e 75 6e 69 70 72  i@studen ti.unipr

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0210 2e 69 74 30 81 9f 30 0d|06 09 2a 86 48 86 f7 0d  .it0..0. ..*.H…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0220 01 01 01 05 00 03 81 8d|00 30 81 89 02 81 81 00  …..... .0…...

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0230 be 53 25 31 04 6b fa 28|cf 99 fa 43 d3 1f a8 e2  .S%1.k.( …C….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0240 7a 08 10 a6 dc 3d e3 5b|cb 8e df c5 c8 64 cb be  z….=.[ …..d..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0250 62 c0 98 e4 09 f2 95 19|34 13 8c f7 df 99 a1 35  b….... 4…...5

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0260 08 39 7c 73 85 66 db 22|08 14 13 bd aa fd 82 77  .9|s.f.” …....w

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0270 c1 00 cf 12 78 5c 39 f0|e8 31 94 b8 c7 1f c5 7b  ….x\9. .1…..{

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0280 ab 8d 91 6f 52 a7 47 13|1b 75 eb 32 be 15 0b b0  …oR.G. .u.2….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0290 b4 2e 20 c5 c7 23 ac 72|ad 4d 13 01 63 35 37 60  .. ..#.r .M..c57`

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02a0 d0 15 74 e4 a0 67 07 67|25 fa 73 53 91 89 0c 75  ..t..g.g %.sS…u

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02b0 02 03 01 00 01 a3 82 01|4c 30 82 01 48 30 09 06  …..... L0..H0..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02c0 03 55 1d 13 04 02 30 00|30 2c 06 09 60 86 48 01  .U….0. 0,..`.H.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02d0 86 f8 42 01 0d 04 1f 16|1d 4f 70 65 6e 53 53 4c  ..B….. .OpenSSL

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02e0 20 47 65 6e 65 72 61 74|65 64 20 43 65 72 74 69   Generat ed Certi

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 02f0 66 69 63 61 74 65 30 1d|06 03 55 1d 0e 04 16 04  ficate0. ..U…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0300 14 63 0b a6 a3 99 04 e1|7e 22 13 7d 65 b0 ac 4d  .c…... ~”.}e..M

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0310 a6 81 e3 88 e6 30 81 ed|06 03 55 1d 23 04 81 e5  …..0.. ..U.#…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0320 30 81 e2 80 14 bd 2c 0a|7c bc 65 51 c7 5c 91 04  0…..,. |.eQ.\..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0330 d5 b8 15 44 c0 2e 63 c9|b8 a1 81 be a4 81 bb 30  …D..c. …....0

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0340 81 b8 31 0b 30 09 06 03|55 04 06 13 02 49 54 31  ..1.0… U….IT1

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0350 0f 30 0d 06 03 55 04 08|13 06 69 74 61 6c 69 61  .0…U.. ..italia

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0360 31 0e 30 0c 06 03 55 04|07 13 05 70 61 72 6d 61  1.0…U. …parma

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0370 31 1c 30 1a 06 03 55 04|0a 14 13 75 6e 69 76 65  1.0…U. …unive

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0380 72 73 69 74 e0 20 64 69|20 70 61 72 6d 61 31 24  rsit. Di  parma1$

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0390 30 22 06 03 55 04 0b 13|1b 64 69 70 61 72 74 69  0”..U… .diparti

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03a0 6d 65 6e 74 6f 20 64 69|20 69 6e 66 6f 72 6d 61  mento di  informa

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03b0 74 69 63 61 31 10 30 0e|06 03 55 04 03 13 07 64  tica1.0. ..U….d

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03c0 69 70 69 6e 66 6f 31 32|30 30 06 09 2a 86 48 86  ipinfo12 00..*.H.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03d0 f7 0d 01 09 01 16 23 6c|75 64 6f 76 69 63 6f 2e  …...#l udovico.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03e0 67 69 61 6e 6e 69 6e 69|40 73 74 75 64 65 6e 74  giannini @student

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 03f0 69 2e 75 6e 69 70 72 2e|69 74 82 09 00 d1 87 d0  i.unipr. it…...

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0400 b1 37 96 9f 5e 30 0d 06|09 2a 86 48 86 f7 0d 01  .7..^0.. .*.H….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0410 01 04 05 00 03 81 81 00|99 2e 39 0d a1 da b2 a5  …..... ..9…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0420 cc bd 7f d6 3d fb 7e 24|f8 9b f1 54 26 4d 75 95  ….=.~$ …T&Mu.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0430 60 f9 91 0f b4 c1 e5 7f|c0 ec 07 35 47 fa cb 06  `….... …5G…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0440 a7 57 47 d3 59 36 69 2b|60 f7 f7 ec 57 d7 d0 f5  .WG.Y6i+ `…W…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0450 b0 62 b4 3e 6d 8d b0 14|9c c3 bc 8b ea 84 d2 eb  .b.>m… ….....

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0460 3f b1 e1 bd 40 81 dd ac|f0 79 33 bf 39 33 75 21  ?…@… .y3.93u!

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0470 4b 0e b3 e2 d3 b7 24 cb|77 8f d1 e5 87 8f aa 17  K…..$. w…....

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0480 a5 e4 ff 19 b9 89 f3 eb|4d 1b f6 ab 3c 22 d3 3f  …..... M…<”.?

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0490 e8 10 22 11 f3 53 86 ff|16 03 01 01 8d 0c 00 01  ..”..S.. ….....

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04a0 89 00 80 b0 fe b4 cf d4|55 07 e7 cc 88 59 0d 17  …..... U….Y..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04b0 26 c5 0c a5 4a 92 23 81|78 da 88 aa 4c 13 06 bf  &…J.#. x…L…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04c0 5d 2f 9e bc 96 b8 51 00|9d 0c 0d 75 ad fd 3b b1  ]/….Q. …u..;.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04d0 7e 71 4f 3f 91 54 14 44|b8 30 25 1c eb df 72 9c  ~qO?.T.D .0%…r.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04e0 4c f1 89 0d 68 3f 94 8e|a4 fb 76 89 18 b2 91 16  L…h?.. ..v…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 04f0 90 01 99 66 8c 53 81 4e|27 3d 99 e7 5a 7a af d5  …f.S.N ‘=..Zz..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0500 ec e2 7e fa ed 01 18 c2|78 25 59 06 5c 39 f6 cd  ..~….. x%Y.\9..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0510 49 54 af c1 b1 ea 4a f9|53 d0 df 6d af d4 93 e7  IT….J. S..m….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0520 ba ae 9b 00 01 02 00 80|89 17 1d 34 53 03 7d 4b  …..... …4S.}K

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0530 1a 18 b0 c5 ef 41 8f 5c|6c a9 39 73 4d d3 b0 87  …..A.\ l.9sM…

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0540 f3 be 37 c1 c1 7c 6a 49|7a cd 28 0a 18 d9 88 0f  ..7..|jI z.(…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0550 69 f2 17 2b 4a 34 89 6c|0a b7 07 91 66 fd 9b 70  i..+J4.l ….f..p

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0560 32 61 4f 6b 20 c9 50 74|ba 99 4a 40 05 97 61 1e  2aOk .Pt ..J@..a.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0570 19 71 0e 0e 27 ea 60 1c|03 28 b4 40 81 19 f9 70  .q..’.`. .(.@…p

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0580 5e 57 a6 31 6c 56 76 ef|e9 f9 6a ac bd 22 0b 3b  ^W.1lVv. ..j..”.;

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0590 ee bc 74 b1 06 ce 3e d3|5f e0 9b 3a 20 de b3 99  ..t…>. _..: …

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05a0 d2 df 77 bb 0a 4b 63 d7|00 80 74 7c af c7 a7 eb  ..w..Kc. ..t|….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05b0 4e 20 18 95 07 97 15 a6|bd 2a e7 51 00 7f b7 c4  N …... .*.Q….

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05c0 56 0d 0b 5c a8 d1 67 f9|42 b1 23 f1 70 37 bb 43  V..\..g. B.#.p7.C

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05d0 86 61 f1 cb 24 2f 30 7d|40 8f 55 6a b9 67 2f 09  .a..$/0} @.Uj.g/.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05e0 3e 5d ef 61 2b 76 8f b6|b6 5b 78 f5 94 f0 fd cf  >].a+v.. .[x…..

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 05f0 07 3d ce 53 0c 97 0c 31|72 a8 3d 50 8c 41 19 44  .=.S…1 r.=P.A.D

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0600 3b 45 f8 9f 80 b2 29 83|a0 07 90 ae a5 e2 c7 08  ;E….). ….....

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0610 6c be 09 78 79 e4 ba 61|05 85 6e 61 c4 78 72 b0  l..xy..a ..na.xr.

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0620 4b 00 69 ee ed f6 e3 34|1d 52 16 03 01 00 04 0e  K.i….4 .R…...

Dec  5 19:55:49 Alle postfix/smtpd[28855]: 0633 - <SPACES/NULS>?

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 flush data

Dec  5 19:55:49 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:49 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read client certificate A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => 5 (0x5))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 16 03 01 00 86     …..

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (134 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read client certificate A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (134 bytes => 134 (0x86))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 10 00 00 82 00 80 25 03|81 80 d0 11 bb 17 11 9e  …...%. ….....

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0010 6f 8c d6 a2 95 b0 d1 d4|15 f7 09 3e 6e c4 97 13  o….... …>n…

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0020 94 c3 b5 9f 35 29 76 f7|8f 11 6a 39 6e c0 f3 5e  ….5)v. ..j9n..^

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0030 e5 c3 04 45 dc 47 c0 b2|bd 73 26 63 a0 7d d7 ce  …E.G.. .s&c.}..

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0040 25 b1 6a e0 c3 3a 8d 92|06 62 ed d0 79 a3 13 4d  %.j..:.. .b..y..M

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0050 5f f1 fc b4 91 eb 0d 08|78 36 68 fa d6 e7 73 97  _….... x6h…s.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0060 14 96 e3 25 14 5a 05 43|e4 1e 0d e8 8d fd 67 92  …%.Z.C …...g.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0070 bf 8f a7 0e 94 4f cb ad|2e f4 16 58 1b 90 7d 66  …..O.. …X..}f

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0080 f3 03 25 c8 bc aa     ..%…

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 read client key exchange A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read certificate verify A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => 5 (0x5))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 14 03 01 00 01     …..

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (1 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read certificate verify A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (1 bytes => 1 (0x1))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 01     .

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read certificate verify A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F0] (5 bytes => 5 (0x5))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 16 03 01 00 30     ….0

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (48 bytes => -1 (0xFFFFFFFF))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:error in SSLv3 read certificate verify A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: read from 08081F40 [080925F5] (48 bytes => 48 (0x30))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 87 98 a8 f8 43 57 34 de|93 5a a1 5d 61 6d 67 c6  ….CW4. .Z.]amg.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0010 1b 48 dd 6e 4d c6 66 2d|aa ed ab 4f 68 70 2c 71  .H.nM.f- …Ohp,q

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0020 15 99 e4 81 11 82 c1 3d|76 09 f9 5d 75 c7 77 88  …....= v..]u.w.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 read finished A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write change cipher spec A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 write finished A

Dec  5 19:55:51 Alle postfix/smtpd[28855]: write to 08081F40 [080A0740] (59 bytes => 59 (0x3B))

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0000 14 03 01 00 01 01 16 03|01 00 30 af 2c 50 41 07  …..... ..0.,PA.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0010 d9 32 fb ce 7f e1 67 e5|a2 89 52 14 f9 5f db 06  .2….g. ..R.._..

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0020 59 c1 cc 2e 1d 59 05 c6|bd e5 23 b2 d0 09 30 a7  Y….Y.. ..#…0.

Dec  5 19:55:51 Alle postfix/smtpd[28855]: 0030 77 83 47 ec 34 f5 f4 2b|05 54 2b     w.G.4..+ .T+

Dec  5 19:55:51 Alle postfix/smtpd[28855]: SSL_accept:SSLv3 flush data

Dec  5 19:55:51 Alle postfix/smtpd[28855]: TLS connection established from unknown[192.167.18.85]: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)

Dec  5 19:55:58 Alle postfix/smtpd[28855]: EB9E6DFBAF: client=unknown[192.167.18.85], sasl_method=PLAIN, sasl_username=ludgia@CE.UniPR.IT

Dec  5 19:55:58 Alle postfix/cleanup[28873]: EB9E6DFBAF: message-id=<43948D1E.3090206@alle.ce.unipr.it>

Dec  5 19:55:58 Alle postfix/qmgr[28437]: EB9E6DFBAF: from=<ludgia@alle.ce.unipr.it>, size=758, nrcpt=1 (queue active)

Dec  5 19:55:58 Alle postfix/smtpd[28855]: disconnect from unknown[192.167.18.85]

Dec  5 19:55:58 Alle postfix/smtp[28874]: EB9E6DFBAF: to=<socrate@med.unibs.it>, relay=smtp.unipr.it[160.78.48.163], delay=1, status=sent (250 2.0.0 jB5ItdLX015814 Message accepted for delivery)

Dec  5 19:55:58 Alle postfix/qmgr[28437]: EB9E6DFBAF: removed

 

 

Tener presente che i clients di posta comunicheranno che il certificato non è affidabile perché creato da un’Autorità di Certificazione sconosciuta (non ufficiale).

 

Successivamente si riporta come esempio le schermate video presentate da Mozilla ThunderBird:

 




Cliccando su Esamina certificato si ha la seguente schermata:

 



Configurazione dei client di posta elettronica più diffusi per autenticazione SMTP e per sessione criptata SSL/TLS

 

 

 

Configurazione di Microsoft Outlook Express:

 

1.     Avviare Outlook Express cliccando sull’apposita icona

2.     Cliccare su Strumenti e di seguito su Account…

3.     Selezionare la propria casella di posta su Posta elettronica e di seguito su Proprietà

4.     Cliccare su Server ed attivare il flag su Autenticazione del server necessaria

5.     Inserire in Posta in uscita SMTP inserire la voce relativa

6.     Cliccare su Impostazioni ed attivare Accesso tramite

7.     Inserire il nome account e la password

8.     Attivare il flag accesso tramite autenticazione password di protezione (noto anche come NTLM) e cliccare su OK

9.     Cliccare su Impostazioni avanzate ed attivare il flag il server necessita di una connessione protetta (SSL) per la posta in uscita (SMTP)

10.           Infine cliccare su Applica ed OK

 

 

 

Configurazione di Mozilla Thunderbird:

 

1.     Avviare Mozzilla Thunderbird cliccando sull’apposita icona

2.     Cliccare su Strumenti e di seguito su Impostazioni account…

3.     Cliccare nel riquadro di sinistra su Server in uscita (SMTP)

4.     Inserire il nome del server

5.     attivare il flag su Utilizza nome utente e password

6.     nella sezione Utilizza connessione sicura (SSL) attivare TLS

7.     infine cliccare su OK

 

 

 

Configurazione di Eudora:

 

1.     Avviare Eudora cliccando sull’apposita icona

2.     Cliccare su Tools e di seguito su Options

3.     Nel riquadro di sinistra cliccare su Sending Mail

4.     Inserire SMTP server

5.     Attivare il flag su Allow authentication e su Immediate send

6.     Nel menu a tendina di Secure Sockets when Sending selezionare Required, STARTTLS

7.     Infine cliccare su OK