Devant la croissance exponentielle
des spams (messages electronique non sollicités), il devient
indispensable de disposer d'outils de filtrage permettant de trier,
voire d'éliminer automatiquement ces messages. Tous les serveurs
de messagerie à l'Observatoire Astronomique et au CDS sont des
systèmes Unix, et j'ai donc mis en place des outils sur ces
serveurs, pour l'instant Cluster et Newb6, mais à
généraliser sur les autres serveurs si les
résultats sont probants.
Un service demon 'spamd' tourne en permanence; à chaque lecture
d'un mail par un utilisateur ayant sa boite aux lettres localement sur
cette machine, un programme client 'spamc' démarre et analyse le
message. Il faut bien noter que ce traitement ne sera
appliqué qu'aux utilisateurs lisant leurs messages sur le serveur
Unix.
Principe
de fonctionnement de spamassassin
En pratique, deux fichiers sont ou peuvent être présents
sur votre répertoire d'accueil:
- ~/.procmailrc qu'il vous
faudra créer ou modifier pour faire le tri de vos messages
réputés être des spams.
Cette ancre vous donnera des exemples de filtrage :
Procmail
un outil de création de règles de filtrage.
- ~/spamassassin/user_prefs qui vous
permettra d'adapter les paramètres de spamassassin à votre
cas particulier.
Les valeurs par défaut affectées par
spamassasin en l'absence de fichiers de configuration personnel sont les
suivantes:
Tout message affecté d'un score supérieur à
5 est considéré comme spam. Dans ce cas, la variable
X-Spam-Status est positionnée à yes et la variable
X-Spam-Level sera composée d'un nombre d'étoiles
équivalent au score atteint par le message.
Dans un premier temps, vous pouvez laisser les valeurs par
défaut en ne créant pas de fichier
~/spamassassin/user_prefs, mais en créant le fichier .procmailrc
suivant:
*^X-Spam-Level: \*\*\*\*\*\*\*\*\*\*
/home/user/spams-certains
Ce fichier stockera tous les messages ayant un score égal ou
supérieur à 10 (les 10 * de la variable X-SPam-Level
correspondent à un score de 10) dans le fichier
/home/users/spams-certains. (Ce nom de fichier est bien
évidemment à adapter à votre cas)
Ceci vous garantira que tout message ayant un score supérieur
à 10 (la probabilité pour un tel message d'être un
spam est très grande) sera automatiquement stocké dans un
fichier à part sans être obligé de l'ouvrir et sans
le détruire pour autant. Je vous encourage cependant à
purger ce fichier régulièrement.
Tous les messages ayant un score entre 5 et 10 arriveront en
pièce jointe. Si ce sont des spams, jetez les; Si ce ne sont pas
des spams ( on appelle celà des faux-positifs; des messages
peuvent être taggés spams sans en être), sauvegardez
les dans un fichier et appliquez leur la commande:
sa-learn --ham --file 'nom_du_fichier'
Ce programme sa-learn permet au système de faire de
l'auto-apprentissage sur ce qui est spam ou non grâce à
l'utilisation de règles Bayesiennes sur les messages. La
reconnaissance de vos messages s'affinera de mieux en mieux au cours du
temps.
Quelques liens utiles:
http://www.spamassassin.org
http://www.procmail.org