Malgré des règles assez sympathiques (voyez ma doc Debian (encore ? oui oui) pour les mettre en place), il arrive que certains spams ne soient pas reconnus. Si vous avez envie d’écrire une règle hyper compliquée ou simplement une petite règle car vous avez détecté qu’un serveur relai bien moisi était à l’origine de cela, voici une mini-introduction pour le faire.
Tout d’abord, lisez la doc officielle de SpamAssassin sur le sujet, c’est la bible. Ensuite, voici un cas simple, concret, basé sur un header particulier, le champ "Received"
. Je cherche à voir si le mail spammeux non détecté est passé par le serveur « gaoland.net », apparement un « problème connu » (voyez sur Google).
J’ai donc créé un fichier /etc/spamassassin/mes_regles.cf
contenant :
header PERSO_GAOLAND Received =~ /gaoland\.net/i describe PERSO_GAOLAND Relaye par gaoland.net, on soupçonne fortement score PERSO_GAOLAND 4.0
J’ai simplement fait ajouter 4 points car ce spam non reconnu marquait déjà 4.5 ou 4.9 – je ne sais plus – pour motif « Bayesian spam probability is 99 to 100% », mon seuil de détection étant à 5.
Pour faire un test de votre configuration, vous pouvez vous créer une règle de ce genre :
body MESREGLES_TEST /je teste mon spam/ score MESREGLES_TEST 5.1
…et vous envoyer un e-mail depuis une adresse non whitelistée (oui oui j’ai fait cette erreur 😉 contenant dans le corps du message (BODY) la phrase « je teste mon spam ». Vous devriez alors voir un joli :
Spam detection software, running on the system "monserveur.com", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: bliblablo je teste mon spam blabslqj [...] Content analysis details: (5.1 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 5.1 MESREGLES_TEST BODY: MESREGLES_TEST 0.0 BAYES_50 BODY: Bayesian spam probability is 40 to 60% [score: 0.4978] 0.0 AWL AWL: From: address is in the auto white-list
Et voilou
Tiens au fait, gaoland = Neuf Telecom
Donc :
1) creer cette règle aura comme travers d’être très méfiant envers les expéditeurs légitimes @neuf.fr
2) ils doivent avoir un nombre d’abonnés spammeurs-zombies au-delà de la normale pour qu’ils ressortent aussi nettement dans des statistiques de greylisting : http://michauko.org/blog/2008/03/05/statistiques-de-greylisting/
(on les voit une fois dans un extrait de logs, mais ils sont trèèèès souvent greylistés.
Bilan, ça doit être bien naze neuf telecom….
Bonjour,
En surfant sur le net afin de trouver réponse à ma problématique je suis tombé sur votre blog. Je vous sollicite à tout hasard afin de savoir si vous auriez une idée pour solutionner mon interrogation.
J’expose les faits :
Je souhaite apporter quelques modifications à la configuration de mon serveur de messagerie qui se compose de : postfix, dovecot et spamassassin.
J’administre les comptes mails via postfixadmin.
Je souhaiterai effectuer la chose suivante :
Quand un spam est envoyé à une adresse reconnue par le serveur de messagerie, ce dernier est tagué avec l’en-tête « ***SPAM*** » ; jusque là pas de problème. 🙂
Mon désire est que lorsqu’un spam est envoyé à une adresse NON reconnue par le serveur de messagerie (exemple : abcdefghijkl@mnopqrst.uvw), ce dernier ne renvoie pas de message « Undelivered Mail Returned to Sender » et que le mail de spam soit directement supprimé ; pas mis en queue.
Après quelques recherches je pense que cela est possible en ajoutant quelques règles dans le fichier « local.cf » mais je sais pas du tout comment y parvenir…
Cordialement,
MaT
Salut,
Perso, je l’aurais fait avec amavis (voir mon article assez récent sur la mise en place d’amavis) : genre avec les paramètres $final_*
Sinon, je chercherais plutôt du côté de postfix que de spamassassin. On n’est pas encore au niveau spam là , juste réception.
Des paramètres comme « soft_bounce » ? sinon google avec postfix + bounce, ça finira par donner le bon
Mais bon, je mieux, à mon avis, c’est de laisser l’orchestration de tout ça à amavis
Merci pour votre réponse rapide.
J’ai déjà installé la même plateforme avec Amavis mais je ne vois pas non plus comment procéder avec cet outil.
Je vais me renseigner avec postfix et le bounce bien que j’avais déjà fait des recherches auparavant dessus.
Bonne continuation 🙂
Là non ?
srv:/etc/amavis/conf.d# grep -i bounce *
20-debian_defaults:# Use D_BOUNCE to generate local bounces by amavisd-new
20-debian_defaults:# Use D_REJECT to generate local or remote bounces by the calling MTA
20-debian_defaults:# mail to your account. Use D_BOUNCE instead, otherwise you are delegating
20-debian_defaults:# the bounce work to your friendly forwarders, which might not like it at all.
20-debian_defaults:# MTA generate the bounce message. Test it first.
20-debian_defaults:$final_banned_destiny = D_BOUNCE; # D_REJECT when front-end MTA
20-debian_defaults:$final_spam_destiny = D_BOUNCE;
20-debian_defaults: ‘amavis-user-bounces@lists.sourceforge.net’ => -3.0,
Sinon, mon approche est différente : la plupart des mails genre lqskjdlskqd@qsljdhqsd.com sont des saloperies envoyées par des PC infectés. Injoignable en retour. Donc le greylisting fait son boulot et on ne perd pas trop de temps
Bah le truc c’est que je veux si possible ne pas passer par amavis…
Je pense que c’est possible de faire ce que je souhaite avec seulement postfix et spamassassin
Je continue de me renseigner…
PS : j’avais déjà vu avec amavis comment faire (D_BOUNCE, D_REJECT, …) mais ça répondra pas à ma question qui est de supprimer seulement les mails de spam à destination d’une adresse inconnue par le système