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.
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 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.
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.
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.
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.
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.