Mise en oeuvre de SpamAssassin
[20 mn de lecture - paru le 10/4/2005 8:10:57 PM - Public : Débutant]
|
   
|
Auteur
3 Mise en oeuvre de l'anti-spam
3.1 Description de SpamAssassin
SpamAssassin est un outil anti-spam pouvant être utilisé en collaboration avec Postfix. Il attribue des "scores" à chaque message électronique reçu selon différents tests destinés à déterminer s’il s’agit ou non d’un spam. Pour cela, il effectue de nombreuses vérifications comme :
-
la validité des adresses de l’expéditeur et du destinataire,
-
la date des messages,
-
la présence dans le corps du message d’un mot répertorié sur une liste de mots interdits,
-
l'appartenance ou non d'un des serveurs expéditeurs à une liste noire,
-
etc.…
Chaque test positif augmente le score total d’un message. Quand le score final obtenu dépasse le seuil défini dans la configuration, le message est considéré comme étant un spam.
La base de donnée de SpamAssassin peut être mis à jour régulièrement grâce à la possibilité d’intégrer les outils Razor, Pyzor et DCC. SpamAssassin inclut également un algorithme de Bayes qui lui permet de reconnaître les nouveaux messages non sollicités à partir d’anciens spam.
Enfin, SpamAssassin peut être soit utilisé à la demande (appel de l’application chaque fois qu’un message est reçu), soit exécuté en tant que démon. Nous utiliserons, dans le cas de l’interaction avec Postfix, la configuration en mode démon.
3.2 Installation
Vérifiez que vous êtes logués en tant que root sur le serveur pour effectuer l’installation de Spamassassin. Vous devez exécuter les commandes suivantes dans le répertoire /usr/ports/mail/p5-Mail-Spamassassin :
-
Pour compiler, installer et nettoyer : #make install clean
-
Sinon, faire séparément :
-
#make
-
#make install
-
#make clean
L’installation a ajouté l’application spamc et le démon spamd dans le répertoire /usr/local/bin. Vous devez créer un utilisateur et un groupe « spamassassin » pour permettre l’interaction avec Postfix.
Pour lancer le démon spamd au démarrage, vous devez ajouter la ligne ci-dessous dans le fichier /etc/rc.conf :
Pour lancer manuellement le démon en mode « debug », tapez la commande suivante :
3.3 Configuration
Le fichier de configuration local.cf de SpamAssassin se trouvent dans le répertoire /usr/local/etc/mail/spamassassin.
Configuration de base :
Pour faire une configuration basique, vous devez, avant tout, connaître le contexte dans lequel SpamAssassin doit fonctionner. La principale question est de savoir si la tolérance aux spam est faible, moyenne ou élevée. Nous vous conseillons de paramétrer une tolérance moyenne (required_hits 7.0) dans un premier temps et de modifier ce choix si nécessaire.
Voici, ci-dessous, les paramètres que vous devez appliquer dans le fichier local.cf :
-
# combien de coups avant de considérer le message comme
-
spam required_hits 7.0
-
# encapsuler le spam dans un fichier attaché (O non,1 oui)
-
report_safe 0
-
# langues acceptées (fr : France)
-
Ok_languages fr
Pour faire une configuration évolutive, il vous suffit d’intégrer les outils Razor, Pyzor, DCC et l’algorithme de Bayes.
Configuration de Razor (intégré avec SpamAssassin) :
Vérifiez que vous êtes logués en tant que root sur le serveur pour effectuer la configuration de Razor. Exécutez les commandes ci-après pour mettre à jour la configuration de Razor :
-
#razor-client
-
#razor-admin -home=/usr/local/etc/mail/spamassassin/.razor -create
-
#razor-admin -home=/usr/local/etc/mail/spamassassin/.razor -discover
-
#razor-admin -home=/usr/local/etc/mail/spamassassin/.razor -register
Vérifiez dans le fichier de log /usr/local/etc/mail/spamassassin/.razor/razor-agent.log que l’exécution de chacune des commandes s’est correctement réalisée.
Dans le fichier de configuration de SpamAssassin local.cf, ajoutez les lignes suivantes :
-
# utiliser Razor ? oui=1 non=0
-
use_razor2 1
-
# chemin d’acces au fichier de configuration de razor
-
razor_config /usr/local/etc/mail/spamassassin/.razor/razor-agent.conf
A noter : Vérifiez que SpamAssassin a les droits nécessaires sur le répertoire .razor pour l’exécution des commandes. Si vous utilisez un firewall, ouvrez les ports 7 et 2703 en TCP afin que Razor puisse accéder à son serveur.
Ajout de Pyzor :
Vérifiez que vous êtes logués en tant que root sur le serveur pour effectuer l’installation de Pyzor. Vous devez exécuter les commandes suivantes dans le répertoire /usr/ports/mail/pyzor :
-
Pour compiler, installer et nettoyer : #make install clean
-
Sinon, faire séparément :
-
#make
-
#make install
-
#make clean
L’installation est effectuée.
Dans le fichier de configuration de Spamassassin local.cf, ajoutez les lignes suivantes :
-
# utiliser Pyzor ? oui=1 non=0
-
use_pyzor 1
-
# chemin d’acces au client pyzor
-
pyzor_path /usr/local/bin/pyzor
-
# modification de l’entete du mail par Pyzor? oui=1 non=0
-
pyzor_add_header 1
A noter : Pour valider le fonctionnement de Pyzor, exécutez SpamAssassin en mode « debug ». Si vous utilisez un firewall, ouvrez le port 24441 en TCP et UDP afin que Pyzor puisse accéder à son serveur.
Ajout de DCC :
Vérifiez que vous êtes logués en tant que root sur le serveur pour effectuer l’installation de DCC. Vous devez exécuter les commandes suivantes dans le répertoire /usr/ports/mail/dcc-dccd :
-
Pour compiler, installer et nettoyer : #make install clean
-
Sinon, faire séparément :
-
#make
-
#make install
-
#make clean
L’installation est effectuée. Dans le fichier de configuration de Spamassassin local.cf, ajoutez les lignes suivantes :
-
# utiliser DCC ? oui=1 non=0
-
use_dcc 1
-
# chemin d’acces au client DCC
-
dcc_path /usr/local/bin/dccproc
-
# modification de l’entete du mail par DCC? oui=1 non=0
-
dcc_add_header 1
A noter : Pour valider le fonctionnement de Pyzor, exécutez SpamAssassin en mode « debug ». Si vous utilisez un firewall, ouvrez le port locale 1023 et le port distant 6277 en UDP afin que DCC puisse accéder à son serveur.
Ajout de Bayes :
Dans le fichier de configuration de Spamassassin local.cf, ajoutez les lignes suivantes :
Vous devez vous procurer un fichier contenant des spam afin d’initialiser Bayes. Pour cela, procurez vous des mails de spam et générez un fichier contenant tout ces mails. Il est conseillé d’utiliser le programme MailTest.exe et d’envoyer la liste des mails à l’adresse IP du serveur Postfix à l’utilisateur root, le fichier concaténé de spam sera alors le fichier /var/mail/root.
Une fois le fichier obtenu, lancez la commande :
Vous pouvez également exécuter la commande ci-dessous si vous avez un fichier de « non-spam » type :
Le tout est maintenant installé, il vous reste à faire les tests.
|