Skip to main content Help Control Panel

Tutoriaux dédiés à l'application VHCS 2 «  

TUTORIAL VHCS 2 - Le Trio Amavisd - Spamassassin - Clamav

Posted by M. declercq on Mar. 10 2007, page edited by M. declercq on Mar. 22, (popular)  
Tags: vhcs amavis spamassassin clamav

Installation d'une solution antispam et antivirus sur les distributions Debian Sarge exploitant l'application open-source VHCS.

Avant Propos

Le trio Amavisd, Spamassassin et Clamav est une solution de protection Anti-Spams et Anti-Virale très performante lorsque celle-ci est installée et configurée correctement...

Cette solution permet une detection immédiates des pourriels ( Spams ) en se basant sur une base de données constamment mis à jour et permet d'écarter les virus en les déplaçant automatiquement (mise en quarantaine) dans un dossier approprié.

Malheureusement, bien que sur la toile, on trouve divers tutoriaux pour mettre en oeuvre cette solution, il apparaît que plusieurs personnes ( la majorité des débutants ) n'arrivent pas à la faire fonctionner. Or celle-ci est indispensable pour un Serveur de messagerie en production. Dans ce tutorial, nous allons donc évoquer l'installation et la configuration de cette solution, ce qui, nous l'esperons, permettra aux débutants de profiter d'une protection Anti-Spam et Anti-virale fonctionnelle et surtout fiable.

Note concernant la mise en oeuvre de ce tutorial

Nous vous rappelons que toutes les commandes évoquées dans ce tutorial doivent être exécutées avec les privilèges de l'utilisateur root. Pour la mise en oeuvre de ce tutorial, nous avons utilisé la distribution Debian Sarge 3.1. Il s'agit de la distribution que notre équipe a retenu en prodution dans la mesure où, bien qu'elle ne bénéficie pas des logiciels les plus récents, ces derniers sont réputés pour leur stabilité.

Note : Il s'agit là d'un tutorial traitant du minimum nécessaire pour mettre en place une solution de protection Anti-Spam et Anti-virus.

I. Présentation rapide des logiciels

Nous allons commencer ce tutorial en vous faisant une petite présentation des logiciels qui vont être installés afin que vous sachiez précisément à quoi ils correspondent.

Spamassassin

Spamassassin est un logiciel Antispams entièrement écrit en Perl. Contrairement à ce que beaucoup d'utilisateurs pensent, il ne s'agit aucunement d'un filtre de messages comme procmail puisque contrairement à ce dernier il ne change pas la destination des messages.

Ce logiciel ne fait qu'ajouter des en-têtes à un message, et éventuellement l'encapsule pour indiquer s'il est ou non un spam.

Amavis

Amavis ( A Mail Virus Scanner ) est une interface entre le MTA (Postfix) et les analyseurs de contenus ( Spamassassin, Clamav ). Ceux-ci scannent les messages pour y detecter d'éventuels virus où pour vérifier s'ils constituent des spams.

Amavis intercepte les messages et traite leurs différentes parties (sépare les pièces jointes, les décompresse, etc...). Ensuite, les différentes parties des messages sont scannées par l'antivirus ( ClamAv ) et l'antispams ( Spamassassin ).

Si aucun virus n'est trouvé, Amavis reforme le message puis le renvoie au MTA (Postfix) pour qu'il soit livré. Dans le cas contraire, les virus sont redirigés dans un répertoire approprié.

Pour ce qui concerne les spams, le procédé et pratiquement le même. En effet, selon les règles employées, le message pourra être livré dans la boîte au lettre du destinataire avec des en-têtes modifiés ou directement bloqué (éliminé).

Note : Il existe plusieurs version d'Amavis mais seule la version amavisd-new implémente de nouvelles fonctions permettant de supporter Spamassassin et Clamav.

Clamav

Clamav est un logiciel d'analyse antivirale. Sa principale caractéristique en tant qu'antivirus, et qu'il s'intègre aux Serveur de messagerie ( MTA Postfix ) pour analyser les pièces jointes en vue d'y detecter d'éventuels virus. Comme pour Spamassassin, Clamav a besoin d'une interface permettant de le lier au MTA (Postfix). Encore une fois, ce sera Amavis qui sera employé.
Maximilien COTE on Mar. 14 2007
Attention!

Le fichier de configuration du package amavis-new pour Ubuntu est différent, ne copiez pas le fichier configuration donné dans l'archive si vous ne voulez pas planter votre serveur!!
Shat on Mar. 14 2007
Maximilien COTE : Le fichier de configuration du package amavis-new pour Ubuntu est différent

Merci de l'info Maximilien, mais ou trouver le bon fichier de conf ?

