Open Source im professionellen Einsatz

Exim gegen Mail-Relaying, Spam und Viren absichern

Schleudertrauma

Ein Open Relay zu konfigurieren ist das Schlimmste, was ein Mailserver-Admin anstellen kann. Spammer finden es umgehend und machen den MTA zur Dreckschleuder. Anhand von Exim sei hier eine Verhütungsstrategie erklärt, Clam AV und Spamassassin halten alle anderen Unannehmlichkeiten auf Distanz.

Das Medium E-Mail bildet zugleich ein Einfallstor für unangenehme Erscheinungen wie Spam und Viren. Schlimm genug, dass sich der Admin der Folgen erwehren muss. Keinesfalls sollte er durch Nachlässigkeit selbst zum Täter werden - eine probate Form der Ignoranz wäre es, den eigenen Mailserver als Open Relay zu betreiben.

Durchfallgefahr

Zum Open Relay wird ein Mailserver, wenn über ihn Mail laufen darf, obwohl er weder für die Empfänger- noch die Absender-Domain zuständig ist (Abbildung 1). Spammer entdecken und missbrauchen offene Mailrelays sehr schnell. Am Ende landet die IP-Adresse des Servers in speziellen Antispam-Datenbanken, den so genannten Realtime Blackhole Lists.

Abbildung 1: So sollte es nicht sein: Über das offene Mailrelay läuft auch Mail, für die der Mailserver weder die Empfänger- noch die Absender-Domain ist.

Abbildung 1: So sollte es nicht sein: Über das offene Mailrelay läuft auch Mail, für die der Mailserver weder die Empfänger- noch die Absender-Domain ist.

Viele von Spam geplagte MTAs binden gern solche RBLs ein, mit der Konsequenz, dass sie alle E-Mails des offenen Relay-Servers abweisen. Hat der betroffene Admin den Fehler behoben, kann er nur beten, dass ihn alle RBLs automatisch austragen. Klappt das, vergehen oft bis zu 24 Stunden, bis sein Server wieder salonfähig ist.

MTA richtig konfigurieren

Im Folgenden sei am Beispiel von Exim [http://www.exim.org] erläutert, wie ein MTA sicher gegen Missbrauch gestaltet sein soll. Die Konfiguration in der »/etc/exim.conf« gliedert sich in mehrere Abschnitte (Abbildung 2). Mit Version 4 hat in Exim der Abschnitt ACL Einzug gehalten. Alle sicherheitsrelevanten Einstellungen, die mehrheitlich zuvor im Router-Abschnitt residierten, finden sich jetzt in ACL, mit eigener Syntax und eigenem Regelsatz - Firewallregeln nicht unähnlich. [2]

Abbildung 2: Die Konfigurationsdatei von Exim gliedert sich in Abschnitte. Mit Version 4 hat dort eine ACL-Sektion Einzug gehalten, in deren Unterabschnitten der Admin wiederum das SMTP-Handling regelt und Clam AV und Spamassassin einbindet.

Abbildung 2: Die Konfigurationsdatei von Exim gliedert sich in Abschnitte. Mit Version 4 hat dort eine ACL-Sektion Einzug gehalten, in deren Unterabschnitten der Admin wiederum das SMTP-Handling regelt und Clam AV und Spamassassin einbindet.

Der ACL-Abschnitt besteht wieder aus Unterabschnitten, die den Ablauf eines SMTP-Dialogs widerspiegeln (siehe auch [http://www.exim.org/exim-html-4.63/doc/html/spec_html/ch07.html#id2545170]). Das Listing 1 zeigt einen SMTP-Dialog ohne SMTP-Authentifizierung, vergleichbar zu dem im Prävention-Artikel Gesagten. Nachdem sich der Absender- mit dem Empfänger-Server verbunden hat, meldet sich der Empfänger mit dem Code »220« und seinem Namen. Daraufhin stellt sich der Absender-Server vor und dann mit »250« der Empfänger nochmals. Nach dieser Einleitung übermittelt der Sender die eigentlichen E-Mail-Daten, zuerst die Envelope-Adresse »MAIL FROM:«, dann die Envelope-Adresse »RCPT TO:«. Beide bestätigt der Empfänger mit »250 ok«.

Mit dem Kommando »DATA« kündigt der Absender die eigentliche Nachricht an. Der Empfänger erkennt das Textende anhand eines Punktes, bestätigt mit »250 Mail delivered« den Empfang und beschließt mit »QUIT« den Dialog. An den einzelnen Stationen des SMTP-Dialogs setzen nun die ACL-Optionen aus Tabelle 1 an, prüfen zum passenden Zeitpunkt die einlaufenden Daten und lösen entsprechende Aktionen aus, siehe Abbildung 3.

Tabelle 1:
ACL-Optionen

 

ACL-Option

Beschreibung

acl_smtp_auth

Zum Zeitpunkt der SMTP-Authentifizierung

acl_smtp_connect

Bevor die SMTP-Verbindung aufgebaut ist

acl_smtp_data

Nachdem die E-Mail-Daten übertragen wurden

acl_smtp_helo

Nachdem das Kommando »HELO« übertragen
wurde

acl_smtp_mail

Zum Übertragungszeitpunkt von »MAIL
FROM:«

acl_smtp_mime

Zum Übertragungszeitpunkt der E-Mail-Anhänge

acl_smtp_rcpt

Zum Übertragungszeitpunkt von »RCPT TO:«

Abbildung 3: Der SMTP-Dialog

Abbildung 3: Der SMTP-Dialog

Um den Server gegen Mail-Relaying abzusichern, genügt meist eine Standardkonfiguration, die die Option »acl_smtp_rcpt« verwendet. Denn von diesem Zeitpunkt ab liegen alle Informationen vor, um die E-Mail zu akzeptieren oder abzuweisen. Eine auf die ACL-Option angesetzte Regel kann dann eine der Aktionen in Tabelle 2 auslösen und so Annahme oder Verweigerung der einlaufenden Mail steuern.

Tabelle 2: Aktionen
auf eine Regel

 

Schlüsselwort

Beschreibung

accept

Trifft die Regel zu, wird die E-Mail akzeptiert, andernfalls
geblockt.

deny

Trifft die Regel zu, nimmt Exim die E-Mail nicht an.

require

Wenn die Regel zutrifft, geht die Überprüfung an die
nächste Regel weiter. Andernfalls verweigert Exim die
Annahme.

warn

Trifft die Regel zu, erscheint ein Warnhinweis im Header.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook