Howto: MailScanner Tuning unter Debian Etch
Ich nutze zum Aufspüren von Spam und Viren MailScanner in Verbindung mit Postfix auf unserem Mail-Gateway. Täglich gehen hier etwa 20.000 Emails durch, die gescannt werden müssen. Etwa fünfmal soviel, also ca. 100.000 Nachrichten, scheitern schon an dem Greylisting. In der Mail Rush-Hour kann es schon mal eng werden auf dem Server. Wenn mehrere Hundert Mails in der Queue warten, ist dann in aller Regel der MailScanner der Flaschenhals.
Aus diesem Grund habe ich die Einstellungen vom MailScanner in der Konfigurationsdatei /etc/MailScanner/MailScanner.conf ein wenig angepasst, um die beste Performance zu erzielen. Zuerst habe ich die Anzahl der gleichzeitigen MailScaner Prozesse verringert – manchmal ist weniger eben doch mehr:
[sourcecode language="css"]Max Children = 2[/sourcecode]
Das Scan Intervall für die Postfix incoming-Queue habe ich erhöht, da es keinen Sinn macht jede Sekunde nach neuen Mails zu schauen, wenn die aktuelle Warteschlange noch nicht abgearbeitet worden ist.
[sourcecode language="css"]Queue Scan Interval = 10[/sourcecode]
Ein großer Perfomanceschub bringt die Anpassung folgender Variablen, die allesamt die maximalen Werte nicht bearbeiteter Emails pro Scanvorgang definieren:
[sourcecode language="css"]Max Unscanned Bytes Per Scan = 10000
Max Unsafe Bytes Per Scan = 50000
Max Unscanned Messages Per Scan = 10
Max Unsafe Messages Per Scan = 10[/sourcecode]
Wer Spam Blacklists (RBL) einsetzt, sollte diese auf ein Minimum reduzieren oder ganz auf die Prüfung verzichten. Ich verwende beispielsweise keine RBL-Ergebnisse, da ich hier zu viele False-Positive-Ergebnisse erhalte.
[sourcecode language="css"]Spam List =[/sourcecode]
Neben dem Anpassen der Konfiguration kann ein großer Performanceschub durch die Verwendung einer RAM-Disk erzielt werden. MailScanner entpackt die Mails per default in das Verzeichnis /var/spool/MailScanner/incoming um diese zu scannen. Mountet man eine RAM-Disk anstatt der Festplatte in dieses Verzeichnis, kann der Scanvorgang beschleunigt werden.
[sourcecode language="css"]mount /dev/ram0 /var/spool/MailScanner/incoming -t tmpfs -o size=32m[/sourcecode]
Natürlich sollte ein entsprechender Eintrag in die /etc/fstab nicht vergessen werden, damit das Verzeichnis beim nächsten Reboot korrekt eingebunden wird.
[sourcecode language="css"]/dev/ram0 /var/spool/MailScanner/incoming tmpfs size=32m 0 0[/sourcecode]
All diese Maßnahmen haben den Scanvorgang auf dem Mail-Gateway stark beschleunigt, so dass es auch in Soßzeiten nicht zu Engpässen kam. Auch ging die Systemlast stark herunter, so dass der Load nur selten über 1 geht.



Michél
Hallo!
Google zeigte mir den Weg zu dir.
Du nutzt Debian Etch -> Postfix -> Mailscanner + Mailwatch, richtig?
HAst du Mailscanner über apt installiert?
PS: Die Seite ist echt schön gestaltet…
matthias
Ja, habe ich ganz normal per apt bzw. aptitude installiert. Mailwatch musste ich per Hand installieren.
Michél
Also wenn es dir recht ist, wer ich mal hier um Hilfe bitten.
Bei einen nackten System,
aptitude install postfix
aptitude install mailscanner
bekomme ich es nicht zum rennen.
Ich habe es auch mal mit exim getestet aber da bekomme ich den gleichen Fehler nur mit einen anderen Namen:
/etc/init.d/mailscanner: directory /var/spool/MailScanner: wrong owner (expected Debian-exim but is mail)
(Mit Postfix hätte ich halt “postfix but is mail” stehen.
drwxr-x— 2 Debian-exim Debian-exim 4096 2007-07-24 20:34 incoming
drwxr-x— 2 Debian-exim Debian-exim 4096 2006-12-12 14:50 quarantine
Wie gesagt, ich hatte es auch mit postfix. Vielleicht bin ich jetzt einfach daneben aber bei mir klappt es nicht- komischerweise mit ubuntu schon!
Habe, soweit ich sehen kann, alles befolgt wie es hier z.B. steht:
http://www.mailscanner.info/install/postfix.shtml
Naja, solltest du Zeit und Lust haben, kannst du ja mal was posten.
thx
Michél
Guten Morgen Matthias,
sehe das Problem als gelöst. Da Mailscanner auf Exim ausgelegt ist, waren da noch einige andere Ordner, wo ich den Nutzer ändern mußte.
Nutzt du MCP?
Wofür gibt es denn noch die “mailscanner.conf.with.mcp” wenn im Grunde alles in der MailScanner.conf steht.
Danke
matthias
Hallo,
MCP nutze ich derzeit nicht. Ich nutze noch andere Möglichkeiten, um dem Spam Herr zu werden. MailScanner alleine reicht da leider nicht bzw. lastet den Server dann doch zu schnell bei hoher Maillast aus.
Stefan
Dickeren Server kaufen?
Amavis?
matthias
Ja – Amavis kommt evtl. bald mal. Nächste Woche mal auf einem Backup MX testen
chris
DANKE!
Deine Tipps haben meinen Mailscanner vom Durchschnittlichen Load von 18 auf 1-2 runtergebracht (600’000 Mails am Tag – 8 Cores – 16GB Ram)!