[Linuxtrent] Postfix + Spamassassin + Dovecot + Sieve

  • From: Daniele Nicolodi <daniele@xxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Mon, 17 Oct 2011 16:09:07 +0200

Ciao Linuxtrent!

In occasione della migrazione del server di posta per il mio dominio da
una macchina fisica ad una macchina virtuale su linode.com (servizio da
consigliare) ho deciso di rivedere la configurazione che utilizzavo per
modernizzarla un po'. Sono molto contento del risultato, quindi ve la
propongo per avere un piccolo scambio di vedute sulla medesima.

Dato i pochi indirizzi di posta coinvolti, utilizzo utenti reali del
sistema per il delivery. Fino ad oggi ho utilizzato una configurazione
"liscia" con postfix come server SMTP e dovecot come server IMAP,
eseguendo i filtri sul contenuto delle mail (principalmente
Spamassassin) e lo smistamento in cartelle dei messaggi "lato utente"
con procmail (in un primo tempo, poi ho sostituito a procmail uno
scriptino in python un po' più semplice da configurare). Non sono mai
stato contento della soluzione perchè il "lato utente" risulta
abbastanza fragile e/o inefficiente.

La nuova configurazione prevede invece:

- Spamassassin `spamd` some demone

- postfix SMTP per la ricezione con opportuni meccanismi ed RBL per
  evitare il grosso dello spam

- `spamc` chimato come delivery per i messaggi provenienti da remoto e
  configurato per reistradare in locale i messaggi filtrati.
  configurando adeguatamente le cose è possibile fare in modo che spamc
  sia chiamato dall'utente per il quale si sta facendo il delivery, in
  questo modo ogni utente ha il suo database per le regole bayesiane,
  che può addestrare a piacere [1]

- `dovecot-lda` per il delivery dei messaggi locali, quindi anche
  quelli reinstradati dopo il filtering di Spamassassin

- Sieve tramite l'apposito plugin per `dovecot-lda` per scartare i
  messaggi classificati come spam e per lo smistamento nei folder
  locali. molto carina l'estensione `spamfilterplus` a questo scopo

Funziona alla grande. Usando dovecot-lda per il delivery
l'indicizzazione delle cartelle imap avviene al momento del delivery (e
non a momento dell'accesso, come avveniva prima) e risulta efficiente
anche con folder imap molto grandi.

Sieve è un linguaggio non esattamente leggibile come il Python, ma per
scrivere poche semplici regole non è nemmeno troppo difficile da
comprendere.

[1] Unico problemino che non ho ancora risolto è che quando postfix fa
il delivery per un utente per cui è definito un alias (i tipici root,
postmaster, etc...) spamc viene eseguito specificando come utente il
nome dell'alias e non del destinatario finale. Idee su come risolvere
questo problema?

Ciao
-- 
Daniele
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: