Skip to content

Troubleshooting

Nathan Colson edited this page May 31, 2025 · 7 revisions

1. Bug report

SpamAssassin ne tag pas le spam

Description

L'outil intégré au serveur mail "SpamAssassin" ne fonctionne pas. Il devrait effectivement filtrer les mails qu'il identifie comme spam mais ce n'est pas le cas.

En envoyant un e-mail contenant la string GTUBE (soit XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X) vers une adresse mail du domaine, le mail est malgré tout livré.

E-mail envoyé depuis le service ProtonMail vers une adresse de notre serveur :

Le mail est malgré tout arrivé dans la boîte de l'adresse alors que ça ne devrait pas être le cas :

Spécifications de l'environnement

Spécifications de la machine hôte, soit la machine qui fait tourner le conteneur Docker dans lequel fonctionne le serveur mail :

Illustration de l'infrastructure :
🚧 Ajouter illustration de l'infrastructure

Image utilisée pour le serveur mail :
mailserver/docker-mailserver (https://github.com/docker-mailserver/docker-mailserver)

Fichiers de configuration impliqués :

compose.yaml : compose.yaml
mailserver.env : mailserver.env

Étapes de reproduction du bug

Envoyer un mail depuis un domaine externe vers une adresse du domaine ayant pour contenu la string GTUBE, soit XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X.

2. Analyse du problème

  • Envoyer un mail depuis une adresse externe contenant la string GTUBE vers une adresse interne.
  • Résultat : Le mail arrive dans la boîte mail de l'adresse interne sans être marquée comme spam, donc sans avoir activé SpamAssassin.
  • Conclusion : SpamAssassin ne fonctionne pas et est donc mal configuré ou pas proprement activé.

3. Explication du problème

Le bug est encore non résolu. Se référer à l'issue #2 pour voir quelles démarches et diagnostics ont déjà été effectués dans une tentative de résoudre celui-ci.

4. Correction du bug

Nous avons corrigé le problème en activant et configurant correctement SpamAssassin via le fichier mailserver.env.

ENABLE_SPAMASSASSIN=1
SPAMASSASSIN_SPAM_TO_INBOX=1
MOVE_SPAM_TO_JUNK=1

Ces paramètres permettent :

  • d'activer le service SpamAssassin,

  • de diriger les spams vers la boîte de réception pour inspection,

  • de déplacer automatiquement les spams identifiés dans le dossier Junk/Spam.

Spam reçu Contenu du mail Spam

Une fois le conteneur redémarré avec ces paramètres, SpamAssassin a commencé à analyser les e-mails entrants et à déplacer les spams vers le dossier approprié.

5. Validation

Procédure

Deux types de mails ont été envoyés pour tester le bon fonctionnement :

E-mail valide :

Un e-mail classique sans contenu suspect a été envoyé depuis une adresse externe. Il a été reçu normalement dans la boîte de réception.

E-mail spam (GTUBE) :

Un e-mail contenant la signature GTUBE a été envoyé via ProtonMail.

Le message a bien été marqué comme spam et placé dans le dossier Junk, prouvant que SpamAssassin est désormais actif et fonctionnel.

Vérification avec Wireshark

Pour valider la bonne réception et le traitement du spam :

  1. Lancer une capture Wireshark sur l'interface réseau du serveur ou de la machine hôte.

Filtrer les paquets SMTP avec :

smtp

image

  1. Identifier le flux TCP correspondant à l’arrivée du message suspect (GTUBE).

  2. Vérifier que le message contient bien le contenu GTUBE dans les paquets SMTP DATA.

  3. Confirmer que le serveur répond bien au client (ProtonMail) avec un code 250 de réception.

La trace montre la réception d’un e-mail SMTP contenant la signature GTUBE et son traitement par le serveur.

Clone this wiki locally