Zimbra und der Schutz des Servers vor Überlastung

E-Mails haben sich als Standard der geschäftlichen Kommunikation fest etabliert. Dank der hohen Wirtschaftlichkeit von E-Mails sowie einer Vielzahl von Merkmalen, die mit dem Zitieren von Texten und dem Anhängen von Dokumenten verbunden sind, sind E-Mails besonders gut geeignet, um als universelles Mittel zum Austausch von Dokumenten und höflicher geschäftlicher Kommunikation zu fungieren. Diese Merkmale sind auch der Grund, warum E-Mails von Spammern so sehr geschätzt werden. Infolgedessen stellt die E-Mail heute einen riesigen tobenden Ozean aus Spam dar, in dem geschäftliche E-Mails nur selten anzutreffen sind. Aus diesem Grund gehört zu den vorrangigen Aufgaben eines jeden Administrators eines Mailservers der Schutz vor Spam-Versand. Schauen wir uns an, was man in der Zimbra Collaboration Suite Open-Source Edition dagegen tun kann.

Zimbra und der Schutz des Servers vor Überlastung

Trotz der kostenlosen Lösung kann Zimbra OSE dem Systemadministrator eine Vielzahl extrem effizienter Werkzeuge zur Verfügung stellen, um das Problem der unerwünschten E-Mails zu lösen. Wir haben bereits über Tools wie Amavis, SpamAssassin, ClamAV und cbpolicyd geschrieben, die es ermöglichen, eingehende E-Mails zuverlässig zu filtern und Spam-Versendungen sowie schädliche und Phishing-E-Mails auszusondern. Dennoch ist ihr entscheidender Nachteil, dass sie alle mit bereits empfangenen E-Mails arbeiten und Systemressourcen für die Filterung unnützer Nachrichten verbrauchen, für die man deutlich bessere Verwendungen finden könnte. Aber was ist, wenn Ihr Unternehmen ins Visier eines großen Botnetzes geraten ist, das Ihren Mailserver so mit riesigen Mengen an Spam-Nachrichten bombardiert, dass bereits ein Großteil der Serverressourcen für die Filterung dieser Nachrichten aufgebracht werden muss?

In der Theorie kann man sich dagegen schützen, indem man einen Cloud-Service zur Filterung eingehender E-Mails nutzt. In der Praxis eignet sich jedoch dieser Schutzmechanismus nicht für jedes Unternehmen, da man in diesem Fall Dritten die Verarbeitung nicht nur von Spam, sondern auch von geschäftlicher Korrespondenz anvertrauen müsste, was nicht immer sicher ist und häufig den Sicherheitsrichtlinien des Unternehmens widerspricht. Außerdem entstehen Risiken, die mit der Zuverlässigkeit der Arbeit des Cloud-Spam-Filters verbunden sind. Ein Ausweg aus dieser Situation könnte die Organisation des Schutzes des Servers in Eigenregie sein. Zu diesem Zweck wurde in Zimbra das Tool Postscreen integriert, das dazu dient, den Mailserver vor E-Mails zu schützen, die von Botnets versendet werden, ohne dabei den Mailserver zu belasten.

Die Funktionsweise von Postscreen besteht darin, dass dieses Tool alle Anfragen zur Verbindung mit dem Mailserver überprüft zu einem Server und es den Clients, die ihm verdächtig erscheinen, nicht gestattet, sich mit dem Server zu verbinden. Da laut Statistik etwa 90 % des weltweit versendeten Spams von Botnets stammen, wird Postscreen häufig als erste Schutzmaßnahme für den Mailserver gegen unerwünschte E-Mail-Werbung eingesetzt. Dadurch kann der Mailserver stabil arbeiten, ohne überlastet zu werden, selbst bei starken Spam-Angriffen durch große Botnets.

