Seafile / Seahub absichern – Fail2Ban

Die erste Angriffsfläche auf deinen Seafile ist die Weboberfläche bzw. der Login. Um Attacken auf den Login abzusichern hat Seafile bereits einen guten Standardschutz integriert; Wenn zu oft falsche Anmeldedaten verwendet wurden, muss ein Captcha eingegeben werden. In der Weboberfläche als Systemadministrator eingeloggt kannst du diesen aktivieren bzw. früher anfordern.

Seafile absichern mit Fail2Ban – stephansnet.de

Ein Klick auf den Avatar oben rechts, dann auf System-Administration und auf Einstellungen nach der Zeile „LOGIN_ATTEMPT_LIMIT“ suchen. Der Standardwert liegt bei 5 (Versuchen), den Wert kannst du anpassen. In meiner Konfiguration habe ich den Wert bereits auf 3 reduziert.

Den Schutz können wir deutlich erhöhen mit Fail2Ban. Das ist schnell erledigt und funktioniert wie folgt.

Auf dem RaspberryPi* eingeloggt folgendes ausführen:

sudo apt-get install fail2ban -y
cd /etc/fail2ban
sudo nano jail.local

Folgenden Inhalt einfügen, speichern und schließen:

[seafile]
enabled  = true
port     = http, https
filter   = seafile-auth
logpath  = /home/seafile/logs/seahub.log
maxretry = 3

Im Bereich „logpath“ musst du den Pfad deiner Konfiguration anpassen. Ich gehe hier davon aus, dass du meinem Tutorial gefolgt bist oder das Image von mir heruntergeladen hast.

Im Anschluss wechselst du in einen weiteren Unterordner erstellst eine weitere Datei:

cd filter.d
sudo nano seafile-auth.conf

Folgenden Inhalt einfügen, speichern und schließen:

[INCLUDES]
before = common.conf

[Definition]
_daemon = seaf-server
failregex = Login attempt limit reached.*, ip: <HOST>
ignoreregex =

Nun startest du Fail2Ban einmal neu und überprüfst ob alles geklappt hat:

sudo systemctl restart fail2ban
sudo fail2ban-client status

Die Ausgabe sollte wie folgt aussehen:

Status
|- Number of jail:	2
`- Jail list:	seafile, sshd

Wenn in der Jail list „seafile“ auftaucht hat alles geklappt und fail2ban sichert nun deinen Login ab.

Konkret sieht die Absicherung so aus: Wenn eine IP-Adresse mehr als drei mal versucht sich erfolglos einzuloggen wird diese IP Adresse für eine gewisse Zeit gebannt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.