GLG Programs fa uso di cookie per migliorare l'esperienza di navigazione degli utenti, ma non per tracciarne un profilo. Proseguendo nella navigazione, si accetta implicitamente l'utilizzo dei cookie.
[OK]Note legaliNon mi importa
Logo GLGPrograms Logo GLGPrograms

Postfix + Dovecot = Mailserver

Quando abbiamo aperto il nostro sito, abbiamo inserito una pagina attraverso la quale i nostri visitatori potevano contattarci: ci limitavamo a controllare la validità dell'indirizzo email, e accettavamo qualsiasi messaggio in entrata. Tuttavia, dopo alcuni mesi, abbiamo avuto dei problemi di spam, quindi abbiamo inserito anche un captcha per bloccare questi fastidiosi bot. Nell'occasione, ne abbiamo approfittato per installare un nostro server mail, in modo da poter smistare la posta su un indirizzo di servizio da cui fosse anche possibile rispondere ai visitatori, e contemporaneamente limitare lo spam anche attraverso SpamAssassin. Come il nostro sito, anche il mailserver è ovviamente ospitato sul nostro server casalingo con Debian.

Questo tutorial mostrerà come installare e configurare Postfix, il MTA che si occupa di ricevere e inviare la posta e Dovecot, il server IMAP/POP3. Inoltre, darà alcune informazioni su RoundCube, un pratico frontend di webmail, e K9-Mail, un client di posta per mantenere sempre sincronizzato il nostro smartphone Android.

Configurazione del DNS

Per poter ricevere posta dall'esterno, è necessario modificare i record MX del proprio server DNS:

Se si utilizza un server DNS esterno e il servizio è accessibile da tutta la rete Internet, è bene eseguire questa operazione prima di tutte le altre (magari anche il giorno prima), perché, ci possono volere anche alcune ore prima che i server DNS di tutto il mondo si siano aggiornati ai nuovi valori.

Postfix

Postfix è un MTA, ossia un Mail Transfer Agent, in pratica un server che, attraverso il protocollo SMTP (Simple Mail Transfer Protocol), si occupa di ricevere e inviare la posta. È facilmente configurabile, e, di default, non presenta impostazioni che potrebbero compromettere la sicurezza o la "reputazione" del sistema (ossia, non è possibile che client non autenticati possano inviare posta attraverso il nostro server).
Nella seguente configurazione

Per installare Postfix:

# apt-get install postfix

La pacchettizzazione su Debian 8 Jessie (l'attuale versione stable) include un pratico script di configurazione interattiva:

Configuriamo Postfix; modifichiamo il file /etc/postfix/main.cf.

# se si utilizza Debian, il file /etc/mailname
# dovrebbe già contenere il nome del dominio di origine
# del vostro server. In caso contrario, inserirlo:
#   myorigin = glgprograms.it
myorigin = /etc/mailname
myhostname = glgprograms.it

# Dominio delle email accettate in ingresso
mydestination = glgprograms.it, localhost

# Permessi delle email in uscita: vengono accettate solo le email
# inviate da utenti autenticati tramite SASL
smtpd_sasl_auth_enable = yes
smtpd_relay_restrictions = permit_sasl_authenticated defer_unauth_destination
smtpd_sasl_security_options = noanonymous

# Tipo di autenticazione: l'autenticazione viene gestita
# da Dovecot, che si preoccuperà di chiedere le necessarie informazioni ai client
smtpd_sasl_type = dovecot

# Socket di comunicazione con dovecot (su molti sistemi questo è il percorso di default;
# per cambiarlo, modificare /etc/dovecot/conf.d/10-master.conf )
smtpd_sasl_path = private/auth

# Dopo quanto tempo rigettare le email che non possono essere recapitate
maximal_queue_lifetime = 30m

Dovecot

Dovecot è un server IMAP/POP3 che permette di gestire la posta attraverso un client remoto, per esempio tramite Thunderbird o Outlook, ma anche applicazioni web come RoundCube (che utilizzeremo per la webmail). IMAP è un protocollo moderno e più adatto alle esigenze dei nostri giorni: è possibile gestire singolarmente i vari messaggi di posta, mantenendola sincronizzata sui vari dispositivi che utilizziamo (computer, smartphone, tablet) e risparmiando banda scaricando gli allegati solo se necessario. Pertanto, lo consiglio al posto del vecchio POP3, e mi limiterò a installare i moduli per IMAP e l'autenticazione SASL.
# apt-get install dovecot-imapd libsasl2-modules
Anche per Dovecot, Debian ci fornisce un comodo script interattivo per configurare le impostazioni di base:

Utenti email

Per ogni indirizzo email che si desidera avere, creare il corrispondente utente. Tenere presente che si possono anche utilizzare degli alias per instradare le email a utenti terzi; questa caratteristica non verrà tuttavia trattata in questo tutorial, in quanto non ne abbiamo avuto bisogno.
adduser utente   # per l'indirizzo utente@dominio.tld
Aggiungere l'utente al gruppo mail:
gpasswd -a utente mail
Inserire una nuova password per l'utente:
passwd utente
Se si desidera utilizzare l'utente solamente per ricevere e inviare email, impedirgli il login impostando la shell di login su /bin/false nel file /etc/passwd.

Port Forwarding

Demone/ServizioProtocolloLANWAN
PostfixSMTP2525
DovecotIMAP143143
Naturalmente, dopo aver controllato il corretto funzionamento del server, si consiglia caldamente di modificare almeno le porte esterne (WAN) in modo da ridurre i frequenti attacchi automatici delle botnet.

Verifica della configurazione

A questo punto, è possibile verificare il corretto funzionamento dei nostri demoni. Riavviamoli:
# systemctl restart postfix
# systemctl restart dovecot
e correggiamo eventuali errori nei file di configurazione. Dopodichè apriamo Thunderbird (o il nostro client IMAP preferito, che può essere Evolution, Sylpheed o persino Mutt, ma assolutamente non deve essere Outlook ;-) ) e creiamo un nuovo account, specificando l'indirizzo email completo (ad esempio, utente@dominio.tld): nel giro di pochi attimi, se non abbiamo modificato le porte standard, ci verrà suggerita la configurazione standard.
Nota: per avere un minimo di sicurezza, accertarsi che venga riconosciuto il comando STARTTLS; alla prima connessione, il client di posta chiederà di accettare il certificato SSL che permetterà di comunicare col server in modo sicuro.

Non rimane che installare e configurare SpamAssassin per limitare lo spam (argomento non trattato in questo documento).

Controllare la posta fuori casa

RoundCube

RoundCube è una semplice, pratica e accattivante webmail open source, che ci consente di consultare la nostra posta dovunque ci troviamo, utilizzando semplicemente un browser.
Poiché attualmente non è pacchettizata per Debian, ma è scritta in PHP, è sufficiente scaricare l'archivio coi sorgenti da roundcube.net ed estrarlo in una cartella alla quale è possibile accedere tramite Apache. L'installazione è semplice e intuitiva, anche grazie all'ottima documentazione nel README dell'archivio e del wiki.

K9-Mail

Per mantenere il proprio smartphone sempre sincronizzato con il server di posta, si può utilizzare K9-Mail un'applicazione client di posta (come Thunderbird) leggera e open source per Android, che permette di sincronizzare più caselle email contemporaneamente.
Pagina scritta da

Hai una domanda? Scrivici!
Questa pagina ti è piaciuta? Condividila!
Share on Facebook Share on Google+ Share on linkedin