Der Arbeitsprinzip von Postscreen ist recht einfach. Das Tool ist in der Lage, eine Reihe einfacher Überprüfungen eingehender E-Mails durchzuführen, bevor sie an den Mailserver oder an andere Dienste weitergeleitet werden, die eine tiefere und detailliertere Überprüfung der eingehenden E-Mails vornehmen. Jede dieser Überprüfungen kann entsprechend bestanden oder nicht bestanden werden. Basierend auf den Ergebnissen jeder dieser Überprüfungen kann Postscreen eine der drei vom Zimbra-Administrator gewählten Maßnahmen ergreifen: Drop, Ignore oder Enforce. Die Maßnahme Drop trennt die Verbindung mit dem Client zwangsläufig, wenn die Überprüfung nicht bestanden wurde, die Maßnahme Ignore ermöglicht es, die Ergebnisse der Überprüfung bei der endgültigen Entscheidung zu ignorieren, sammelt jedoch Informationen und Statistiken über die durchgeführten Überprüfungen. Die Maßnahme Enforce berücksichtigt die Ergebnisse der durchgeführten Überprüfungen bei der endgültigen Entscheidung, führt jedoch weiterhin alle Tests durch, die der Systemadministrator geplant hat.

Ein einfaches Prinzip der Funktionsweise bedeutet nicht, dass die Verwendung und Konfiguration einfach ist. Das Problem ist, dass eine falsch konfigurierte Postscreen der Grund sein kann, warum eine Reihe von wichtigen Geschäfts-E-Mails den Empfänger nicht erreichen. Aus diesem Grund ist es notwendig, bei der Konfiguration eines so leistungsstarken Werkzeugs wie Postscreen große Vorsicht walten zu lassen und es ständig in verschiedenen Situationen auf seine Funktionsweise zu testen.

Postscreen ist in Zimbra standardmäßig aktiviert, jedoch sind viele mit der anfänglichen Konfiguration möglicherweise nicht zufrieden. Jetzt werden wir die sicherste und risikofreiste Konfigurationsoption für Postscreen betrachten. Der Kern besteht darin, dass Postscreen, nachdem eine der Prüfungen fehlgeschlagen ist, die Verbindung zum Client nicht sofort trennt, sondern alle Prüfungen bis zum Ende durchführt. Wenn diese Prüfungen dann nicht bestanden werden, wird eine Fehlermeldung ausgegeben. Dadurch kann ein lebender Absender über die Nichtzustellung der E-Mail informiert werden, falls Postscreen ihn als Spam einstuft. Dies wird durch die Festlegung des Werts enforce in den Prüfparameter erreicht. Genau dieser Wert ermöglicht es, laufende Prüfungen bis zum Ende abzuschließen, ohne die Verbindung zum Client beim ersten Misserfolg zu trennen, jedoch trotzdem die Spam-E-Mail nach Abschluss zu blockieren, ohne sie an den Server zuzustellen.

Um die erforderlichen Prüfungen zu aktivieren, geben Sie die folgenden Befehle ein:

zmprov mcf zimbraMtaPostscreenDnsblSites ‘b.barracudacentral.org=127.0.0.2*7’ zimbraMtaPostscreenDnsblSites ‘zen.spamhaus.org=127.0.0.[10;11]*8’ zimbraMtaPostscreenDnsblSites ‘zen.spamhaus.org=127.0.0.[4..7]*6’ zimbraMtaPostscreenDnsblSites ‘zen.spamhaus.org=127.0.0.3*4’ zimbraMtaPostscreenDnsblSites ‘zen.spamhaus.org=127.0.0.2*3’

Dieser Befehl ermöglicht die Hinzufügung einer DNS-Prüfung für eingehende Verbindungen über die zwei beliebtesten öffentlichen Spam-Datenbanken und bewertet E-Mails basierend darauf, in welcher Datenbank die Absenderadresse gefunden wird. Je mehr Straf-'Sterne' der Client sammelt, desto wahrscheinlicher ist es, dass er ein Spammer ist.

zmprov mcf zimbraMtaPostscreenDnsblAction enforce