Shat
M. declercq on Mar. 14 2007
Bonjour ;

Effectivement, sur ubuntu, il faut procéder différement car la version d'amavisd est beaucoup plus récente que celle fourni par Debian Sarge.

J'aurais du le préciser. En fait, pour ubuntu, il faut patcher le fichier d'origine.

Je vais rédiger un complément pour ubuntu dans la semaine et aussi apporter quelques amélioration à l'ensemble du tutorial.

Bonne continuation sur notre portail.
Maximilien COTE on Mar. 15 2007
Shat,

Les fichiers de configuration sont situés dans le dossiers /etc/amavis/conf.d/

Il faut éditer les fichiers suivants :

15-content_filter_mode

et décommentez les lignes :

# @bypass_virus_checks_maps = (

ainsi que la ligne juste en dessous;

De même, décommentez :

# @bypass_spam_checks_maps = (

et de nouveau celle du dessous.

Ensuite, il faut éditer le fichier :

20-debian_defaults

et mettre pour la variable $QUARANTINEDIR :

$QUARANTINEDIR = "/var/mail/virus";

Le reste m'a semblé correct au niveau des fichiers de configuration fournis par défaut.

Le tutorial fonctionne bien sur une machine Ubuntu 6.10 Edgy donc, à cette seule expression près!

Merci pour le tutorial M. Declercq, vous êtes une des rares personnes à faire bouger le communauté dans ce sens!!
Kommius on Mar. 26 2007
Malgré ce que j'ai précisé ci-dessus, le tutorial n'est pas appliquable à Ubuntu 6.10, il y a des erreurs qui empêche le bon fonctionnement de postfix!
M. declercq on Apr. 18 2007
Bonjour ;

ce qui serait meirveilleux, ce que vous nous indiquiez de quelles erreur il s'agit exactement

Merci.
Kommius on May 18 2007
Voici les changements que j'ai du appliqué pour le tutoriel sous Ubuntu 6.10 Edgy :

1°) Les paquets lha et unrar sont soient obsolètes, soient ils n'existent plus. Je les ai donc enlevé de la liste du apt-get install.

2°) Comme il est signalé dans le tutorial, les paquets d'aamavis ne sont pas les mêmes.

Voici donc les deux fichiers de configuration à récupérer et à placer dans /etc/amavisd/conf.d/, basés sur celui disponible sur le tutoriel ici-même :

15-content_filter_mode
20-debian_defaults

3°) Il y a un bug dans le fichier de configuration du daemon Freshclam (qui récupère les dernières signatures anti-virus à partir d'un mirroir de ClamAV)

Ouvrir le fichier : /etc/clamav/freshclam.conf et modifier la ligne NotifyClamd comme ci-dessous :

" NotifyClamd /etc/clamav/clamd.conf "


et rédémarrez le daemon :

" /etc/init.d/clamav-freshclam restart "


4°) En ce qui concerne l'édition du fichier /etc/postfix/main.cf :

" content_filter = smtp-amavis:[127.0.0.1]:10024 "
devient :

" content_filter = amavis:[127.0.0.1]:10024 "


et
" smtp-amavis unix - - n - 2 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes "


doit être :

" amavis unix - - n - 2 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes "


5°) En ce qui concerne la configuration de Razor, il n'est pas nécessaire d'éxecuter la commande :

" razor-client "

Liquid_Obsidian on Jul. 11 2007
Pour ceux qui comme moi ont eut a subir un désagréable :

postfix/smtp[9567]: 49DCB708AC3: to=, relay=127.0.0.1[127.0.0.1]:10024, delay=4.5, delays=0.02/0.01/0/4.5, dsn=4.4.1, status=deferred (host 127.0.0.1[127.0.0.1] said: 450 4.4.1 Can't connect to 127.0.0.1 port 10025, (Mauvais descripteur de fichier) at (eval 42) line 145, line 78., MTA([127.0.0.1]:10025), id=07827-03 (in reply to end of DATA command))

ca viens en fait de

warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms fatal: no SASL authentication mechanisms warning: process /usr/lib/postfix/smtpd pid 9573 exit status 1 warning: /usr/lib/postfix/smtpd: bad command startup -- throttling

...

petit probléme réglé chez moi par

apt-get install libsasl2-2 libsasl2-modules libauthen-sasl-cyrus-perl

...aprés comme une lettre a la post...fix :p

d'ailleur merci pour ce tuto de bonne qualité
Sofrecom on Aug. 21 2007
Bonjour !

A quand un tutorial pour la version Ubuntu ?

Cordialement,
Guy on Oct. 8 2007
çava ce tuto merci bcp!

Yacs skin by Laurent DECLERCQ - 2006-2008 - All right reserved