Serie: Content Security mit Open Source, Teil 2

Linux-Gateway gegen Spam und Viren

4. August 2008, 22:00 Uhr | Martin Puaschitz/wj

Wer einen E-Mail-Server betreibt, kann die Spam-Thematik und das Risiko von Viren in E-Mails nicht ausklammern - zu groß sind die Gefahren und der mögliche Unmut der Benutzer. Einen preiswerten Lösungsansatz bietet die Open-Source-Gemeinde. Im zweiten Teil unserer Serie über den Aufbau eines Antiviren-, Anti-Spam- und Anti-Phishing-Systems auf Linux-Basis geht es um Konfigurationsaufgaben und Inbetriebnahme.

Als nächsten Schritt unseres Gateway-Aufbaus muss das Paket "Mailscanner" konfiguriert werden. Hierzu sind zumindest in /etc/MailScanner/MailScanner.conf die unten angegebenen Werte korrekt zu setzen. Es hat allerdings bei jeder Konfiguration Sinn, sich in Ruhe die restlichen Optionen anzusehen: Hier können Werte wie die Sensibilität von Spamassassin, der einzusetzende Virenscanner, automatisches Entpacken von TNEF-Dateien (winmail.dat, win.dat - beispielsweise interessant bei ausgehendem E-Mail-Verkehr zu Personen, die nicht Outlook nutzen), automatische Whitelists, wiederkehrende Textbausteine unter jeder E-Mail, Stichwortfilter, Verhindern der Übertragung komprimierter oder verschlüsselter Dateien, Archivierung aller E-Mails (ausgenommen interner Nachrichten) und vieles mehr gesetzt werden.

MTA = exim

Sendmail = /usr/sbin/sendmail

Sendmail2 = /usr/sbin/sendmail -DOUTGOING

Virus Scanners = clamav

%org-name% = YourCompany

%org-long-name% = Your Company’s Full Name

%web-site% = www.mycompany.com/mailscanner/info/page.html

Run As User = Debian-exim

Run As Group = Debian-exim

Incoming Queue Dir = /var/spool/exim4_incoming/input

Outgoing Queue Dir = /var/spool/exim4/input

Aufmerksame Leser haben eventuell einen Unterschied in den Queue-Pfadnamen der Exim- und der Mailscanner-Konfiguration entdeckt. In der Exim-Konfiguration ist /var/spool/exim4 hinterlegt, bei Mailscanner jedoch /var/spool/exim4/input. Dieser Unterschied ist korrekt und zeigt nur auf, dass die Programme unterschiedliche Pfade im Dateisystem benötigen.

Spamassassin konfigurieren

Als Nächstes nehmen wir die Spam-Erkennung in Betrieb. Hierfür kommt Spamassassin zum Einsatz. Spamassassin prüft eingehenden Nachrichten auf eine Vielzahl von Merkmalen, darunter, ob bestimmte Stichwörter auftreten, ob das Datum inkorrekt gesetzt ist oder ob der Betreff leer ist. Alle Einzelpunkte werden zum "Spam-Score" addiert. Wenn der Spam-Score einer Nachricht höher ist als ein vorab eingestellter Wert, wird die Nachricht als Spam klassifiziert. Die notwendigen Einstellungen für Spamassassin werden in /etc/MailScanner/ spam.assassin.prefs.conf getroffen. Suchen Sie den folgendem Absatz und tauschen Sie "X-MyCompany" durch Ihre Einträge aus /etc/MailScanner/MailScanner.conf aus:

bayes_ignore_header X-MyCompany-MailScanner

bayes_ignore_header X-MyCompany-MailScanner-SpamCheck

bayes_ignore_header X-MyCompany-MailScanner-SpamScore

bayes_ignore_header X-MyCompany-MailScanner-Information

Clamav konfigurieren

Clamav bedarf grundsätzlich keiner weiteren Konfiguration, auch die Virensignaturen werden dank des beigelegten Pakets "freshclam" automatisch auf den neuesten Stand gebracht; als Standardwert sind 24 Updates pro Tag definiert, was allerdings in /etc/clamav/freshclam.conf beliebig abgeändert werden kann.

