QMail – SpamAssassin (CentOS 7)
Utilizzeremo spamassassin per filtrare le mail in transito in cerca di spam; il prodotto che utilizziamo è spamassassin.
SpamAssassin
Spamassassin è un progetto opensource della Apache Software Foundation, il più completo prodotto per combattere lo spam. Innanzi tutto installiamo il prodotto:
# yum -y install spamassassin # systemctl enable spamassassin # mkdir /var/log/spamd
Modifichiamo il file /etc/sysconfig/spamassassin:
SPAMDOPTIONS="-u simscan -d -m20 -x -s /var/log/spamd/spamd"
Modifichiamo il file di configurazione /etc/mail/spamassassin/local.cf:
required_hits 4.5 report_safe 1 rewrite_header Subject ===== SPAM (_SCORE_) ===== ok_locales it #whitelist_from dave@anthesia.lan #whitelist_to dave@anthesia.lan #blacklist_from dave@anthesia.lan #blacklist_to dave@anthesia.lan
Modifichiamo il crontab (crontab -e) per aggiornare le regole di spamassassin una volta al giorno:
# AGGIORNAMENTO REGOLE SPAMASSASSIN 45 1 * * * /usr/bin/sa-update 2>&1 > /dev/null
A questo punto possiamo aggiornare manualmente la prima volta le regole ed avviare il servizio:
# sa-update # systemctl start spamassassin
Spamassassin – filtri bayesiani
Spamassassin può migliorare notevolmente l’analisi delle mail in transito basandosi sui messaggi che ha analizzato; chiaramente, più sono le mail che spamassassin gestisce, maggiore sarà la precisione di controllo del filtro ossia la percentuale di mail marcate come spam.
Per usare i filtri bayesiani dobbiamo creare una database che spamassassin interrogherà per controllare la presenza di spam; è possibile utilizzare un database già esistente o aspettare che con il tempo il nostro sistema cominci a autogenerarsi il proprio.
Modifichiamo il file /etc/mail/spamassassin/local.cf aggiungendo le seguenti direttive relative ai filtri bayesiani al file creato precedentemente:
use_bayes_rules 1 bayes_path /var/spamassassin/bayes_db/bayes bayes_file_mode 0777 bayes_auto_learn 1 bayes_learn_during_report 1 bayes_auto_learn_threshold_nonspam 0.1 bayes_auto_learn_threshold_spam 6
e avviamo nuovamente il servizio
# mkdir -p /var/spamassassin/bayes_db # touch /var/spamassassin/bayes_db/bayes # touch /var/spamassassin/bayes_db/bayes_seen # touch /var/spamassassin/bayes_db/bayes_toks # chown -R simscan.simscan /var/spamassassin # chmod 0666 /var/spamassassin/bayes_db/* # systemctl restart spamassassin
L’utilizzo di un buon database iniziale combinata con il traffico del proprio mail server sia un’ottima combinazione. Un buon database di partenza è fornito da Michele Marcucci nella suo blog; da questo blog possiamo scaricare il database bayesiano di partenza. ATTENZIONE: questa procedura cancellerà il database esistente, per cui non procedete se avete un database bayesiano già alimentato; il processo di import del database durerà parecchi minuti.
# systemctl stop spamassassin # su - simscan $ wget http://www.michelem.org/wp-content/spamassassin-bayes-db.tar.bz2 $ tar xvfj spamassassin-bayes-db.tar.bz2 --strip=4 $ sa-learn --restore spamassassin-bayes-db $ exit
SpamAssassin – Razor
Per completare le funzionalità di SpamAssassin, installiamo e configuriamo anche le Vipul’s Razor, librerie che permettono di usare una rete distribuita e collaborativa per il rilevamento ed il filtraggio di spam.
# cd /usr/src # wget http://prdownloads.sourceforge.net/razor/razor-agents-sdk/2.07/razor-agents-sdk-2.07.tar.bz2 # tar xvfj razor-agents-sdk-2.07.tar.bz2 # cd razor-agents-sdk-2.07 # perl Makefile.PL # make # make install # cd .. # wget http://prdownloads.sourceforge.net/razor/razor-agents/2.84/razor-agents-2.84.tar.bz2 # tar xvfj razor-agents-2.84.tar.bz2 # cd razor-agents-2.84 # perl Makefile.PL # make # make install
Una volta installate le librerie, inizializziamo razor:
# su - simscan $ razor-admin -home=/var/spool/simscan/.razor -create $ razor-admin -home=/var/spool/simscan/.razor -discover $ razor-admin -home=/var/spool/simscan/.razor -register $ exit
Riavviamo SpamAssassin e avremo anche le Vipul’s Razor installate e funzionanti.
# systemctl restart spamassassin
← QMail – ClamAV (CentOS 7) QMail – Test ClamAV & Spamassassin (CentOS 7) →