Serveur Ubuntu · 6 min read · Sep 27, 2025

Le SpamSnake Parfait - Ubuntu Jaunty Jackalope

Le SpamSnake Parfait - Ubuntu Jaunty Jackalope

Auteur : Mohammed Alli

Postfix w/Filtrage Bayesian et Anti-Backscatter (Destinataires de relais), Apache, Mysql, Dnsmasq, MailScanner (Spamassassin, ClamAV, Pyzor, Razor, DCC-Client), MailWatch, Vérifications SPF, FuzzyOcr, Signatures Sanesecurity PDF/XLS/Phishing, Postfix-GLD (Greylisting Optionnel), Rapport Statistique Logwatch (Optionnel), Avertissement Sortant avec alterMIME (Optionnel), FireHOL (Pare-feu Iptables)

Version 2.5

Ce tutoriel montre comment configurer un serveur basé sur Ubuntu Jaunty Jackalope comme un filtre anti-spam en mode passerelle. À la fin, vous aurez une passerelle SpamSnake qui relayera des e-mails propres à votre MTA. Vous pourrez également visualiser votre file d’attente entrante, entraîner votre SpamSnake et effectuer quelques opérations plus avancées via MailWatch.

Je ne peux offrir aucune garantie que cela fonctionnera pour vous, de la même manière que cela fonctionne pour moi.

J’utiliserai les logiciels suivants :

  • Serveur Web : Apache 2 avec PHP 5
  • Serveur de Base de Données : MySQL 5.0
  • Serveur de Mail : Postfix
  • Serveur DNS de Cache : Dnsmasq
  • MailScanner : MailScanner v4.76
  • MailWatch : MailWatch v1.0.4

Les crédits vont aux gars de HowtoForge et aux développeurs de MailScanner, MailWatch, ClamAV, Apache, Mysql et Postfix.

Installer le système de base en utilisant l’option minimale.

1. Obtenir des privilèges root

Activez la connexion root en exécutant ce qui suit et en donnant un mot de passe à root. Vous pouvez ensuite vous connecter directement en tant que root :

sudo passwd root

2. Installer vim-nox (Optionnel)

J’utiliserai vi comme éditeur de texte dans ce tutoriel. Le programme vi par défaut a un comportement étrange sur Ubuntu et Debian ; pour corriger cela, nous installons vim-nox :

aptitude install vim-nox

(Vous n’avez pas à faire cela si vous utilisez un éditeur de texte différent comme joe ou nano.)

3. Configurer le réseau

Parce que l’installateur Ubuntu a configuré notre système pour obtenir ses paramètres réseau via DHCP, nous devons changer cela maintenant car un serveur doit avoir une adresse IP statique. Éditez /etc/network/interfaces et ajustez-le à vos besoins (dans cet exemple, j’utiliserai l’adresse IP 192.168.0.100) :

vi /etc/network/interfaces
# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, voir interfaces(5).

# L'interface réseau de boucle
auto lo
iface lo inet loopback

# L'interface réseau principale
auto eth0
iface eth0 inet static
        address 192.168.0.100
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Puis redémarrez votre réseau :

/etc/init.d/networking restart

Ensuite, éditez /etc/hosts. Faites-le ressembler à ceci :

127.0.0.1       localhost.localdomain   localhost
192.168.0.100   server1.example.com     server1

# Les lignes suivantes sont souhaitables pour les hôtes capables d'IPv6
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Maintenant exécutez :

echo server1.example.com > /etc/hostname   
/etc/init.d/hostname.sh start

Ensuite, exécutez :

hostname   
hostname -f

Les deux devraient maintenant afficher server1.example.com.

4. Mettez à jour votre installation Linux

Éditez /etc/apt/sources.list. Commentez ou supprimez le CD d’installation du fichier et assurez-vous que les dépôts universe et multiverse sont activés. Cela devrait ressembler à ceci :

#
# deb cdrom:[Ubuntu-Server 9.04 _Jaunty Jackalope_ - Release amd64 (20090421.1)]/ jaunty main restricted

#deb cdrom:[Ubuntu-Server 9.04 _Jaunty Jackalope_ - Release amd64 (20090421.1)]/ jaunty main restricted
# Voir http://help.ubuntu.com/community/UpgradeNotes pour comment mettre à niveau vers
# des versions plus récentes de la distribution.

deb http://de.archive.ubuntu.com/ubuntu/ jaunty main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty main restricted

