Filtraggio dello spam con Spamassassin


Tratto da Wikipedia (http://it.wikipedia.org/wiki/Spam)

Il termine trae origine da uno sketch comico del Monty Python’s Flying Circus ambientato in un locale nel quale ogni pietanza proposta dalla cameriera era a base di Spam (un tipo di carne in scatola). Man mano che lo sketch avanza, l’insistenza della cameriera nel proporre piatti con “spam” (“uova e spam, uova pancetta e spam, salsicce e spam” e così via) si contrappone alla riluttanza del cliente per questo alimento, il tutto in un crescendo di un coro inneggiante allo “spam” da parte di alcuni Vichinghi seduti nel locale.

I Monty Python prendono in giro la carne in scatola Spam per l’assidua pubblicità che la marca era solita condurre, in un certo periodo la Spam era ovunque, da qui lo sketch dei Monty’s e successivamente l’adattamento informatico alla pubblicità non desiderata.

Si ritiene che il primo spam via email della storia sia stato inviato il 1 maggio 1978 dalla DEC per pubblicizzare un nuovo prodotto, e inviato a tutti i destinatari ARPAnet della costa ovest degli Stati Uniti.

Nella terminologia informatica le spam possono essere designate anche con il sintagma di junk-mail, che letteralmente significa posta-spazzatura, a rimarcare la sgradevolezza prodotta da tale molestia digitale.

Il principale scopo dello spamming è la pubblicità, il cui oggetto può andare dalle più comuni offerte commerciali a proposte di vendita di materiale pornografico o illegale, come software pirata e farmaci senza prescrizione medica, da discutibili progetti finanziari a veri e propri tentativi di truffa. Uno spammer, cioè l’individuo autore dei messaggi spam, invia messaggi identici (o con qualche personalizzazione) a migliaia di indirizzi e-mail. Questi indirizzi sono spesso raccolti in maniera automatica dalla rete (articoli di Usenet, pagine web) mediante spambot ed appositi programmi, ottenuti da database o semplicemente indovinati usando liste di nomi comuni.

Per definizione lo spam viene inviato senza il permesso del destinatario ed è un comportamento ampiamente considerato inaccettabile dagli Internet Service Provider (ISP) e dalla maggior parte degli utenti di Internet. Mentre questi ultimi trovano lo spam fastidioso e con contenuti spesso offensivi, gli ISP vi si oppongono anche per i costi del traffico generato dall’invio indiscriminato.

I termini unsolicited commercial email, UCE (email commerciale non richiesta) e unsolicited bulk email, UBE (email non richiesta in grandi quantità) sono usati per definire più precisamente e in modo meno gergale i messaggi e-mail di spam. Molti utenti considerano tutti i messaggi UBE come spam, senza distinguere il loro contenuto, ma i maggiori sforzi legali contro lo spam sono effettuati per prendere di mira i messaggi UCE. Una piccola ma evidente porzione di messaggi non richiesti è anche di carattere non commerciale; alcuni esempi comprendono i messaggi di propaganda politica e le catene di Sant’Antonio.

Di seguito vengono proposti dei file di configurazione per Spamassassin che permettono la gestione dello spam …

—————————————————————————————————————–

/etc/procmailrc (configurazione valida per antispam a livello server)

# La prima regola passa la posta a SpamAssassin
# Utilizziamo la variabile $SPAMASSASSIN, definita in .procmailrc
# (se si utilizza la combinazione spamc/spamd, va lanciato spamc)
#
# La condizione assicura che siano processati da SpamAssassin solo
# file di dimensioni inferiori a 250 kB (250 * 1024 = 256000 bytes).
# La maggior parte dello spam e’ infatti di dimensioni intorno ai pochi
# k e anche cosi’ si limitano le elaborazioni a carico di SpamAssassin.
#
# Il lock file assicura che venga eseguita una sola istanza di
# SpamAssassin alla volta.
#
:0fw: spamassassin.lock
* < 256000
#| $SPAMASSASSIN
| /usr/bin/spamassassin

# I messaggi arrivati fin qui e che presentano la taggatura come spam
# operata da SpamAssassin perche’ con score superiore al livello soglia
# vengono dirottati sulla mailbox spam.
# [La variabile di configurazione di SpamAssassin, responsabile della
# definizione del livello soglia, èequired_score]

:0:
* ^X-Spam-Status: Yes
$HOME/mail/spam
# Ovvero /home/user/mail/spam
# Occorre creare prima il file di spam con i comandi:
#
# Entrare come utente …
# cd /home/user/mail
# touch spam
# chmod 755 spam

# Tutto quello che ha negli header “X-Spam-Flag: YES”
# viene reindirizzato in /home/user/mail/spam
:0H
* ^X-Spam-Flag: YES
$HOME/mail/spam

# Tutto quello che ha nell’oggetto della mail “*****SPAM*****”
# viene reindirizzato in /home/user/mail/spam
:0
* ^Subject:.*****SPAM*****
$HOME/mail/spam
# Per cestinare le mail di spam cambiare il “$HOME/mail/spam” in “/dev/null”

/home/nome_utente/.procmailrc (configurazione valida per antispam a livello utente)
vale la stessa configurazione di sopra con in aggiunta:

# Varie
SHELL=/bin/sh
LINEBUF=8192
DUMMY=`test -f $HOME/mail/spam || touch $HOME/mail/spam`

In caso di configurazione dell’antispam a livello utente non occorre inserire il file procmailrc in /etc.
Altresì risulta “conveniente” inserire il file .procmailrc in /etc/skel in modo che ad ogni aggiunta di nuovo utente al sistema viene automaticamente creato .procmailrc nella /home/nome_utente.

—————————————————————————————————————–

/etc/mail/spamassassin/local.cf

required_hits 5
report_safe 0
rewrite_header Subject *****SPAM*****

# Enable the Bayes system
use_bayes 1
use_bayes_rules 1

# Enable Bayes auto-learning
bayes_auto_learn 1
bayes_auto_learn_threshold_nonspam 1.0
bayes_auto_learn_threshold_spam 8
bayes_min_ham_num 50
bayes_min_spam_num 50

# Enable or disable network checks
skip_rbl_checks 1
use_razor2 1
use_pyzor 1

use_auto_whitelist 1
auto_whitelist_factor 0.5

use_auto_whitelist 1
auto_whitelist_factor 0.5

whitelist_from *@iberia.*
whitelist_from *@meridiana.*
whitelist_from *@alitalia.*
whitelist_from *@volareweb.*
whitelist_from nome.utente@nomeazienda.com
whitelist_from_rcvd *@nomeazienda.com mail.nomeazienda.com

—————————————————————————————————————–

Per l’apprendimento dello spam da parte di Spamassassin:

Mail “buone”: /usr/bin/sa-learn –mbox –showdots –ham /var/spool/mail/
Mail “cattive”: /usr/bin/sa-learn –mbox –showdots –spam /home/*/mail/spam

In crontab …

# Alle 23 “apprende” le mail “cattive”
0 23 * * * /usr/bin/sa-learn –mbox –showdots –spam /home/*/mail/spam
# Alle 4 “apprende” le mail “buone”
0 4 * * * /usr/bin/sa-learn –mbox –showdots –ham /var/spool/mail/

Annunci

Installazione DCC (antispam) su CentOS


Scaricare DCC: wget http://www.rhyolite.com/dcc/source/dcc.tar.Z
Scompattare il file: tar -zxvf dcc.tar.Z
Entrare nella directory: cd dcc-1.3.105/
Compilare DCC con i comandi:

./configure
make
make install

Editare il file di configurazione di DCC: vi /var/dcc/dcc_conf
Modificare il valore:

da –> DCCD_ENABLE=off
a   –> DCCD_ENABLE=on

e

da –> DCCIFD_ENABLE=off
a   –> DCCIFD_ENABLE=on

Successivamente configurare SpamAssassin in modo tale che utilizzi DCC.
Editare il file v310_pre di SpamAssassin: vi /etc/mail/spamassassin/v310.pre …
e “scommentare” (eliminare il “#”) dalla riga contenente: loadplugin Mail::SpamAssassin::Plugin::DCC

da:
# DCC – perform DCC message checks.
#
# DCC is disabled here because it is not open source.  See the DCC
# license for more details.
#
#loadplugin Mail::SpamAssassin::Plugin::DCC

a:
# DCC – perform DCC message checks.
#
# DCC is disabled here because it is not open source.  See the DCC
# license for more details.
#
loadplugin Mail::SpamAssassin::Plugin::DCC

Editare il file local.cf di SpamAssassin con il comando: vi /etc/mail/spamassassin/local.cf
ed inserire le seguenti informazioni:

use_dcc 1
# lancia DCC ogni volta che riceve una mail
#dcc_path /usr/local/bin/dccproc
# lancia DCC come demone
dccifd_path /var/dcc/libexec/dccifd
dcc_home /var/dcc
dcc_options -Rw whiteclnt
add_header all DCC _DCCB_: _DCCR_

Per fare partire DCC come demone digitare il comand: /var/dcc/libexec/start-dccifd
(Inserire il comando in /etc/rc.local se si desidera – ed è sicuramente opportuno – fare partire il demone DCC all’avvio del server)

Riferimenti bibliografici:
Uso di DCC client come plugin di SpamAssassin: http://www.garr.it/WG/sec-mail/documenti/DCC-Client-v11.pdf