How-To: IMF Best Practice

Howto zur Einrichtung auf Exchange 2007
E2K7 Antispam

Exchange 2003 enthält schon einen sehr umfangreichen Spamschutz, den ich auf den folgenden Seiten beschrieben habe:

Dennoch ist es für den normalen Admin nicht immer einfach die "richtige" Wahl der Mittel zu finden. Diese Seite beschreibt schrittweise ein grundlegendes Setup von IMF für eine normale Umgebung. Bitte überprüfen Sie aber selbst, ob die gemachten Einstellungen noch richtig sind. Gerade RBL-Listen ändern Sich ab und an. Die hier aufgeführten RBL-Listen sind nicht als Empfehlung zu verstehen.

Dieses Dokument beschreibt die folgenden Schritte:

  • Einschalten der Empfängerprüfung
  • Eintragen von RBL-Listen
  • Aktivieren der SCL-Handhabung
  • Einstellen von SPF / SenderID
  • Aktivieren auf dem SMTP-Server

Die Funktion von IMF ist in vielen Fällen nur möglich, wenn Exchange direkt aus dem Internet die Mails annimmt. Sobald ein Relay oder BackupMX davor steht, können Sie nur noch die reine IMF-Funktion mit dem Verschieben in den Junk-E-Mail-Ordner des Benutzers nutzen.

Wenn Sie Exchange direkt am Internet betreiben, dann sollten Sie auf jeden Fall über eine Firewall alle nicht erforderlichen Ports eingehend blockieren. Zum Mailempfang reicht Port 25 TCP eingehend. Ein Virenscanner auf dem Exchange ist quasi Pflicht.

Wenn Sie zwischen Exchange und Internet dennoch weitere aktive Systeme betreiben, dann müssen Sie diese Systeme danach auswählen, wie gut diese ihren Anforderungen nach einem Schutz gegen Spam entsprechen. Ein Sonderfall sind SMTP-Proxies wie z.B. NoSpamProxy, welche durchaus vor Exchange arbeiten können, aber die "Ablehnen"-Funktion von Exchange dennoch möglich ist. Solche Systeme sind kein Relay mit "Store and Forward" und können ihrerseits die Mail dann ebenfalls ablehnen.

Einschalten der Empfängerprüfung

Eine der wichtigsten Funktionen eines Mailsystems ist es, Nachrichten an ungültige Empfänger erst gar nicht anzunehmen. Dies spart nicht nur Datenvolumen, sondern ihr Server muss auch keine unzustellbarkeiten erstellen (Gefahr von NDR Spamming).

Achtung: Diese Einstellung verhindert so genannte "CatchAll oder "CatchUnknown"-Funktionen

Dazu müssen Sie den Exchange System Manager nehmen und in den globalen Einstellungen eine kleine Checkbox setzen:

Diese Einstellung wird aber noch nicht aktiv. Dies muss später pro virtuellem SMTP-Server aktiviert werden. Dazu später mehr. Optional können Sie hier aber auch noch bestimmte Empfänger von extern blockieren, z.B. Funktionspostfächer, die nicht extern erreichbar sein sollen. Diese Adressen sind dann nur noch erreichbar, wenn die Mail intern oder mit einer Anmeldung (SMTP authentifiziert senden) oder über einen SMTP-Server ohne aktiven Filter eingeliefert werden.

Diese "Ablehnen-Funktion" bei ungültigen Empfängern dürfen Sie nur aktivieren, wenn die Mails direkt auf ihrem System über den MX-Record per TCP zugestellt werden. Gibt es einen "Backup-MX" oder ein SMTP-Relay zwischen Internet und ihrem Exchange Server, dann führt diese Einstellung dazu, dass ihr Relay vor Exchange die Mail nicht senden kann und einen NDR erstellt. Generell gilt: Dies Systeme, auf welche die MX-Records verweisen, müssen die Empfänger prüfen.

Gegebenenfalls müssen Sie daher prüfen,. ob Sie auf diesem Relay eine Empfängerprüfung aktivieren können. Eine Liste der Mailadressen können Sie z.B.: einfach per VBScript erstellen lassen.

  • VBS:SMTPList
    VBScript zum erzeugen eine Liste der Empfänger
  • RCPTTO
    Beschreibung, wie z.B. Postfix mit einer generierten Liste aus dem AD als Relay vor Exchange eingesetzt werden kann

Eintragen von RBL-Listen

