zum Hauptinhalt

buntklicker.de

das Blog von Martin Ibert: Merkwürdiges, Banales und Persönliches aus Deutschlands einziger Stadt

22.07.2007: Kampf dem Dosenfleisch!

Wie wohl jeder andere auch, der schon eine Weile im Netz unterwegs ist, werde auch ich ständig mit Spam beworfen. Mittlerweile habe ich allerdings eine recht ausgefeilte, mehrstufige Verteidigung aufgebaut, die zwar nicht fehlerfrei, aber doch recht gut funktioniert und das Spamaufkommen auf ein erträgliches Maß reduziert.

Die im folgenden beschriebenen Maßnahmen geben den Ist-Stand wieder und sind nicht im Sinne einer allgemeinen Empfehlung zu verstehen.

Die erste Verteidigungslinie befindet sich auf den Mailservern, auf die die MX-Einträge meiner Domains verweisen. Das sind drei virtuelle Root-Server, die ich vollständig kontrolliere. Das ist wichtig, denn nur so kann ich die Konfiguration des MTA und den Einsatz der „Schwarzen Listen“ steuern. Wer seine Mail vom Provider entgegennehmen läßt, selbst wenn dieser nur als Sekundärserver fungiert, muß sich auf dessen Abwehrmaßnahmen verlassen. Ich mache das lieber selbst.

Der Nachteil der Schwarzen Listen ist natürlich, daß man Anderen die Entscheidung darüber überläßt, von welchen Rechern im Internet man Mail entgegennehmen will und von welchen nicht. Auch und gerade bei Spamhaus ist das eine Entscheidung, die man auch im Lichte jüngster Ereignisse nicht leichtfertig treffen sollte. Dennoch ist die Schwarze Liste von Spamhaus so effektiv, daß ich darauf nicht verzichten will.

Hier die Liste der Schwarzen Listen, die ich zur Zeit einsetze:

  1. sbl-xbl.spamhaus.org
  2. bl.spamcop.net
  3. list.dsbl.org
  4. dynablock.njabl.org

Allerdings kommt es immer wieder vor, daß der österreichische Breitbandprovider Chello auf einer dieser Listen landet. Da ich von Chello jedoch Mails empfangen will, habe ich eine eigene Weiße Liste aufgebaut, die vor den Schwarzen Listen abgefragt wird und alle mir bekannten Mailserver von Chello enthält.

Folgende Listen beobachte ich und überlege, ob ich sie auch einsetzen kann. Zur Zeit werden diese Listen zwar abgefragt, es wird aber nur eine Warnung in den Kopf der Nachricht eingefügt, statt die Annahme zu verweigern:

  1. dnsbl-1.uceprotect.net
  2. ix.dnsbl.manitu.net
  3. multihop.dsbl.org
  4. psbl.surriel.com
  5. unconfirmed.dsbl.org

Als MTA ist übrigens bei mir ausschließlich Exim im Einsatz. Exim ist zugleich sehr mächtig und ziemlich einfach zu konfigurieren. Und er kann viele unerwünschte Kontakte schon dadurch abfangen, daß er Protollverletzungen gnadenlos ahndet. Da viel Spam von schlampig programmierten Schadprogrammen auf gekaperten Privatrechnern kommt, sind solche Protokollverletzungen häufig. Echte Mailserver dagegen halten das SMTP ein.

Sehr wichtig ist es, dieselben Abwehrstrategien auf allen Mailservern einzusetzen. Spam läuft nämlich durchaus nicht nur auf dem primären, sondern auch auf den weiteren MXen auf.

Ich nehme grundsätzlich nur Nachrichten für real existierende Adressen an. Es kommt viel Müll für frei erfundene Adressen (wie moises.c.souza@ibert.com, eine Adresse, die schon seit vielen Jahren dauernd vollgemüllt wird) hier an. Alle Mailserver haben eine tagesaktuelle Liste aller gültigen Adressen in den Domains, für die sie zuständig sind.

Ganz dreist finde ich es, mir im HELO-Befehl meine eigene Adresse oder Domain anzubieten. Wer mit SMTP nicht so vertraut ist: Da gehört die Adresse des sendenden Rechners hin, nicht die des empfangenden (also meine). Wer das versucht, von dem nehme ich auch keine Mails entgegen.

Alle bisher beschriebenen Maßnahmen zusammen lassen grob gesagt etwa 1000 Zustellversuche am Tag, verteilt auf drei Mailserver, scheitern, rund die Hälfte davon aufgrund der Schwarzen Liste von Spamhaus. Diese Mails werden gar nicht erst entgegengenommen, sondern aktiv abgelehnt (RCPT scheitert).

Jede Nachricht, die diese Hürde genommen hat, wird dann noch zunächst mit Bogofilter und SpamAssasin gefiltert. Bogofilter ist ein Binärprogramm und verbraucht wesentlich weniger Rechenzeit und Speicher, weswegen ich nur solche Nachrichten noch mit dem Perlprogramm SpamAssassin filtere, die Bogofilter nicht schon ausgesondert hat.

Alle Nachrichten, die dadurch als Spam erkannt wurden, landen in einem eigenen Ordner, den ich regelmäßig auf Fehldetektionen (sind sehr selten, kommen aber vor) untersuche. Sowohl die korrekt identifizierten als auch von den Filtern übersehenen Spam-Mails werden dann beiden Filtern zum Lernen vorgeworfen.

Schließlich hat auch noch mein Mail-Client Thunderbird einen eingebauten Filter, den ich aber primär als Hilfestellung beim Erkennen von Fehldetektionen im Spam-Ordner verwende.

Und wie macht Ihr das so? Erzählt doch mal.

eine Antwort auf „Kampf dem Dosenfleisch!“

  1. von Gibt's doch gar nicht am 29.08.2007:

    Du kommst hier nicht rein…

    Die letzten Wochen habe ich wegen der ansteigenden Spamwelle (siehe auch hier) das Setup meines Mailservers Stück für Stück immer weiter hochgerüstet, um nicht mehr jeden Tag von der schieren Anzahl der Spams erschlagen zu werden.
    Wie auch schon bu…

Hinterlasse einen Kommentar!