Rendez-vous sur Arrakis, Le site perso d'un hacker libriste curieux crêpophile étourdi
Le 19/06/2019 à 15:43 dans /Journal/2018/

Mise en place d'un spamtrap sur un serveur

Voici en quelques lignes comment j'ai activé un piège à spammeurs pour limiter la quantité de ces nuisances sur la toile à mon petit niveau.

Tout ceci est mis en place sur le serveur obsd4a qui n'est en aucun cas un serveur mail. Ce n'est pas un problème, ça fonctionne quand même et les spammeurs se font avoir.

Prérequis

OpenBSD.

Un enregistrement MX dans votre zone DNS.

C'est tout.

Configuration de spamd

rcctl enable spamd
rcctl start spamd

Le crontab

Il faut, en tant que root, éditer le crontab déjà présent par défaut. Pour ça, lancez crontab -e puis décommentez la ligne suivante :

0      *       *       *       *       sleep $((RANDOM \% 2048)) && /usr/libexec/spamd-setup

pf

On édite /etc/pf.conf pour envoyer les requêtes des spammeurs vers spamd :

pass in on egress proto tcp to any port smtp \
    divert-to 127.0.0.1 port spamd

Rechargez pf avec

pfctl -f /etc/pf.conf

Tout piéger

Vous pouvez mettre dans le fichier /etc/mail/spamd.alloweddomains une liste de domaines qui ne seraient pas considérés comme spam. Tous les autres seront alors piégés. Le plus simple est donc de piéger tout le monde :

touch /etc/mail/spamd.alloweddomains

Publication du piège

Vous pouvez ajouter une adresse piège avec :

spamdb -T -a trap@domaine.com

À la place, je préfère utiliser ce script qui fait tout le travail et publie l'adresse piège sur les pastebins publics.

On édite donc le fichier /etc/weekly.local pour ajouter une entrée appelant ce script (une fois par semaine).