Eine zweite sehr effektive Methode ist die Nutzung von RBL-Listen. Dies sind meist DNS-Server im Internet, welcher Listen mit "schlechten" IP-Adressen führen. So werden oft IP-Adressen von Wählverbindungen oder DSL-Privatkundenverbindungen hier aufgeführt. Von solchen Systemen werden in der Regel keine Mails versendet, da Firmen entweder eine feste qualifizierte Adresse haben und Privatkunden über ihren Provider als Relay senden sollten. So blockiert man schon mal Viren, Würmer und Trojaner, die solche Privatcomputer gekapert haben.

Für die Funktion ist es erforderlich, dass Exchange per DNS Namen im Internet auflösen kann

Die Liste der gewünschten RBL-Anbieter müssen Sie allerdings selbst pflegen.

Ich habe aktuell mit folgenden n RBL-Listen relativ gute Erfahrungen gemacht.

Anzeigename DNS-Suffix des Anbieters Benutzerdefinierte Meldung Web Lookup

AHBL

dnsbl.ahbl.org

 

http://www.ahbl.org/tools/lookup.php

Blitzed Open Proxy Monitor List Combined

opm.blitzed.org

 

http://blitzed.org/proxy/?ip=[IP]

CBL Composite Blocking List

cbl.abuseat.org

 

http://cbl.abuseat.org/lookup.cgi?ip=[IP]

Distributed Server Boycott List (Single)

list.dsbl.org

 

http://dsbl.org/listing?[IP]

Not Just Another Bogus List (NJABL Combined List)

combined.njabl.org

 

http://www.njabl.org/cgi-bin/lookup.cgi?query=[IP]

Passive Spam Block List

psbl.surriel.com

 

http://psbl.surriel.com/cgi-bin/listing.cgi?ip=[IP]&action=Check+IP

SpamCop

bl.spamcop.net

 

http://www.spamcop.net/w3m?action=checkblock&ip=[IP]

Spamhaus SBL+XBL (Combined)

sbl-xbl.spamhaus.org

 

http://www.spamhaus.org/

ORDB

NICHT MEHR VERWENDEN. BETRIEB EINGESTELLT

 

www.ordb.org

Allerdings variiert die Qualität der Listen sehr stark. So kann es schon mal passieren, dass auch Firmen wie GMX auf diesen Listen landen. So listet "Passive Spam Block List" einfach alle Systeme, die eine Mail in ihre "Spamfalle" gesendet haben. Wenn ich als Spammer nun z.B.: mit einem legitimen GMX-Account absichtlich eine Mail an diese Falle sende, dann ist der GMX-Server gelistet. Wenn viele Systeme dann diese Liste prüfen, dann wie GMX seine Mails nicht mehr los. Hier hängt es dann davon ab, wie schnell der Betreiber solche absichtlichen Störungen manuell wieder beseitigt.

Dies ist eine der Grenzen der Exchange Lösung. Sobald eine IP auf einer der konfigurierten Listen steht, wird die Verbindung abgelehnt. Intelligenter habe ich das bei NoSpamProxy gelöst, welcher die Listen einzeln gewichten kann und eine Schwelle erreicht sein muss. Und selbst kann kann die Mail passieren, wenn andere Kriterien diese positiv bewerten.

Aktivieren der SCL-Handhabung

Neben den RBL-Listen und den Empfängerprüfungen enthält Exchange noch einen "Inhaltsfilter", der anhand von Worten etc. versucht die Mail zu bewerten und mit einem SCL (Spam Confidence Level) zu versehen. Auch dieser Filter ist in der Regel sehr effektiv und kann eingesetzt werden.

Natürlich müssen Sie sich hierbei ein Stück weit auf die "Datenbank" von Microsoft verlassen, welche zwar schon sehr gut ist, aber sich dennoch irren kann. Daher sind konservative Werte von "8" zum Ablehnen und "6" zum Verschieben nach "Junk-E-Mail" zumindest am Anfang angebracht.

"Ablehnen" dürfen Sie nur, wenn ihr Exchange direkt die Mails aus dem Internet annimmt. Sobald ein Relay oder ein  Backup-MX davor existiert, sollten Sie nicht mehr ablehnen (Siehe auch NDR Spamming)

