9 feb 2009

spam e spamassassin: come combatterlo e renderlo utile

Se si utilizzano software antispam che si basano anche su filtri bayesiani
come ad esempio spamassassin è necessario che questo sia "istruito", per avere da subito un buon funzionamento dei filtri.

Per poterlo fare si devono avere una serie di mail "buone" ed una serie di mail "cattive": per le prime basta utilizzare la propria inbox, mentre per le mail di spam si può trovare online diversi archivi tra cui http://untroubled.org/spam/

Consiglio di creare una cartella sotto /tmp e scompattare qui i file scaricati. Attenzione che gli archivi possono contenere diverse decine di migliaia di file.
Per poterli manipolare è utile questa lettura http://www.linuxjournal.com/article/6060
Ora istruiamo correttamente spamassassin indicando che queste mail sono "cattive"
$ sa-learn --spam --showdots /tmp/spam/*
Invece spostiamoci ad esempio nella inbox della nostra mail (la cartella può variare)
$ sa-learn --ham --showdots ~/Mail/Inbox/*
Se si utilizza la posta nel formato mailbox aggiungere l'opzione -mbox
$ sa-learn --ham --mbox --showdots ~/Mail/Inbox.mbx

Ora veniamo al lato oscuro.
L'archivio di spam che abbiamo potrebbe essere utilizzato per fare qualche scherzo carino, ad esempio spedendolo all'account di posta del nostro rivale d'amore.
Per fare questo
$ cd /tmp/spam
$ for i in `ls`; do cat $i|formail -s /usr/sbin/sendmail -f mittente@dominio.com caro_nemico@yahoo.it; done
Per ogni file presente nella cartella in cui siamo, viene generata una mail inviata a caro_nemico@yahoo.it
L'opzione -f di sendmail indica il mittente; ho notato che non sempre viene utilizzato quello indicato ma, nel caso nel file di spam che stiamo usando è già presente un header, viene utilizzato quest'ultimo.

Nessun commento: