Lernen Sie das E-Mail-Filtersystem von SpamAssassin kennen, um Posteingänge von unerwünschten E-Mails freizuhalten und E-Mails zu bewerten. Vielen Dank an Mailosaur für die Bereitstellung dieses Blogbeitrags.
SpamAssassin (SA) ist ein gut etabliertes E-Mail-Filtersystem, das seinem Namen alle Ehre macht. Es verwendet umfassende Methoden zur Spam-Bekämpfung, um Posteingänge von unerwünschten E-Mails freizuhalten. Der Filter weist den E-Mails Punkte zu, um die echten von den unerwünschten zu trennen.
In diesem Artikel sehen wir uns an, wie ein SpamAssassin-Score berechnet wird und was Sie tun können, um ihn zu verbessern. Die Überprüfung und Verbesserung Ihrer SpamAssassin-Ergebnisse wird Ihnen dabei helfen, bessere E-Mails zu schreiben, die Ihre Empfänger gerne erhalten werden.
Was ist SpamAssassin?
SpamAssassin (offiziell “Apache SpamAssassin”) ist ein Open-Source-Projekt, das von der Apache Software Foundation entwickelt und betrieben wird. Es wurde 2001 mit dem Ziel veröffentlicht, einen robusten und anpassbaren Filter zur Erkennung von “E-Mail-Spam” bereitzustellen, dem von Monty Python inspirierten Begriff für die Praxis des massenhaften Versands unerwünschter E-Mails.
Der Filter verwendet eine Reihe von verschiedenen Tests. Dazu gehören das Scannen des E-Mail-Textes und der Kopfzeile sowie der Abgleich der IP-Adresse des Absenders mit verschiedenen Sperr- und Erlaubnislisten. Benutzer können Regeln hinzufügen und anpassen oder einfach auf den Spam-Klassifikator von SpamAssassin zurückgreifen und ihn mit ihren eigenen Daten trainieren. Viele E-Mail-Anbieter stützen sich auf die Ergebnisse von SpamAssassin, um eingehende E-Mails als Spam oder als das Gegenteil, nämlich als “Ham”, zu klassifizieren.
Die SpamAssassin-Bewertung
Jede SpamAssassin-Regel ist mit einem Wert verbunden, der entweder negativ oder positiv sein kann. Der SpamAssassin-Filter führt seine Tests an jeder eingehenden E-Mail durch und addiert die Werte für die ausgelösten Regeln. Anschließend wird eine aggregierte SpamAssassin-Bewertung zurückgegeben. Eine höhere Punktzahl bedeutet, dass es sich bei einer E-Mail mit höherer Wahrscheinlichkeit um Spam handelt, was nicht unbedingt intuitiv ist. Wenn Sie Ihre Transaktions-E-Mails durch den SpamAssassin-Filter laufen lassen, sollten Sie daher eher eine niedrigere als eine höhere Punktzahl anstreben.
Wenn eine E-Mail einen bestimmten Schwellenwert überschreitet, wird sie als Spam eingestuft. Standardmäßig ist dieser Schwellenwert in der Konfiguration von SpamAssassin auf 5,0 eingestellt, kann aber vom Benutzer angepasst werden. Es ist üblich, den Schwellenwert so anzupassen, dass ein ausgewogenes Verhältnis zwischen einer geringen Anzahl von False Positives (echten E-Mails, die fälschlicherweise als Spam eingestuft werden) und False Negatives (Spam-E-Mails, die dem Filter vorgaukeln, sie seien echt) erreicht wird. Aus diesem Grund kann es vorkommen, dass Ihre E-Mail im Posteingang eines Empfängers landet, aber im Spam-Ordner eines anderen – möglicherweise verwendet dieser einen E-Mail-Dienst mit restriktiveren Anti-Spam-Einstellungen. Wenn Sie Ihre E-Mails mit dem SpamAssassin-Filter testen, reicht es daher möglicherweise nicht aus, einfach nur unter dem Schwellenwert von 5,0 zu liegen. Vielmehr sollten Sie eine möglichst niedrige Punktzahl anstreben.
Regelbasierte Spam-Filter
Wie sieht also eine SpamAssassin-Regel aus? Schauen wir uns ein Beispiel an, das die KAM-Regeln verwendet, einen weit verbreiteten benutzerdefinierten Regelsatz:
Sie können sich wahrscheinlich denken, auf welche Art von Betrug Sie hier abzielen, aber lassen Sie uns den Text Zeile für Zeile durchgehen. Die erste Zeile ist einfach ein Kommentar für den Entwickler, der nicht sehr aussagekräftig ist. Die nächsten beiden Zeilen sind interessanter: Sie sind als “body” gekennzeichnet und bestehen aus zwei regulären Perl-Ausdrücken (“regexes”). Regexe sind leistungsstarke Ausdrücke für die Mustererkennung in Text und sind häufig Teil des SpamAssassin-Filters.
Zusammen beschreiben die Regexe ein Muster, das häufig in Spam-E-Mails verwendet wird, in denen ein Absender ein Stellenangebot mit unrealistisch hohen Konditionen beschreibt. Interessanterweise wird die Regel nur ausgelöst, wenn der Text die Behauptung enthält, dass der Empfänger “doppelt so viel” (nicht mehr, nicht weniger) Geld verdienen kann als bei seinem derzeitigen Arbeitgeber. Dies wird durch eine “Meta”-Regel (eine komplexe Kombination von Ausdrücken) gewährleistet, die voraussetzt, dass die Summe von zwei einzelnen Mustern mindestens zwei beträgt.
Wenn diese Metaregel ausgelöst wird, erhöht sich die Spam-Bewertung um 4,3 Punkte. Erinnern Sie sich noch, als wir sagten, dass eine Punktzahl von 5,0 oft für eine Spam-Klassifizierung ausreicht? Wenn Ihre E-Mail also das obige Muster verwendet, kommt sie dem Spam-Ordner gefährlich nahe.
Obwohl die McGrail Foundation, die die KAM-Regeln entwickelt hat, eng mit Apache’s SpamAssassin verbunden ist, ist der Regelsatz streng genommen nicht Teil der Kernregelsammlung von SA. Sehen Sie sich hier alle Standardregeln von SpamAssassin an. Um Ihre eigenen Regeln hinzuzufügen, müssen Sie sie in Ihre lokale Konfiguration aufnehmen und den Parameter “allow_local_rules” auf 1 setzen.
Probabilistische Spam-Filter
Hart kodierte Regeln sind gut geeignet, um Spam abzufangen, aber eine noch intelligentere Lösung besteht darin, diese Regeln mit der Bewertung eines probabilistischen Spam-Klassifikators zu kombinieren. Der Bayes’sche Klassifikator von SpamAssassin ist ein maschinelles Lernmodell, das häufig bei der Spam-Filterung eingesetzt wird. Wie bei Techniken des maschinellen Lernens üblich, wird die Kategorisierung umso besser, je mehr E-Mails der Klassifikator sieht.
Die Benutzer von SpamAssassin haben somit die Möglichkeit, den Filter auf ihre Bedürfnisse abzustimmen, indem sie dem Klassifikator ihre eigenen als “Spam” oder “Ham” bezeichneten E-Mails zuführen. Wenn man den Parameter “bayes_auto_learn” aktiviert, kann man das System auch ohne zuvor markierte Daten verwenden. In solchen Fällen werden eingehende E-Mails, die der Filter mit einer sehr hohen Wahrscheinlichkeit als Spam oder Ham markiert hat, als Trainingsdaten an den Klassifikator zurückgegeben.
Wie Sie Ihre SpamAssassin-Punktzahl überprüfen können
Schauen wir uns endlich SpamAssassin in Aktion an! Nachdem wir einen neuen Server auf unserem Mailosaur-Konto eingerichtet haben, senden wir ihm diese absichtlich verdächtige E-Mail:
Es sieht nicht besonders vertrauenswürdig aus. Wir können schon jetzt sagen, dass wir für diese E-Mail einen ziemlich hohen SpamAssassin-Wert erhalten werden, aber können Sie erraten, welche Teile den Filter am meisten auslösen werden?
Öffnen wir unser Mailosaur Dashboard, um das zu untersuchen:
Es gibt zwar ein paar leicht positive Elemente in unserer E-Mail (insbesondere die Authentifizierungssignaturen in der Kopfzeile), aber wir haben so ziemlich jeden Fehler gemacht, der im Text der E-Mail möglich war. Die beiden negativsten Punkte waren jedoch die Anrede unseres Empfängers als “lieber Freund” und die Erwähnung einer “100%igen Garantie”.
Interessanterweise akzeptierte Google Mail die obige E-Mail trotz ihrer mittelmäßigen SpamAssassin-Bewertung in einem Posteingangsordner. Das liegt wahrscheinlich daran, dass dieser E-Mail-Dienst andere Prioritäten bei den Regeln zum Abfangen von Spam setzt als die Standardeinstellungen von SpamAssassin.
Wie Sie Ihr SpamAssassin-Ergebnis verbessern können
Die Verbesserung unserer SpamAssassin-Punktzahl ist nicht allzu schwierig. Vermeiden wir einfach die spammigen Phrasen, die hohe Werte zu unserem Score hinzufügen. Versuchen wir also als kleine Herausforderung, unser Bestes zu geben und einen negativen SpamAssassin-Wert zu erreichen:
Unsere E-Mail klingt nicht nur viel weniger hektisch als die vorherige (die Kleinschreibung mag dazu beigetragen haben), sondern sie ist auch persönlich und freundlich und bringt unsere Botschaft genauso gut rüber. Was sagt unser SpamAssassin-Ergebnis jetzt aus?
Was für ein schöner Anblick! SpamAssassin mag unsere E-Mail genauso gerne wie wir – und wir haben unser Ziel erreicht, eine negative SpamAssassin-Bewertung zu generieren.
Inhalt ist nicht alles
Während Beispiele, die den Text einer E-Mail betrachten, Spaß machen und intuitiv verständlich sind, werden viele SpamAssassin-Prüfungen hinter den Kulissen durchgeführt, und viele davon erfordern mehr als eine schön geschriebene E-Mail, um getäuscht zu werden. Wenn Ihre Domäne beispielsweise auf einer Sperrliste landet, können Sie nicht viel tun, außer eine andere Domäne oder einen anderen E-Mail-Anbieter zu verwenden.
Ebenso wurden Protokolle zur Nachrichtenauthentifizierung wie DKIM und SPF speziell entwickelt, um das Problem des E-Mail-Spoofing anzugehen, bei dem sich der Absender als eine andere Person ausgibt. Während Sie den Inhalt Ihrer E-Mail-Kopfzeilen immer noch manipulieren können, können Sie ein DKIM-Protokoll nicht einfach fälschen. Was SpamAssassin als Spamfilter so robust macht, ist die Tatsache, dass er all diese Metriken (und noch mehr) zu einer Bewertung kombiniert.
Was können Sie also tun, außer ausgefeilte E-Mails zu schreiben und wohlgeformtes HTML zu verwenden? Hier sind ein paar Tipps:
– Verwenden Sie die bereits erwähnten E-Mail-Standards: DKIM und SPF. Sie beweisen, dass Sie die E-Mail geschrieben haben und dass Sie berechtigt sind, E-Mails von Ihrer Domain zu versenden.
– Vermeiden Sie es, Massen-E-Mails von einer brandneuen IP-Adresse zu versenden: Das gilt als verdächtiges Verhalten. Wenn Sie stattdessen E-Mails an mehrere Empfänger senden, sollten Sie diese über mehrere Tage verteilen und die tägliche Belastung langsam erhöhen.
– Arbeiten Sie an Ihrem Absenderruf. Achten Sie darauf, dass Sie personalisierte E-Mails versenden, die Ihre Empfänger auch wirklich lesen wollen. Je öfter Ihre E-Mails geöffnet und gelesen werden und je weniger sie als Spam markiert werden, desto besser wird Ihr Ruf sein.
Verwenden Sie eine spezielle E-Mail-Testlösung
Die Überprüfung Ihres SpamAssassin-Ergebnisses ist nur ein winziges Teil des viel größeren Puzzles, das die Zustellbarkeit und das Testen von E-Mails darstellt. Wenn Sie es mit der Kommunikation mit Ihren Kunden ernst meinen, sollten Sie den Einsatz einer speziellen E-Mail-Testplattform wie Mailosaur in Erwägung ziehen, mit der Sie alles oben Genannte und noch viel mehr als Teil Ihrer automatisierten Testsuite durchführen können.
Mailosaur ist ein Aussteller auf der AutomationSTAR 2022. Schließen Sie sich am 17. und 18. Oktober der Gemeinschaft der Softwaretester in München an. Sichern Sie sich jetzt Ihr Ticket .
Dieser Blog wird von Google vom Englischen ins Deutsche übersetzt.