Le spam est un fléau bien connu de tous les internautes.
Un serveur de mail sans anti-spam ne sert pas à grand chose.
Les mails sont gérés par postfix et ce dernier les délivre à procmail.
C’est procmail qui va, en tout premier lieu, faire appel à l’antispam.
Voir l’article procmail
La configuration de spamassassion n’est pas compliquée à la base (fichier local.cf) :
rewrite_header Subject *****SPAM *****
# report_safe 1
# trusted_networks
# lock_method flock
add_header all Level _STARS(X)_
required_hits 5
lang fr
ok_locales en fr
ok_languages en fr
report_safe 1
use_bayes 1
bayes_auto_learn 1
use_razor2 1
use_dcc 1
use_pyzor 1
score BAYES_60 2
score BAYES_70 3
score BAYES_80 4
score BAYES_90 5
score BAYES_99 6
Rien de bien compliqué dans ce fichier. Dès qu’un mail arrive, il est noté selon différents critères (langue, mots clés, base de données…). Si cette note dépasse 5, le mail est tagué SPAM dans les entêtes et filtré comme tel par procmail. Il faut absolument installer les bases pyzor, dcc et razor2. Elles utilisent des bases de données disponibles sur internet où sont référencées certaines classes IP.
La chose la plus intéressante est l’apprentissage bayésien de Spam Assassin. C’est vous qui allez dire � Spam Assassin que tel mail est du spam, que tel autre est sain. Cela va lui constituer une base de données, avec les mots contenus dans les mails. Ce sont les boutons “déclarer comme spam” que vous avez souvent sur les webmail des FAI. Plus le FAI est gros, plus d’internautes utilisent les fameux boutons et plus l’antispam est efficace.
Ce que je vous conseille est de faire la chose suivante. Au lieu de supprimer tous vos SPAM, vous les déplacer dans un dossier SPAM et vous définissez, dans la crontab du / des utilisateur(s) qui reçoivent les mails, les lignes suivantes :
sa-learn –spam ~/Maildir/.SPAM/{cur,new}
sa-learn –ham ~/Maildir/{cur,new}
rm -f ~/Maildir/.SPAM/cur/*
- La première ligne dit à Spam Assassin d’apprendre tous les mails qui sont dans SPAM comme étant des SPAM
- La suivante lui dit que les mails laissés dans la boite de réception sont sains
- Enfin, on supprime les SPAM !
SpamAssassin comprend aussi une base de données de règles présente dans /var/lib/spamassassin.
Pour la mettre à jour, il faut utiliser la commande sa-update -D
Ceci permet de garantir une meilleure protection.
Remarques :
Razor et Pyzor sont des bases de données SPAM.
Pour les installer :
aptitude install razor pyzor
L’installation de razor se fait sans aucun paramétrage spécifique, si ce n’est l’appel déjà configuré dans spamassassin
Pour pyzor, il faut faire :
pyzor discover –hom-dir=/path
chmod 666 /path/*
Dans le local.cf de spamassin, rajoutez :
pyzor_options –homedir /etc/mail/spamassassin
Le but est ici d’avoir une base de données globale pour tous les utilisateurs et de ne pas créer cette base de serveurs à chaque fois
Enfin, voici une commande pour tester le bon fonctionnement de tout ce bon monde :
spamassassin -t -D < /usr/share/doc/spamassassin/examples/sample-spam.txt
Vous devriez y voir un RAZOR2_CHECK et PYZOR_CHECK