Mit diesem Befehl wird die Aktion festgelegt, die nach Abschluss der DNS-Prüfung durchgeführt wird. In diesem Fall wird das Ergebnis der Prüfung gespeichert, während die E-Mail weiterhin weiteren Tests unterzogen wird.

zmprov mcf zimbraMtaPostscreenGreetAction enforce

Da der SMTP-Protokollserver nach der direkten Verbindung als Erster mit dem Client kommuniziert, kann Postscreen dem Client ein Begrüßungssignal senden. Da viele Spam-Clients ohne auf das Ende der Begrüßung zu warten, Befehle senden, können sie leicht erkannt werden. Dieses Kommando ermöglicht es, die Ergebnisse dieser Überprüfung zu berücksichtigen, während die weiteren Tests fortgesetzt werden.

zmprov mcf zimbraMtaPostscreenNonSmtpCommandAction drop

Im Rahmen dieser Überprüfung ermöglicht Postscreen das Herausfiltern von Verbindungen, die nicht von E-Mail-Clients stammen. Da sie keine E-Mails senden, kann man sie ohne Bedenken vom Server trennen.

zmprov mcf zimbraMtaPostscreenPipeliningAction enforce

Diese Überprüfung basiert darauf, dass ein SMTP-Client standardmäßig nur einen Befehl auf einmal senden und dann auf die Antwort des Servers warten kann. Viele Spam-Bots verhalten sich jedoch anders und senden mehrere Befehle, ohne auf die Antwort des Servers zu warten. Dies ermöglicht es, Spam-Bots nahezu fehlerfrei zu identifizieren.

Im Prinzip sind diese Überprüfungen für Postscreen mehr als genug, um den Großteil der Spam-Bots vom Server abzugrenzen und eine signifikante Entlastung des E-Mail-Servers zu erreichen. Gleichzeitig erhalten echte Personen die Meldung, dass ihre E-Mail nicht zugestellt wurde, was das Risiko verringert, wichtige Nachrichten aufgrund der Einstellungen von Postscreen zu verlieren. Falls dies passiert, können Sie einen vertrauenswürdigen Absender zur Postscreen-Weißliste hinzufügen. Um Weiße und Schwarze Listen für Postscreen zu erstellen, müssen Sie zuerst eine Datei erstellen. /opt/zimbra/conf/postfix/postscreen_wblist.

In diese Datei fügen wir eine Liste von erlaubten und gesperrten IP-Adressen und Subnetzen im CIDR-Format ein. Zum Beispiel blockieren wir das Subnetz 121.144.169.*, erlauben jedoch die Verbindung zur einzigen. IP-Adresse aus diesem Subnetz:

# Rules are evaluated in the order as specified.
# Blacklist 121.144.169.* except 121.144.169.196.
121.144.169.196/32 permit
121.144.169.0/24 reject

Bitte beachten Sie die Wichtigkeit der Reihenfolge der Einträge. Da Postscreen die Datei mit den Weißen und Schwarzen Listen bis zum ersten Übereinstimmung scannt, wird, wenn das gesperrte Subnetz vor der erlaubten IP-Adresse steht, die Prüfung nicht zur Eintragung gelangen, dass diese IP-Adresse zur Weißliste hinzugefügt wurde, und die Verbindung mit dem Server wird nicht stattfinden.

Nachdem die Datei mit den weißen und schwarzen Listen bearbeitet und gespeichert wurde, kann die entsprechende Überprüfung mit den folgenden Befehlen aktiviert werden:

zmprov mcf zimbraMtaPostscreenAccessList «permit_mynetworks, cidr:/opt/zimbra/conf/postfix/postscreen_wblist»
zmprov mcf zimbraMtaPostscreenBlacklistAction enforce

Jetzt wird Postscreen neben den bereits definierten Überprüfungen auch auf die Datei mit den weißen und schwarzen Listen zugreifen, was es dem Administrator ermöglicht, Fragen zur Verbindungsunfähigkeit von vertrauenswürdigen Absendern relativ einfach zu klären.

Quelle: habr.com

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster