Hanno detto:
Il computer non è una macchina intelligente che aiuta le persone stupide, anzi è una macchina stupida che funziona solo nelle mani delle persone intelligenti.
Argomenti nel blog
ArchLinux Small Business Server (23) - Mail Server (8)
Ultimo capitolo della saga Mail Server.
Conludiamo questa cavalcata con in servizi POP3 e IMAP forniti da Dovecot che ci permettono di visualizzare e scaricare la posta con il nostro MUA (client di posta) preferito e con la IMPORTANTISSIMA configurazione del Firewall.
Dovecot
Dovecot è un Mail Delivery Agent progettato per garantire la sicurezza. Supporta la maggior parte dei formati di caselle di posta: a noi interessa particolarmente il formato Maildir dal momento che lo abbiamo adottato. Questa sezione espone come configurarlo come server imap e pop3.
Configurazione
Cominciamo con il copiarci il file di esempio di Dovecot che rappresenta un ottimo punto di partenza e apriamolo con il nostro editor:
sudo cp /etc/dovecot/dovecot-example.conf /etc/dovecot/dovecot.conf
sudo nano /etc/dovecot/dovecot.conf
Possiamo notare che il file è bello corposo o_O, noi impostamo solo quello che ci interessa lasciando il resto invariato.
Cominciamo con l'abilitare i protocolli pop3 e imap
protocols = imap pop3
e proseguiamo con il disabilitare l'autenticazione ssl e abilitare le passwords in chiaro. Ok, non è il massimo della vita, ma la messa in sicurezza del server ve lo lascio come compito a casa:
ssl_disable = yes
disable_plaintext_auth = no
conludiamo con il formato UIDL (Unique Mail Identifier) da usare. Impostiamo il predefinito consigliato che sembra non dare fastidio nemmeno a Outlook 2003 ;)
pop3_uidl_format = %08Xu%08Xv
Autenticazione
Al fine di ottenere il nostro agognato Single Signon vogliamo far sì che Dovecot autentichi gli utenti utilizzando la stessa coppia utente/password utilizzata da Samba. I nostri utenti utilizzeranno sempre lo stesso account sia per il File Server che per la posta.
Questo si può fare in modi diversi, qui utilizzeremo PAM che di "riflesso" utilizzerà LDAP per l'autenticazione. Apriamo (se lo abbiamo chiuso) il file di configurazione /etc/dovecot/dovecot.conf e aggiungiamo (o cerchiamo e modifichiamo, meglio) il seguente parametro :
passdb pam {
args = blocking=yes dovecot
}
In questo modo abbiamo detto a Dovecot di utilizzare PAM con le "regole" impostate nel file /etc/pam.d/dovecot che andiamo immediatamente a creare:
sudo nano /etc/pam.d/dovecot
così:
#%PAM-1.0
auth sufficient pam_ldap.so
auth required pam_unix.so nullok
account sufficient pam_ldap.so
account required pam_unix.so
Ora Dovecot per autenticare un utente utilizzerà PAM il quale prima chiederà a LDAP e poi utilizzerà l'utente locale unix.
Firewall
Mai dimenticarsi del Firewall ! Dobbiamo permettere il traffico sulle porte utilizzate da Dovecot e anche costringere gli utenti della nostra rete ad utilizzare il nostro server per spedire, altrimenti ...
Editiamo il file :
sudo nano /etc/shorewall/rules
e aggiungiamo le nuove regole:
POP3/ACCEPT loc $FW
IMAP/ACCEPT loc $FW
se vogliamo scaricare la posta anche quando siamo fuori dall'azienda dobbiamo anche abilitare l'accesso dall'esterno:
POP3/ACCEPT net $FW
IMAP/ACCEPT net $FW
La regola più importante
Stiamo filtrando tutta la posta per proteggere i nostri utenti da SPAM e Virus, ma anche per evitare di essere bannati dagli altri server di posta perchè non "virtuosi", nel senso che ok, respingiamo le mail che arrivano, ma dobbiamo anche evitare di spedire spazzatura.
Se gli utenti della nostra rete utilizzano il nostro server per spedire siamo a posto, Amavis fà già il suo lavoro, ma se un nostro utente buontempone (o un utente "esterno" nostro ospite) ha il suo bel account su GMail o su Yahoo o qualunque altro, e usa l'SMTP di questo Provider per spedire la posta ? Magari aggiungiamo che si è beccato un virus con il Notebook mentre navigava da casa che lo ha trasformato in un zombie alla mercè degli Spammers e abbiamo fatto la frittata: appena accende il computer collegato alla nostra rete aziendale, ZAC! inizia a spedire tonnellate di SPAM attraverso il suo provider il quale cosa vedrà come mittente della montagna di spazzatura che stà arrivando ? MA NATURALMENTE IL NOSTRO INCOLPEVOLE SERVER che stà "nattando" la rete con un unico indirizzo IP. Risultato ? 10 minuti e siamo bannati. Garantito.
Come evitare questo disastro ? Con questa regola :
REDIRECT loc smtp tcp smtp - !85.85.85.85,192.168.40.10
Dove "85.85.85.85" è l'indirizzo IP inventato (voi mettete quello vero!) pubblico del nostro server. In questo modo chiunque cerchi di "passare" attraverso il nostro server (ad eccezione di chi ci punta correttamente) utilizzando il protocollo SMTP della posta viene "girato" localmente sul server. Il nostro server filtra così il messaggio e, se passa i nostri canonici controlli, viene spedito da lui stesso. Non facciamoci scavalcare ! :D
Bene. Ora non ci resta che riavviare il firewall:
sudo shorewall restart
Avvio del servizio
Ebbene sì, abbiamo già concluso, non ci resta che avviare il servizio:
sudo /etc/rc.d/dovecot start
e metterlo nel nostro array DAEMONS in /etc/rc.conf per un avvio automatico:
DAEMONS=(... ... ... ... ... dovecot ... ... ...)
Conclusioni
Abbiamo (anzi, ho) penato un po' per questa parte Mail Server, ma alla fine il risultato è ottimo. Certo, sarebbe auspicabile semplificare un pochino magari accorpando qualche funzionalità (specie il content filter) direttamente su Postfix dal momento che oramai praticamente tutti i server di posta fitrano i messaggi.
Chissà magari un giorno qualcuno ci pensa, nel frattempo sorbiamoci stò mattone.
Per la verità qualcosa esiste, e sono sicuramente il futuro in questo campo. Mi riferisco alle soluzioni di groupware che sempre più spesso vengono richieste, le quali permettono una reale collaborazione tra persone magari condividendo le cose più semplici come PIM e posta elettronica.
Magari daremo un occhio a Zimbra, ma questa è un altra storia ...
Adesso mi prendo una pausa.