## Mises à jour majeures de correction de bogues produites après la version finale de la
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ jaunty-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty-updates main restricted

## N.B. le logiciel de ce dépôt est ENTIÈREMENT NON SOUTENU par l'équipe Ubuntu.
## De plus, veuillez noter que le logiciel dans universe NE recevra PAS de
## révision ou de mises à jour de l'équipe de sécurité Ubuntu.
deb http://de.archive.ubuntu.com/ubuntu/ jaunty universe
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty universe
deb http://de.archive.ubuntu.com/ubuntu/ jaunty-updates universe
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty-updates universe

## N.B. le logiciel de ce dépôt est ENTIÈREMENT NON SOUTENU par l'équipe Ubuntu,
## et peut ne pas être sous une licence libre. Veuillez vous assurer de
## vos droits d'utiliser le logiciel. De plus, veuillez noter que le logiciel dans
## multiverse NE recevra PAS de révision ou de mises à jour de l'équipe de
## sécurité Ubuntu.
deb http://de.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://de.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse

## Décommentez les deux lignes suivantes pour ajouter des logiciels du dépôt 'backports'
## N.B. le logiciel de ce dépôt peut ne pas avoir été testé aussi
## largement que celui contenu dans la version principale, bien qu'il inclue
## des versions plus récentes de certaines applications qui peuvent fournir des fonctionnalités utiles.
## De plus, veuillez noter que le logiciel dans backports NE recevra PAS de révision
## ou de mises à jour de l'équipe de sécurité Ubuntu.
# deb http://de.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse
# deb-src http://de.archive.ubuntu.com/ubuntu/ jaunty-backports main restricted universe multiverse

## Décommentez les deux lignes suivantes pour ajouter des logiciels du dépôt
## 'partenaire' de Canonical.
## Ce logiciel ne fait pas partie d'Ubuntu, mais est proposé par Canonical et les
## fournisseurs respectifs comme un service aux utilisateurs d'Ubuntu.
# deb http://archive.canonical.com/ubuntu jaunty partner
# deb-src http://archive.canonical.com/ubuntu jaunty partner

deb http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-src http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb http://security.ubuntu.com/ubuntu jaunty-security universe
deb-src http://security.ubuntu.com/ubuntu jaunty-security universe
deb http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-src http://security.ubuntu.com/ubuntu jaunty-security multiverse

Puis exécutez ce qui suit pour mettre à jour la base de données des paquets apt :

aptitude update

Exécutez ce qui suit pour installer les dernières mises à jour :

aptitude safe-upgrade

Si vous voyez qu’un nouveau noyau est installé dans le cadre des mises à jour, vous devez redémarrer le système par la suite :

5. Changer le shell par défaut

/bin/sh est un lien symbolique vers /bin/dash, cependant nous avons besoin de /bin/bash, pas de /bin/dash. Par conséquent, nous faisons cela :

dpkg-reconfigure dash

Installer dash comme /bin/sh ? <– Non

6. Désactiver AppArmor

AppArmor est une extension de sécurité (similaire à SELinux) qui devrait fournir une sécurité étendue. À mon avis, vous n’en avez pas besoin pour configurer un système sécurisé, et cela cause généralement plus de problèmes que d’avantages (pensez-y après avoir passé une semaine à résoudre des problèmes parce qu’un service ne fonctionnait pas comme prévu, et ensuite vous découvrez que tout allait bien, seul AppArmor causait le problème). Par conséquent, je le désactive (c’est un must si vous voulez installer ISPConfig plus tard).

Nous pouvons le désactiver comme ceci :

/etc/init.d/apparmor stop   
update-rc.d -f apparmor remove   
aptitude remove apparmor apparmor-utils

7. Installer quelques logiciels

Maintenant, nous installons quelques paquets qui seront nécessaires plus tard :

aptitude install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential unrar

8. Synchroniser l’horloge système

Il est bon de synchroniser l’horloge système avec un serveur NTP (protocole de temps réseau) sur Internet. Exécutez simplement :

apt-get install ntp ntpdate

9. Caching Dnsmasq

apt-get install dnsmasq

Éditez /etc/dnsmasq.conf et faites en sorte que Dnsmasq écoute sur localhost :

listen-address=127.0.0.1 

Éditez /etc/resolv.conf et ajoutez ce qui suit en haut de la liste :

nameserver 127.0.0.1 
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.