Vérifiez le niveau de SPAM de vos emails avec SpamAssassin
Garantir la délivrabilité de vos mails est un travail long et complexe. Entre la réputation de votre IP, la configuration de vos DNS (SPF, DKIM, …), le contenu de vos emails, … autant de risques que vos emails soient considérés comme spams potentiels par vos destinataires ou par vos propres SMTP (👋 coucou OVH).
Intéressons-nous uniquement à la partie « développeur » en regardant une solution pour tester la forme et le contenu des emails automatiques que vous allez envoyer.
Installons localement SpamAssassin
SpamAssassin est un service opensource qui fonctionne sous Linux mais rassurez-vous, si vous êtes sous Windows, il suffit de passer par WSL (Utilisez vos commandes 🐧Linux sous Windows avec WSL2). L’exemple ci-dessous est réalisé sous Windows 11 avec WSL2 et Ubuntu 20.04.
Ouvrez votre terminal linux et tapez :
apt-get install spamassassin
Dès que c’est terminé, vérifiez que la commande spamassassin fonctionne
spamassassin -V
Utiliser SpamAssassin pour tester un email
SpamAssassin est prévu pour être utiliser sur un serveur de messagerie afin d’évaluer les emails à la volée. Ce qui va nous intéresser est de pouvoir lui donner un email brut afin qu’il l’analyse et nous délivre un rapport et un score de SPAM.
Pour commencer, il faut récupérer l’email au format mail.eml. Pour faire simple, il s’agit du format BRUT d’un email, avec le contenu et les entêtes. La plupart des logiciels de messagerie ont une option « Télécharger ce message » .
Nous pouvons maintenant vérifier le score et les recommandations antispam avec l’option -t (–test-mode).
spamassassin -t < mail.eml
Analyser le compte-rendu SpamAssassin
L’option --test-mode
va permettre de visualiser un aperçu du message au format texte, un score et un ensemble de règles.
Dans notre exemple, le score de 4.2 points indique que des choses ne vont pas. Il devrait tendre vers 0 ou même être négatif dans l’idéal. Le score « required » est simplement un seuil défini manuellement dans la configuration.
Pour faire baisser votre score, étudiez chaque recommandation ayant un score élevée et regardez également s’il existe des recommandations négatives dans la liste globale.