Ce tutoriel décrit les étapes pour remplacer le logiciel d'analyse de spam amavis (amavisd-new) par Rspamd sur un serveur ISPConfig 3.1. Le tutoriel est écrit pour Debian et Ubuntu Linux.
Prérequis
- Accès racine.
- ISPConfig 3.1 doit être installé. La version ISPConfig sera 3.1.15 ou plus récente après cette procédure.
- Le serveur utilise Debian 9 - 10 ou Ubuntu 18.04 sur un processeur x86_64 (Linux 64 bits). Les anciennes versions de Debian et Ubuntu pourraient également fonctionner, mais je ne les ai pas testées.
Toutes les commandes ci-dessous sont exécutées en tant qu'utilisateur root. Connectez-vous en tant qu'utilisateur root ou utilisez 'su - ' sur Debian ou 'sudo -s ' sur Ubuntu pour devenir un utilisateur root avant de continuer avec ce guide.
Remarque : Cette procédure reconfigurera toutes les boîtes aux lettres et les alias pour écrire la configuration Rspamd pour chaque compte (similaire à une exécution ISPConfig Tools> resync), cela peut prendre un certain temps et des ressources sur les gros serveurs de messagerie.
Installer Redis
La configuration de Rspamd pour ISPConfig nécessite Redis, nous allons donc l'installer en premier.
apt-get install redis-server lsb-release
Installer Unbound si BIND n'est pas installé
Si votre serveur n'a pas de serveur DNS local installé, un résolveur DNS local comme unbound doit être installé.
Tout d'abord, vérifiez si BIND est installé en utilisant cette commande :
which named
si la commande renvoie le chemin vers le binaire nommé :
[email protected]:/tmp# which named
/usr/sbin/named
alors BIND est installé et vous devez ignorer cette étape. Si aucun chemin vers named n'est renvoyé, installez unbound :
apt-get install unbound
Installer et configurer Rspamd
La première étape pour installer Rspamd consiste à ajouter le référentiel de packages Rspamd Debian/Ubuntu.
CODENAME=`lsb_release -c -s`
wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add -
echo "deb [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list
echo "deb-src [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" >> /etc/apt/sources.list.d/rspamd.list
Mettez à jour la liste des packages :
apt-get update
Et installez Rspamd avec apt :
apt-get install rspamd
Activez Redis dans la configuration de Rspamd.
echo 'servers = "127.0.0.1";' > /etc/rspamd/local.d/redis.conf
Augmentez l'historique de Rspamd, activez la compression et affichez le sujet dans l'historique. Cette étape est facultative.
echo "nrows = 2500;" > /etc/rspamd/local.d/history_redis.conf
echo "compress = true;" >> /etc/rspamd/local.d/history_redis.conf
echo "subject_privacy = false;" >> /etc/rspamd/local.d/history_redis.conf
Redémarrez ensuite Rspamd.
systemctl restart rspamd
Mettre à jour ISPConfig
ISPConfig doit être mis à jour pour activer la configuration Rspamd. Lorsque le programme de mise à jour ISPConfig vous demande s'il doit reconfigurer les services , choisissez 'oui '.
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install
php -q update.php
Vous verrez la ligne "Configurer Rspamd " dans la sortie du script de mise à jour lorsque Rspamd est détecté et configuré.
Activer Rspamd dans ISPConfig
La dernière étape nécessite que vous vous connectiez à ISPConfig en tant qu'utilisateur "admin".
Dans ISPConfig, accédez à Système > Configuration du serveur > Messagerie .
Là, vous modifiez la valeur du champ Filtre de contenu de Amavisd à Rspamd et appuyez sur le bouton Enregistrer en bas de la page. ISPConfig va commencer à reconfigurer toutes les boîtes aux lettres pour Rspamd maintenant.
Lorsque vous revenez à Système > Configuration du serveur > Mail , vous pouvez alors voir de nouveaux champs dans lesquels vous pouvez lire et définir le mot de passe Rspamd.
Rendre le tableau de bord Rspamd accessible de l'extérieur
Le tableau de bord Rspamd se trouve sur le port 11334 sur l'hôte local, il n'est donc pas accessible de l'extérieur. Dans ce chapitre, nous allons créer un site Web dans ISPConfig et ajouter une configuration de proxy. La configuration diffère entre le serveur Web Apache et Nginx, utilisez le chapitre qui correspond à votre logiciel de serveur Web installé.
Apache
Activez le module proxy et redémarrez apache.
a2enmod proxy
systemctl restart apache2
Connectez-vous ensuite à ISPconfig et créez un site Web qui s'habituera à accéder à l'interface graphique de Rspamd. Vous êtes libre de choisir le nom de domaine, j'utiliserai rspamd.example.com ici. Vous n'avez pas besoin d'activer de langage de programmation ou d'autres options sur ce site, laissez simplement tout par défaut. L'activation de SSL et de Let's encrypt est cependant fortement recommandée.
Accédez à l'onglet Options du site Web et entrez la configuration suivante dans les Directives Apache domaine. Pour Apache 2.2, utilisez :
<Location /rspamd>
Order allow,deny
Allow from all
</Location>
RewriteEngine On
RewriteRule ^/rspamd$ /rspamd/ [R,L]
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]
Pour Apache 2.4, utilisez ceci à la place :
<Location /rspamd>
Require all granted
</Location>
RewriteEngine On
RewriteRule ^/rspamd$ /rspamd/ [R,L]
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]
Vous pouvez maintenant accéder à l'interface graphique de Rspamd avec un navigateur Web https://rspamd.example.com/rspamd . Un mot de passe vous sera demandé, utilisez le mot de passe que vous avez généré lors de l'installation de Rspamd.
Nginx
Connectez-vous à ISPconfig et créez un site Web qui sera utilisé pour accéder à l'interface graphique Rspamd. Vous êtes libre de choisir le nom de domaine, j'utiliserai rspamd.example.com ici. Vous n'avez pas besoin d'activer de langage de programmation ou d'autres options sur ce site, laissez simplement tout par défaut. L'activation de SSL et de Let's encrypt est cependant fortement recommandée.
Accédez à l'onglet Options du site Web et saisissez la configuration suivante dans les directives Nginx. champ.
location / {
root /usr/share/rspamd/www/;
try_files $uri @proxy;
}
location @proxy {
proxy_pass http://127.0.0.1:11334;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
Vous pouvez désormais accéder à l'interface graphique Rspamd avec un navigateur Web https://rspamd.example.com/ . On vous demandera un mot de passe, utilisez le mot de passe que vous avez défini pour Rspamd dans ISPConfig.
Interface graphique Rspamd
Vous pouvez désormais accéder à l'interface graphique de Rspamd avec un navigateur et obtenir des statistiques détaillées sur le débit et le débit du filtre anti-spam.
ISPConfig a été reconfiguré pour utiliser Rspamd au lieu d'Amavis pour rechercher les spams. Rspamd est également utilisé pour Dkim Signing.
Désactiver Amavis
Enfin, nous arrêtons et désactivons le service amavisd :
systemctl stop amavisd-new
systemctl disable amavisd-new
Conclusion
Rspamd est un logiciel moderne d'analyse anti-spam hautes performances pour les serveurs Linux qui fournit des résultats de filtrage très précis. ISPConfig prend en charge Rspamd comme unité d'analyse du spam depuis la version 3.1.15. Ce tutoriel montre comment remplacer amavisd.new par Rspamd sur un serveur ISPConfig 3.1.