Die "Verteilung" der Bewertung der Mails können Sie übrigens über den Windows Performance Monitor einsehen (Siehe auch Intelligent Message Filters

Es gibt keine Möglichkeit, diese Einstellungen pro Benutzer, Gruppe,  Datenbank oder Server individuell einzustellen. Alle Empfänger der gesamten Organisation werden gleich behandelt. Ausgefeiltere Regelwerke sind mit Drittprodukten wie z.B.

NoSpamProxy möglich.

Einstellen von SPF / SenderID

Seit einigen Jahren können Firmen im Internet ihre ausgehenden Mailserver veröffentlichen. Würden alle Firmen dies korrekt tun und alle Mailserver diese Informationen überprüfen, dann wäre zwar das Thema Spam noch nicht erledigt, aber die Fälschung von Absendern ungleich schwerer und Empfänger nicht mehr auf angebliche Mails von ihrer Bank, Paypal, eBay etc. hereinfallen.

Exchange 2003 kann diese Informationen prüfen und die Mail ablehnen, wenn die einliefernde IP-Adresse niciht mit den veröffentlichten Einstellungen übereinstimmt.

Aktuell empfehle ich, die Mails noch anzunehmen. Löschen ist sowieso keine Option aber zum Ablehnen fehlen aktuell noch die korrekten Einstellungen bei zu vielen Domains,. Zwar veröffentlichen viele Firmen mittlerweile ihre SenderID-Daten (Siehe auch SPF/CallerID), aber kaum Firmen legen darin auch fest, dass Mails von anderen Adressen abgelehnt werden.

Aktivieren auf dem SMTP-Server

Damit nun all die schönen Einstellungen wirksam werden, müssen Sie nun auf jedem virtuellen SMTP-Server, welcher Mails von nicht vertrauenswürdigen Quellen wie dem Internet aber auch anderen öffentlich zugängliche Netzen in ihrer Firma annimmt, den Filter aktivieren.

Erst dann werden alle eingehenden SMTP-Verbindungen, die nicht mittels SMTP authentifiziert senden, entsprechend überprüft.

Globale Allowlisten und Blocklisten für IP-Adressen

Nun kann es natürlich sein, dass Sie "vertrauenswürdige" Absender haben, deren Mails die immer zugestellt werden müssen. Das können interne Sender (z.B. Kopierer, Faxserver etc.) sein oder "befreundete" Mailserver von Partnern, die per VPN eine Verbindung aufbauen oder auch einfach der Provider, der als Relay ihre Mails annimmt und nach eine Viren- und Spamprüfung an sie weiter sendet. Hier wäre es kontraproduktiv, wenn IMF die Mails gar ablehnen würde.

In den globalen Einstellungen können Sie solche Systeme mit der IP-Adresse fest hinterlegen, so dass deren Mails immer passieren dürfen oder blockiert werden. 

Statische Listen sind allerdings immer ein Stück weit unflexibel und keineswegs "sicher". Sie vertrauen damit einem Netz oder einem Host, ohne den einzelnen Prozess zu können. Es gibt Beispiele, dass Spammer sich abends einfach die IP-Adresse eines ausgeschalteten Druckers nehmen, um ihre Mails zu verteilen (Siehe die unzustellbarkeit einer Mail eines HP4500 NDR Spamming unter "www.unict.it".

Jeder, der sich erfolgreich an Exchange "authentifizieren" kann, wird ohne weitere IMF-Prüfung passieren lassen, da er ja sogar namentlich bekannt ist. Diesem Zugang über Dienstkonten finde ich viel sympathischer, da man so auch einzelne Verwendungen wieder sperren kann.

Greylisting

Exchange 2000/2003 kann leider nicht die Funktion eines Greylistings unterstützen. Aber auf der Webseite von C. JärnÃ¥ker findet sich eine DLL, die genau diese Funktion in den Windows SMTP-Server nachrüstet.

Auch wenn ich selbst eher kritisch der Funktion Greylisting gegenüberstehe, kann es sicher noch einige Zeit ein nützlicher zusätzlicher Filter sein. Bedenken Sie aber, dass jede erste Kommunikation erst mal verzögert wird.

IMF und mehrere Server

Wenn Sie nun nicht genau einen Server haben, sondern ihre Infrastruktur zwischen den SMTP-Servern, die Mails von anonymen Quellen annehmen und Postfachservern unterscheidet, dann müssen Sie dennoch auf allen Servern IMF installieren bzw. das Exchange 2003 SP2 installiert haben.

Allerdings sollten Sie die Einstellungen, die den virtuellen SMTP-Server betreffen nur auf den Servern aktivieren, die die Mails aus dem Internet annehmen. Eine Aktivierung auf internen Servern könnte nur bezüglich der Verbindungsfilter (RBL-Liste etc.) störend sein. Alle anderen Filter kommen nicht zum Einsatz, da die Exchange Server untereinander sich authentifizieren

Die SMTP-Filter können Sie übrigens nicht auf einem Exchange Cluster aktivieren. Aber beim Einsatz eines Clusters ist ja es sowieso ratsam, eigene Connectorserver zu betreiben. auf denen dann die Einstellungen durchgeführt werden können.

Weitere Links