Author: Thomas Hochstein Date: To: exim-users-de Subject: Re: [Exim-users-de] Exim, Vexim, Sieve und Spam
Sascha Schmidt schrieb:
> Ich habe jedoch noch das Problem, dass ich das Tag "X-Spam-Flag: YES"
> nicht in die Mails hinein bekomme, falls die Spam-Score größer ist als
> die die im Webinterface von Exim definiert wurde.
Das ist kein Konfigurationsproblem mit Exim, sondern ein
programmübergreifendes systemisches Problem: eine nutzerspezifische
Spamfilterung während der Annahme der Mail, also im SMTP-Dialog
(sprich: via ACLs) ist nicht ohne weiteres möglich.
Technisch werden ja erst alle (!) Empfänger der Mail übertragen, und
dann einmal (!) die Mail selbst. Die Überprüfung, ob es sich um Spam
handelt, kann logischerweise erst nach der Übertragung der Mail selbst
erfolgen, also in der data-ACL, weil erst da der Inhalt der Mail zur
Verfügung steht. Dann ist aber kein einzelner Empfänger mehr
abfragbar, weil dieser einmal übertragene Mailinhalt ggf. an viele
Empfänger richtet. Die von Dirt versuchte Lösung kann daher nicht
funktionieren.
Es gibt verschiedene Möglichkeiten, damit umzugehen:
1: Immer nur einen Empfänger pro Mail erzwingen, also nach dem ersten
Empfänger alle weiteren temporär abweisen (defer). Das hat allerdings
Nachteile: es dürfte nicht standardkonform sein, es verzögert die
Zustellung an die weiteren Empfänger um Minuten, Stunden oder Tage, je
nachdem, wie viele es werden und wie die Konfiguration des Absenders
ist, und es gibt bestimmt seltsame Absendersysteme, die es gar nicht
mehr erneut mit der Zustellung versuchen, so daß die Mail dann für die
anderen Adressaten verloren ist. Viele dieser Probleme hat man auch
mit Greylisting.
2. Eine Modifikation der ersten Lösung:
Nur die Annahme für solche Empfänger temporär ablehnen, die eine
andere Spamschwelle definiert haben als der erste. Damit werden -
insb., wenn man nur wenige verschiedene Schwellen anbietet - die Mails
in wenigen Versuchen komplett zugestellt. Die Probleme der ersten
Lösung sind so geringer.
3. Man kann auch einfach alle Mails erst einmal annehmen und die
Spamfilterung dann eben nicht im SMTP-Dialog, sondern nachträglich,
durchführen (also nicht per ACL, sondern per Router). Dann hat man
allerdings das Problem, daß man Spam nicht mehr abweisen, sondern nur
markieren oder in einen speziellen Spamfolder packen (oder ohne
Benachrichtigung löschen) kann.