Tipp: Es ist auch möglich, mehrere Virenscanner einzusetzen. Dies ist insbesondere hinsichtlich der höheren Trefferquote als auch der Ausfallswahrscheinlichkeit eines Virenscanners interessant. Kommerzielle Angebote wie von Kaspersky können mit weiteren freien Scannern kombiniert werden. Beachten Sie jedoch, dass sich die Scandauer hierdurch abhängig von der Hardwareleistung entsprechend erhöhen kann und die E-Mails deshalb länger auf die Zustellung warten müssen.

Abschlussarbeiten

Zur Sicherheit sollten zum Schluss noch die Berechtigungen geprüft werden, indem man chown -R Debian-exim:Debian-exim für folgende Verzeichnisse ausführt:

/var/lib/Mailscanner

/var/run/MailScanner

/var/spool/MailScanner

/var/spool/exim4_incoming/

/var/spool/exim4/

/var/lock/subsys/MailScanner

Daraufhin ist die Grundkonfiguration abgeschlossen. Der nächste Schritt ist die Aktivierung der entsprechenden Module. Hierzu muss die Variable "run_mailscanner" in /etc/default/mailscanner sowie "ENABLED" in /etc/default/spamassassin auf "1" gesetzt sein. Nun lässt sich das System mit den beiden Startbefehlen /etc/init.d/exim restart sowie /etc/init.d/Mailscanner restart in Betrieb nehmen.

Testen der Komponenten

Die neuen Funktionen sollten nach Beenden der Konfiguration noch getestet werden. Der Exchange-Server ist bereits daraufhin konfiguriert, dass externe E-Mails dem Mail-Gateway zugestellt werden, daher lassen sich diese Nachrichten (sofern welche versendet werden) bereits in den Log-Files auf dem Mail-Gateway mit tail -f /var/log/exim/mainlog nachvollziehen. Des Weiteren kann man aus der Konsole mit mail email@adresse.domain (apt-get install mailx) das gesamte Mail-System per Befehl testen. Selbstverständlich sollte auch ein Praxistest mit einer externen E-Mail-Adresse durchgeführt werden.

Um die Antivirenlösung zu testen und trotzdem keinen Schaden anzurichten, kann der EICAR-Testvirus verwendet werden. Schicken Sie hierzu ein E-Mail mit dem Testvirus durch das Mail-Gateway und prüfen Sie parallel /var/log/syslog - hier sollte Mailscanner die Datei als Virus erkennen und je nach gewählter Einstellung handeln.

Management

Jede gute Lösung benötigt ein gutes Management-Tool. In der bisherigen Konfiguration müssen in Quarantäne abgelegte E-Mails von Hand in den entsprechenden Verzeichnissen gesucht und extrahiert werden. Um zu prüfen ob (und warum) eine E-Mail im Spam-Filter hängen geblieben ist, ist es notwendig, Log-Files einzeln zu durchsuchen. Zur Abhilfe gibt es allerdings auch ein passenden Open-Source-Produkt: "Mailwatch". Damit lassen sich alle gescannten E-Mails überwachen und/oder freigeben, die Quarantäne pro Tag einsehen sowie diverse Statistiken abrufen.

Alle hier erwähnten Tools sind Open Source und lassen sich somit kostenlos einsetzen. Anwender müssen aber auf die jeweiligen Lizenzmodelle achten, insbesondere bei Anpassung der Software. Ansonsten sind lediglich die Kosten für Hardware und Strom zu tragen.

Fazit

Exim kann mit dem Komponenten Mailscanner, Clamav, Spamassassin und Mailwatch zu einem leistungsfähigen und stabilen automatischen Antiviren-, Anti-Spam- und Anti-Phishing-System ausgebaut werden. Negativ zu verbuchen ist der Arbeits- und Wartungsaufwand, wobei sich letzterer auch bei Systemen mit höheren Lasten aus eigener Erfahrung in Grenzen hält - sofern stabile Hardware (Raid, USV und so weiter) eingesetzt wird.


Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Lampertz GmbH & Co. KG

Matchmaker+