Zum Inhalt springen

Fail2ban/Nextcloud: Unterschied zwischen den Versionen

Aus Foxwiki
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 40: Zeile 40:
</syntaxhighlight>
</syntaxhighlight>


== Installation für Nextcloud AIO ==
== Nextcloud AIO ==
Das Autorisierungsprotokoll für die Webschnittstelle von Nextcloud AIO befindet sich unter dem Mount-Pfad des Volumes
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
/var/lib/docker/volumes/nextcloud_aio_nextcloud/_data/data/nextcloud.log
</syntaxhighlight>


Das Autorisierungsprotokoll für die Webschnittstelle von Nextcloud AIO befindet sich unter dem Mount-Pfad des Volumes:
; Installieren Sie das Paket fail2ban
''/var/lib/docker/volumes/nextcloud_aio_nextcloud/_data/data/nextcloud.log''
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
sudo apt install fail2ban
</syntaxhighlight>


0. Installieren Sie das Paket fail2ban.<syntaxhighlight lang="bash" highlight="1" copy="" line="">
; /etc/fail2ban/filter.d/nextcloud.conf erstellen
sudo apt install fail2ban
<syntaxhighlight lang="ini" copy="" line="">
</syntaxhighlight>1. Erstellen Sie die Datei ''/etc/fail2ban/filter.d/nextcloud.conf'':<syntaxhighlight lang="ini" copy="" line="">
[Definition]
[Definition]
_groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*)
_groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*)
Zeile 53: Zeile 58:
             ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Trusted domain error.
             ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Trusted domain error.
datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?"
datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?"
</syntaxhighlight>2. Erstellen Sie die Datei ''/etc/fail2ban/jail.d/nextcloud.local'':<syntaxhighlight lang="ini" copy="" line="">
</syntaxhighlight>
 
; /etc/fail2ban/jail.d/nextcloud.local erstellen
<syntaxhighlight lang="ini" copy="" line="">
[nextcloud]
[nextcloud]
backend = auto
backend = auto
Zeile 68: Zeile 76:
</syntaxhighlight>
</syntaxhighlight>


3. Fail2ban nachladen
; Fail2ban neu laden
 
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
sudo fail2ban-client reload
sudo fail2ban-client reload
</syntaxhighlight>
</syntaxhighlight>


4. Überprüfen des Status von Nextcloud Jail:
; Überprüfen des Status der Nextcloud Jail
 
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
<syntaxhighlight lang="bash" highlight="1" copy="" line="">
sudo fail2ban-client status nextcloud
sudo fail2ban-client status nextcloud

Aktuelle Version vom 30. Dezember 2025, 11:52 Uhr

Standardinstallation

Installieren Sie das Paket fail2ban
 sudo apt install fail2ban
/etc/fail2ban/filter.d/nextcloud.conf erstellen
[Definition]
_groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*)
failregex = ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Login failed:
            ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Trusted domain error.
datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?"
/etc/fail2ban/jail.d/nextcloud.local erstellen
[nextcloud]
backend = auto
enabled = true
port = 80,443
protocol = tcp
filter = nextcloud
maxretry = 5
bantime = 1h
findtime = 3m
logpath = /var/log/nextcloud.log
Fail2ban neu laden
sudo fail2ban-client reload
Überprüfen des Status von Nextcloud Jail
sudo fail2ban-client status nextcloud

Nextcloud AIO

Das Autorisierungsprotokoll für die Webschnittstelle von Nextcloud AIO befindet sich unter dem Mount-Pfad des Volumes

 /var/lib/docker/volumes/nextcloud_aio_nextcloud/_data/data/nextcloud.log
Installieren Sie das Paket fail2ban
 sudo apt install fail2ban
/etc/fail2ban/filter.d/nextcloud.conf erstellen
[Definition]
_groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*)
failregex = ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Login failed:
            ^\{%(_groupsre)s,?\s*"remoteAddr":"<HOST>"%(_groupsre)s,?\s*"message":"Trusted domain error.
datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?"
/etc/fail2ban/jail.d/nextcloud.local erstellen
[nextcloud]
backend = auto
enabled = true
port = 80,443
protocol = tcp
filter = nextcloud
maxretry = 2
bantime = 1h
findtime = 5m
logpath = /var/lib/docker/volumes/nextcloud_aio_nextcloud/_data/data/nextcloud.log
chain=DOCKER-USER
action = iptables-multiport[name=nextcloud, port="80,443", chain="DOCKER-USER"]
Fail2ban neu laden
sudo fail2ban-client reload
Überprüfen des Status der Nextcloud Jail
sudo fail2ban-client status nextcloud