Spamcheck im HRZ mit SpamAssassin
Spam ist eine Bezeichnung für die unerwünschten E-Mails, die an Sie gesendet werden. Der SpamAssassin analysiert E-Mails anhand eines Regelwerks und bewertet sie mit einem Punktesystem.
SpamAssassin
Ab einem - von Ihnen auch veränderbarem - Schwellenwert von 5 Punkten wird eine E-Mail als Spam eingestuft und somit als unerwünschte Werbung angesehen. Die als Spam bewerteten E-Mails werden wie alle anderen E-Mails an Sie weitergeleitet. Sie können dann entscheiden, ob Sie Spam-Mails ausfiltern und in einem dafür vorgesehenen Ordner (Folder) "caughtspam" ablegen oder auch gleich löschen wollen. Dabei wird das Programm Procmail für die Durchführung des Tests und das Filtern der E-Mail eingesetzt.
Zentraler Spamcheck
Am HRZ werden alle eintreffenden E-Mails bereits auf den zentralen Mailservern einem zentralen
Spamcheck unterzogen, dessen Ergebnis in den Kopfzeilen (Header) der E-Mail festgehalten wird. Bei
positivem Ergebnis wird zusätzlich in dem Betreff (Subject) der E-Mail die Markierung
<?SPAM?> dem eigentlichen Inhalt vorangestellt, damit der Empfänger sofort den Spam-Status
der E-Mails erkennen kann. Danach werden die E-Mails an die Adressaten weitergeleitet.
Persönlicher Spamcheck
Der persönliche Spamcheck wird auf den Posteingangs-Servern Imap.hrz.uni-giessen.de bzw. Imap.stud.uni-giessen.de durchgeführt und muss von den Benutzern des HRZs selbst eingerichtet und verändert werden, z.B. wenn Sie Spam-Mails nicht im Posteingangs-Ordner sondern in einem separaten Ordner caughtspam ablegen oder gleich löschen wollen. Zum Verändern oder Einrichten des persönlichen Spamchecks verwenden Sie am besten das webbasierte Formular Spamcheck-Setup für G-Kennung bzw. Spamcheck-Setup für S-Kennung.
Spamcheck-Regeln
Das Sortieren und Testen der E-Mail wird mit Hilfe des Programms Procmail auf den Posteingangs-Servern Imap.hrz.uni-giessen.de bzw. Imap.stud.uni-giessen.de unter der Kontrolle des Empfängers der E-Mail durchgeführt. Dazu gibt es fünf Regeln, die ein- oder ausgeschaltet werden können. Die Regeln 1 und 2 verwenden das Ergebnis des zentralen Spamchecks und die drei weiteren Regeln führen den persönlichen Spamcheck aus.
-
Regel 1: E-Mails mit 'Spam-Status Yes' und mindestens 10 Spam-Punkten löschen. Die Regel 1 sortiert die vom zentralen Spamcheck als Spam erkannten und mit mindestens 10 Spam-Punkten bewerteten E-Mails aus und löscht sie sofort unwiderruflich. Da E-Mails ja normalerweise bereits ab 5 Punkten als Spam angesehen werden, ist bei dieser Regel zwar noch ein großer Sicherheitsabstand vorhanden. Trotzdem sollten Sie es sich überlegen, ob Sie diese Regel auf Ihre E-Mails anwenden wollen.
-
Regel 2: E-Mails mit 'Spam-Status Yes' im Ordner caughtspam ablegen. Die Regel 2 sortiert die vom zentralen Spamcheck als Spam erkannten E-Mails mit 5 und mehr Spam-Punkten aus und legt sie in einem eigenen Ordner mit dem Namen
caughtspamab, damit Sie sie auf Fehler bei der Bewertung als Spam prüfen können. Die im Ordnercaughtspamabgelegten E-Mails bleiben dort maximal 30 Tage und werden danach automatisch von einem Systemprogramm gelöscht. Wenn Sie diese Regel anwenden, brauchen Sie die weiteren Regeln 3 bis 5 des persönlichen Spamchecks nicht zu aktivieren, da Sie schon mit den Regeln 1 und 2 einen weitgehenden Schutz vor Spam-Mails erhalten. -
Regel 3: persönlicher Spamcheck. Aktivieren der Regel 3 bewirkt einen erneuten Aufruf des SpamAssassins, diesmal aber innerhalb der Umgebung des Benutzers auf seinem Posteingangsserver. Das ist zwar nicht unbedingt für die Spam-Erkennung erforderlich, bietet Ihnen aber weitergehende Möglichkeiten: Die Trefferqualität wird verbessert, da der SpamAssassin automatisch mit Ihrer persönlichen E-Mail trainiert wird. Des weiteren können Sie beim persönlichen Spamcheck eigene Optionen einsetzen wie anderer Schwellenwert, Blacklists und Whitelists (das sind Adressen-Muster zur Ablehnung oder Annahme bestimmter Absender), Ablehnung bei asiatischen Zeichensätzen, eigene Test-Verfahren etc. s.u.. Die folgenden Regeln 4 und 5 lassen sich nur einsetzen, wenn auch die Regel 3 aktiviert ist.
-
Regel 4: E-Mails mit 'Spam-Status Yes' und mindestens 10 Spam-Punkten löschen. Wenn Sie die Regel 4 wählen, werden wie bei Regel 1 die E-Mails, die beim persönlichen Spamcheck mindestens 10 oder mehr Punkte erreicht haben, sofort unwiderruflich gelöscht. Da E-Mails ja normalerweise bereits ab 5 Punkten als Spam angesehen werden, ist bei dieser Regel noch ein großer Sicherheitsabstand vorhanden. Trotzdem sollten Sie es sich gut überlegen, ob Sie diese Regel auf Ihre E-Mails anwenden wollen.
-
Regel 5: E-Mails mit 'Spam-Status Yes' im Ordner caughtspam ablegen. Die Regel 5 sortiert wie bei Regel 2 die beim persönlichen Spamcheck als Spam erkannte E-Mails (normalerweise mit 5 und mehr Punkten) aus und legt sie in einem eigenen Ordner mit dem Namen
caughtspamab. Die im Ordnercaughtspamabgelegte E-Mail bleibt dort maximal 30 Tage und wird danach automatisch von einem Systemprogramm gelöscht.
ACHTUNG -- Haftungs-Ausschluss:
Weder das HRZ noch die Universität Gießen haften für
Schäden, die Ihnen durch die Anwendung dieser Spamcheck-Regeln entstehen können!
Weitere Hinweise
Bitte beachten Sie beim Einsatz des SpamAssassin unbedingt auch die folgenden Hinweise, damit Ihnen keine erwünschten E-Mails verloren geht:
- Der Spam-Test kann eine E-Mail nur als Werbung klassifizieren, aber ob diese Werbemail unerwünscht ist, müssen Sie selbst entscheiden. Z.B. bieten viele Firmen die Möglichkeit an, einen Newsletter oder ähnliches zu bestellen und sich dazu mit einer E-Mail-Adresse auf einer Webseite registrieren zu lassen. Sie bekommen dann in gewissen Abständen von dieser Firma Werbung per E-Mail zugeschickt, die somit keineswegs unerwünschte Werbung ist, da Sie sie ja selbst abonniert haben. Der Spam-Test wird möglicherweise diese E-Mails als Spam behandeln, wenn Sie keine zusätzlichen Vorkehrungen z.B. mit Einträgen der Absender in Ihre Whitelist treffen.
- Wenn Sie als Spam erkannte E-Mail in dem speziellen Ordner caughtspam sammeln lassen, sollten Sie sich um diesen Ordner eigentlich genauso regelmäßig kümmern wie um Ihren normalen Posteingangs-Ordner (Inbox). Dazu gehört z.B. auch, dass Sie Ihr E-Mail-Programm so konfigurieren, dass Sie mit mehreren Ordnern arbeiten können. Wenn Sie also noch das POP3-Protokoll verwenden, müssen Sie sich auf die Verwendung von IMAP umstellen oder ein Webmail-Programm verwenden. Hinweise des HRZs zur korrekten Konfiguration Ihres E-Mail-Programms finden Sie an anderer Stelle dieses Webservers und unten unter Links.
- Der SpamAssassin ist kein Allheilmittel gegen unerwünschte E-Mail, denn seine Hauptaufgabe besteht in der Erkennung von Werbemails, die auch mit einer sehr hohen Trefferquote erfüllt wird. Trotzdem sind aber immer wieder falsche Klassifizierungen zu beobachten, da die Versender von Spam ständig zu neuen Mitteln greifen, um ihre Botschaften an den Mann zu bringen. Obwohl das Programm und seine Tests ständig weiter entwickelt werden, hinkt es dennoch gelegentlich der Entwicklung hinterher.
- Der SpamAssassin hilft meistens nicht gegen Virus-E-Mails. Die von Viren, die sich per E-Mail ausbreiten, ausgehende Gefahr wird durch den SpamAssassin nicht wesentlich gebannt, da dies nicht seine Aufgabe ist. Bitte wundern Sie sich also nicht, wenn Sie weiterhin merkwürdige E-Mails mit dubiosen Anhängen von Ihnen unbekannten Absendern bekommen, sondern vernichten Sie diese bitte wie bisher einfach weiter selbst.
Beschränkung auf IMAP.HRZ und IMAP.STUD
Leider steht der SpamAssassin nur denjenigen Benutzern des HRZs zur Verfügung, die eine Benutzerkennung für die Posteingangs-Server imap.hrz.uni-giessen.de oder imap.stud.uni-giessen.de haben und sich ihre E-Mail dorthin zustellen lassen. Der Grund dafür ist, dass erst beim Zustellen der E-Mail in den Posteingangs-Ordner (Inbox) eines Benutzers entschieden werden kann, ob der Benutzer diese E-Mail haben möchte, oder ob sie als Spam behandelt werden soll.
Diese Entscheidung kann offensichtlich noch nicht beim Eintreffen der E-Mail auf dem zentralen Mailserver gefällt werden, da dort z.B. bei Verteilern die einzelnen Empfänger noch unbekannt sind, und des weiteren individuelle Wünsche der Benutzer nicht berücksichtigt werden können. Somit ist auch das oft gewünschte "Blockieren von Spam auf dem zentralen Mailserver" leider nicht möglich.
Einrichtung
Am einfachsten lässt sich die Einrichtung des Spamchecks mit dem Webformular Spamcheck-Setup für G-Kennung bzw. Spamcheck-Setup für S-Kennung vornehmen und überprüfen.
Alternativ können Sie sich in speziellen Fällen auch wie im Folgenden beschrieben mit einem Terminal-Programm (z.B. unter Windows mit PuTTY, vgl: SSH, FTP, Samba, X-Window ) auf einer Solaris-Workstation des HRZs einloggen und ein Setup-Kommando aufrufen:
- Eröffnen Sie mit einem Terminal-Programm eine Sitzung mit einer Solaris-Workstation, und
zwar mit dem Rechner
Solcom.hrz.uni-giessen.de(für Benutzer mit G-Kennung) bzw. mitS1.stud.uni-giessen.de(für Benutzer mit S-Kennung) und authentifizieren Sie sich durch Eingabe Ihrer Benutzerkennung und Ihres UNIX-Passworts. -
Sobald die Eingabeaufforderung für UNIX-Kommandos erscheint, können Sie den Spamcheck mit dem folgenden Kommando einrichten:
setupspamcheck [Optionen]Es stehen die folgenden Optionen zur Verfügung:
-l(Buchstabe 'l') Nur Liste der verwendeten Regeln ausgeben-d1Löschen der Regel 1-d2Löschen der Regel 2-d3Löschen der Regel 3-d4Löschen der Regel 4-d5Löschen der Regel 5-i1Einfügen der Regel 1-i2Einfügen der Regel 2-i3Einfügen der Regel 3-i4Einfügen der Regel 4-i5Einfügen der Regel 5-dDebug-Ausgaben-fErzwingt bei inkompatibler Datei.forwardderen Neuerstellung-rLöschen aller Regeln, d.h. der Dateien.forwardund.procmailrcsowie das Verzeichnis.procmail
Beispiel
setupspamcheck -l# Liste der verwendeten Regelnsetupspamcheck -i1 -i2# Wahl der Regeln 1 und 2
Von nun an werden Ihre E-Mails auf dem Posteingangs-Server mit dem Programm Procmail gefiltert, welches anhand
der von Ihnen gewünschten Regeln das Löschen oder die Zustellung von Spam-Mails in den Spam-Ordner mit dem Namen
caughtspam vornimmt und die restlichen "guten" Mails in Ihrem Posteingangs-Ordner ablegt. Dabei wird
ein Protokoll in die Datei .procmail/log geschrieben, aus dem Sie bei Problemen nachvollziehen können,
wann welche E-Mails eingegangen sind und in welchen Ordner sie einsortiert wurden. (Weitere Hinweise zu Procmail
siehe: Filtern von E-Mail mit dem UNIX-Programm Procmail.) Damit die
angesammelte Spam-Mail aber nicht überhand nimmt, löscht das HRZ einmal pro Woche alle E-Mails in den speziellen
Ordnern mit dem Namen caughtspam, die älter als 30 Tage sind.
Whitelists, Blacklists und weitere Optionen
Sie werden eventuell einmal feststellen, dass der Spamcheck eine Fehlentscheidung trifft, da er nicht wissen
kann, welche der Briefe, die wie Werbung aussehen, wirklich unerwünscht sind. Dann können Sie sich den
persönlichen Spamcheck einrichten und ihm mit Hilfe von Whitelist- und Blacklist-Mustern und -Adressen in der
Konfigurationsdatei .spamassassin/user_prefs Ihre speziellen Wünsche mitteilen. Die E-Mails von
Absendern, die mit Whitelist-Mustern oder -Adressen übereinstimmen, werden nicht als Spam klassifiziert. Dagegen
werden Briefe bei Übereinstimmung ihrer Absender mit Blacklist-Angaben immer als Spam eingeordnet. Beispiel:
whitelist_from *@Newsletters.Microsoft.com blacklist_from user@spammer.somewhere.com
Zum Bearbeiten dieser Listen gibt es leider kein webbasierendes Formular. Daher müssen Sie entweder die Datei
.spamassassin/user_prefs mit einem FTP-Programm (File Transfer Protocol, z.B. mit WS_FTP LE unter Windows) von einer der o.a. Solaris-Workstations auf
ihren Rechner übertragen, editieren und wieder zurückschreiben, oder sich wie oben beschrieben auf einer der o.a.
Solaris-Workstations einloggen und dort mit einem UNIX-Editor (nedit, pico, vi o.a.) die Datei
.spamassassin/user_prefs editieren. Anhand der erklärenden Kommentare (das sind die mit # beginnenden
Zeilen) können Sie u.a. den Schwellenwert, Whitelist- und Blacklist-Muster und eigene Punktzahlen für die Tests
eintragen.
Sie können den Schwellenwert ab dem eine E-Mail als Spam angesehen wird mit folgender Zeile in der Datei
.spamassassin/user_prefs einstellen:
required_score n.nn
Voreinstellung ist 5.00
Falls Sie möchten, dass bei einer als Spam klassifizierten E-Mail auch der Betreff (die Subject-Zeile) des
Reports entsprechend markiert wird, können Sie dies durch Hinzufügen der folgenden Zeile in die Datei
.spamassassin/user_prefs bewirken:
rewrite_header Subject ****SPAM(_SCORE_)****
Falls Sie möchten, dass alle E-Mails, die nicht in einem westeuropäischen Zeichensatz geschrieben sind, als Spam
behandelt werden, können Sie dies durch Hinzufügen der folgenden Zeile in die Datei
.spamassassin/user_prefs bewirken:
ok_locales en
Weitere Konfigurationsmöglichkeiten finden Sie z.B. in http://spamassassin.apache.org/doc/Mail_SpamAssassin_Conf.html
Trainieren
SpamAssassin lernt automatisch mit Hilfe eines Bayesian-Klassifizierers, diejenigen E-Mails mit mindestens 12 Punkten
als Spam und solche mit weniger als 0.1 Punkten nicht als Spam sondern als "Ham" angesehen werden und speichert
diese Informationen in einer Datenbank in den Dateien .spamassassin/bayes_* des Benutzers. Falls
E-Mails nicht richtig klassifiziert werden, können Sie den Bayesian-Klassifizierer selbst trainieren. Dazu speichern
Sie die betroffenen E-Mails in einem separaten Ordner und eröffnen -- wie oben beschrieben -- eine Sitzung mit einer
Solaris-Workstation und geben dort eines der folgenden Kommandos ein:
sa-learn --spam --mbox Mail/spam-folder sa-learn --ham --mbox Mail/ham-folder
Deaktivieren
Zum Deaktivieren des persönlichen Spamchecks mit SpamAssassin löschen Sie alle Regeln mit dem Web-Formular oder
eröffnen Sie wie oben beschrieben eine Sitzung mit einer Solaris-Workstation und verwenden das Kommando
setupspamcheck -d1 -d2 -d3 -d4 -d5 oder löschen Sie die Dateien .forward und
.procmailrc sowie das Verzeichnis .procmail in Ihrem Home-Verzeichnis.
