Security für mailcow

Sieh, wer deinen mailcow angreift, mit Verlauf, und stoppe ihn: langsame Brute-Force, Password Spraying, Scans, kompromittierte Postfächer.

Overview: the last 24 hours per kind, a 14-day chart of failed logins, scans and spam, and the job's status1 von 10

mailcows eingebautes fail2ban stoppt die lautesten Angriffe — zehn fehlgeschlagene Anmeldungen in zehn Minuten bringen eine Sperre von dreißig Minuten — und vergisst sie dann wieder. Alles Leisere kommt durch: eine Adresse, die den ganzen Tag alle paar Minuten ein Passwort probiert, ein Botnetz, das seine Versuche auf Hunderte Adressen verteilt, ein Scanner, der dein Webmail nach /.env absucht, ein Postfach, dessen Passwort erraten wurde und das jetzt Spam verschickt. Dieses Modul zeigt all das unter System → Security, behält den Verlauf und handelt, wenn du es lässt.

Was es tut

  • Ein Verlauf der Angriffe: Jede Minute liest es, was mailcow ohnehin protokolliert — dovecot, postfix, SOGo und fail2ban aus mailcows redis, den Webserver und fehlgeschlagene Anmeldungen an der mailcow-UI / API über den Host-Agent des Toolkits — und speichert es in mailcows Datenbank (standardmäßig 90 Tage). mailcows eigene Protokolle behalten nur die letzten Zeilen; dieser Verlauf bleibt.
  • Eine Übersicht mit den Summen der letzten 24 Stunden, einem 14-Tage-Diagramm, den aktivsten Adressen (mit Sperr-Schaltfläche), den angegriffenen Postfächern und den aktiven Vorfällen. Ein rotes Schild neben dem Menü System zeigt offene schwere Vorfälle auf jeder Admin-Seite.
  • 13 Regeln für das, was fail2ban übersieht: langsames Brute Force, Password Spraying (eine Adresse, viele Postfächer), Wiederholungstäter (Adressen, die fail2ban immer wieder sperrt), Brute Force auf SOGo / die mailcow-UI / die API, Web-Exploit- und 404-Scans, Relay-Tests, Protokoll-Scans und Spam-Fluten. Schwellen, Zeitfenster, Aktionen und Sperrdauern lassen sich pro Regel ändern.
  • Kompromittierte Postfächer: ein plötzlicher Sendeanstieg, Anmeldungen von vielen Adressen und eine Anmeldung von einer Adresse, die vorher an dem Postfach gescheitert ist — ein Passwort, das wahrscheinlich erraten wurde.
  • Sperren über mailcow selbst: Mit eingeschalteten automatischen Aktionen kommt eine Adresse für die Dauer der Regel in die Denylist von mailcows fail2ban; netfilter setzt sie innerhalb einer Minute auf jedem mailcow-Port um, und du siehst sie auf mailcows eigener Fail2ban-Seite. Für Web-Hosts hinter dem Cloudflare-Proxy kann die Sperre zusätzlich eine IP Access Rule auf Cloudflare-Kontoebene sein.
  • Kontoaktionen über mailcows eigene Funktionen: Anmeldung verbieten (das Postfach empfängt weiter Mail), die IMAP- / POP3-Sitzungen beenden, eine Passwortänderung verlangen, das Senden begrenzen.
  • Warnungen per E-Mail und Telegram ab dem Schweregrad deiner Wahl, mit Stundenlimit, und eine optionale tägliche Zusammenfassung.

So gebaut, dass du dich nicht aussperrst

  • Standardmäßig nur beobachten: Jeder Vorfall sagt, was getan worden wäre; die automatischen Aktionen schaltest du ein, wenn du den Regeln vertraust.
  • Nie automatisch gesperrt: private und reservierte Adressen, deine Allowlist, die Allowlist von mailcows fail2ban, die eigenen Adressen des Servers und — standardmäßig eingeschaltet — Adressen, die sich in den letzten 30 Tagen erfolgreich an einem Postfach angemeldet haben.
  • Eine Sperre, die du auf mailcows Fail2ban-Seite entfernst, gilt als aufgehoben. Sperren laufen pünktlich ab, auch ohne Lizenz, und die Deinstallation hebt alle auf.
  • Jede Aktion — deine oder die des Moduls — steht im Audit-Log.

Voraussetzungen

  • mailcow-dockerized mit dem mailcow Toolkit 0.6.0 oder neuer von MediaLab Works (dieses Produkt ist eines der Module des Pakets, mit eigener Lizenz).
  • Root-Zugang auf dem Host, um das Toolkit zu installieren; der Server muss medialab.works über HTTPS erreichen (Lizenzprüfung).
  • mailcows netfilter-Container muss laufen (er setzt die Sperren um). Ist Manage external eingeschaltet, muss deine eigene Firewall mailcows Liste umsetzen.
  • Optional: ein Cloudflare-Token mit Account → Account Firewall Access Rules → Edit; ein Telegram-Bot-Token für Warnungen.
  • Open Source (GPL-3.0): Du bekommst den vollständigen Quellcode.

Datenschutz

Alles bleibt auf deinem Server: Protokolle, Adressen, Postfachnamen und der Verlauf liegen in deiner mailcow-Datenbank und gehen nie an medialab.works. Warnungen gehen nur an die E-Mail-Adresse und den Telegram-Chat, die du einträgst.

Lizenzierung

Eine Lizenz pro mailcow-Server, Monats- oder Jahresabo oder Lifetime, mit 30 Tagen kostenlosem Test; außerdem Teil des mailcow-Pakets. Ohne gültige Lizenz stoppen Erkennung, Sperren und Warnungen, und nichts wird gelöscht. Siehe Preise und die Installations- und Benutzeranleitung.

Voraussetzungen

  • mailcow Toolkit package 0.6.0 or newer (it includes this product) on mailcow-dockerized, Linux, with docker compose and systemd
  • Root access on the host to run install.sh; the server must reach medialab.works over HTTPS (license check)
  • mailcow's netfilter container running (it applies the bans); with "Manage external" on, your own firewall has to apply mailcow's list
  • Optional: a Cloudflare token with Account > Account Firewall Access Rules > Edit; a Telegram bot token for alerts
  • Open source (GPL-3.0): you receive the complete source code

Neueste Version

0.7.1
veröffentlicht am 20.10.2026
Alle Änderungen ansehen →

Für den Download brauchst du eine Lizenz oder den kostenlosen 30-tägigen Testzeitraum.