Email backscatter / from non existent user

Bonjour,

Dans la file des courriels rejetés on trouve un certain nombre de courriels qui sont du backscatter, i.e. un courriel de spam rejeté qui génère l’envois de notifications de rejet à d’autres adresses.

Il y en a assez peu (10 ces 48 dernières heures) mais je suppose que c’est quelque chose qui n’est pas bon pour la réputation de la machine qui envoie le courriel et que ça devrait être configuré pour ne pas arriver.

Mais cela n’a pas l’air si simple et j’ai trouvé ces discussions qui suggèrent que discuter.spip.net n’est pas le seul à en faire l’expérience.

Il faut gérer cela au niveau du serveur SMTP postfix, mais je n’ai pas du tout d’expérience de ce genre de configuration. La logique suggérée consiste à ce que postfix interroge discourse:

et rejette les courriels entrant qui ne correspondent pas à un utilisateur discourse existant. Je découvre à cette occasion un serveur de courriel entrant dédié à discourse sous forme d’une image docker qui implémente cette stratégie. Mais ça ne convient pas pour discuter.spip.net qui gère plusieurs forums discourse.

Ce qui m’échappe c’est que ça devrait être aussi simple que ne pas envoyer de courriel de rejet du tout, simplement ignorer les courriels entrant de personnes qui n’existent pas sur le forum. Mais je ne trouve aucun paramètre en cherchant backscatter ou spam ou stranger. Et en regardant le source (toujours regarder le source), je vois enable_staged_users qui veut dire qu’un utilisateur est créé automatiquement si un courriel est reçu et qu’il n’existe pas:

Mais changer ce parametre ne résoudrait pas ce problème particulier. Il faudrait un autre paramètre du genre: mail_do_no_send_reject_email_to_unknown_user.

Qu’en dites vous?

En regardant la fonction de rejet

je me dit que ce n’est peut-être pas du backscatter en fait. Mais simplement un courriel dont le « From » est d’un utilisateur non existant. Ce que le serveur SMTP devrait bloquer, probablement.

Ce qui est confirmé par les en-têtes du courriel rejeté correspondant trouvé dans rejected:

Return-Path: <study@axisglacier.cam>
Date: Tue, 18 May 2021 01:49:12 -0500
From: Digital Doorbell <study@axisglacier.cam>
To: spip-zone@rezo.net
Message-ID: <EldD4z9xDAhQvDq8Srszk6Mpqs9acAKX73CntSn7X_A.mGS9MgT2sYALTV0flEXGdbG32SovYl_nNZXmG11gnSE@axisglacier.cam>
Subject: The Video DoorBell That Lets You Monitor Your Property and Check On
 Your Home At Anytime
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Delivered-To: spip@porter.rezo.net
X-Virus-Scanned: Debian amavisd-new at rezo.net
X-Spam-Flag: NO
X-Spam-Score: -0.007
X-Spam-Level: 
X-Spam-Status: No, score=-0.007 tagged_above=-100 required=5
 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, HTML_MIME_NO_HTML_TAG=0.377,
 MIME_HTML_ONLY=0.723, MIME_QP_LONG_LINE=0.001, RDNS_NONE=0.793,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=no
Precedence: bulk

Peut-être que postfix peut rejeter les courriels qui ont un From: qui ne correspond pas à un utilisateur existant (i.e. on ne peut pas faire de reply, ça va bounce). De mémoire je crois que:

a) Il est possible de configurer postfix pour implémenter ce genre de vérification (i.e. ne vérifier que le from est un courriel valide)
b) Que ce genre de vérification pose en fait plus de problème qu’elle n’en résout.