Fail2Ban (Debian): Unterschied zwischen den Versionen

Aus MattWiki
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Anleitung für Einrichtung von Fail2Ban in Debian.
Anleitung für Einrichtung von Fail2Ban in Debian.
Quellen:


http://www.fail2ban.org/wiki/index.php/Commands
http://www.fail2ban.org/wiki/index.php/Commands
https://wiki.ubuntuusers.de/fail2ban/


== Installation ==  
== Installation ==  
Zeile 7: Zeile 11:


== Konfiguration ==
== Konfiguration ==
Für die Anpassung der Regeln eine neue Datei Namens jail.local nach dem Vorbild von jail.conf anlegen, z. B.:


  touch /etc/fail2ban/jail.local
=== Erweiterung der Konfiguration ===
Konfigurationsfiles im Lieferumfang:
/etc/fail2ban/fail2ban.conf
  /etc/fail2ban/jail.conf
Die o.g. Dateien sollten nicht angepasst werden, da sie beim nächsten Update evtl. wieder überschrieben werden.Stattdessen können folgende Dateien angelegt werden:
/etc/fail2ban/fail2ban.local
/etc/fail2ban/fail2ban.d/*
/etc/fail2ban/jail.local
/etc/fail2ban/jail.d/*
Für die Erstellung der .local-Dateien können als Vorlage die jeweiligen .conf-Dateien verwendet werden.


Inhalt
Es muss darauf geachtet werden, dass die Dateien immer Abschnitte in Eckigen klammern haben.


[ssh]
Permanenter Ban wird umgesetzt indem man bantime auf einen negativen Wert setzt, z.B. -1
enabled  = true
port    = 22
filter  = sshd
logpath  = /var/log/auth.log
maxretry = 100
== Unban ==


With Fail2Ban before v0.8.8:
=== Finetuning ===
fail2ban-client get YOURJAILNAMEHERE actionunban IPADDRESSHERE
Bei Fehlermeldungen im Log:
Dec 31 20:00:00 server sshd[23400]: Connection closed by xxx.xxx.xxx.xxx port xxxxx [preauth]
Erweiterung Parameter <code>failregex</code> in datei <code>/etc/fail2ban/filter.d/sshd.conf</code> um folgende Zeile:
^%(__prefix_line)sConnection closed by <HOST> port \d+ \[preauth\]$


With Fail2Ban v0.8.8 and later:
== Fail2Ban Befehle ==
fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE.


The hard part is finding the right jail:
=== Status abfragen ===
Status von Fail2Ban ausgeben:
fail2ban-client status
Status eines bestimmten jails, z. B. sshd, ausgeben inkl. der gesperrten IP-Adressen und einigen Statistiken, wie z.B. Anzahl der gesperrten Adressen:
fail2ban-client status sshd
Sample output:
Status for the jail: sshd
|- Filter
|  |- Currently failed: 0
|  |- Total failed:    8509
|  `- File list:        /var/log/auth.log
`- Actions
    |- Currently banned: 0
    |- Total banned:    594
    `- Banned IP list:
Here we see that banned were 594, but currently banned are none.


    Use iptables -L -n to find the rule name...
To see banned:
    ...then use fail2ban-client status to get the actual jail names. The rule name and jail name may not be the same but it should be clear which one is related to which.
fail2ban-client banned


== Status Fail2Ban ==
=== Manuell Adressen hinzufügen ===
Status von Fail2Ban ausgeben:
Beispiel, um manuell IP-Adressen in den Jail SSHD zu bannen oder dort zu entfernen:
  fail2ban status
  fail2ban-client set sshd banip <IP>
Status eines bestimmten jails, z. B. sshd, ausgeben inkl. der gesperrten IP-Adressen und einigen Statistiken, wie z.B. Anzahl der gesperrten Adressen:
  fail2ban-client set sshd unbanip <IP>
  fail2ban status sshd
.
.
[[Category:Linux]]
[[Category:Linux]]

Aktuelle Version vom 28. Oktober 2023, 23:30 Uhr

Anleitung für Einrichtung von Fail2Ban in Debian.

Quellen:

http://www.fail2ban.org/wiki/index.php/Commands

https://wiki.ubuntuusers.de/fail2ban/

Installation

apt-get install fail2ban

Konfiguration

Erweiterung der Konfiguration

Konfigurationsfiles im Lieferumfang:

/etc/fail2ban/fail2ban.conf
/etc/fail2ban/jail.conf

Die o.g. Dateien sollten nicht angepasst werden, da sie beim nächsten Update evtl. wieder überschrieben werden.Stattdessen können folgende Dateien angelegt werden:

/etc/fail2ban/fail2ban.local
/etc/fail2ban/fail2ban.d/*
/etc/fail2ban/jail.local
/etc/fail2ban/jail.d/*

Für die Erstellung der .local-Dateien können als Vorlage die jeweiligen .conf-Dateien verwendet werden.

Es muss darauf geachtet werden, dass die Dateien immer Abschnitte in Eckigen klammern haben.

Permanenter Ban wird umgesetzt indem man bantime auf einen negativen Wert setzt, z.B. -1

Finetuning

Bei Fehlermeldungen im Log:

Dec 31 20:00:00 server sshd[23400]: Connection closed by xxx.xxx.xxx.xxx port xxxxx [preauth]

Erweiterung Parameter failregex in datei /etc/fail2ban/filter.d/sshd.conf um folgende Zeile:

^%(__prefix_line)sConnection closed by <HOST> port \d+ \[preauth\]$

Fail2Ban Befehle

Status abfragen

Status von Fail2Ban ausgeben:

fail2ban-client status

Status eines bestimmten jails, z. B. sshd, ausgeben inkl. der gesperrten IP-Adressen und einigen Statistiken, wie z.B. Anzahl der gesperrten Adressen:

fail2ban-client status sshd

Sample output:

Status for the jail: sshd
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     8509
|  `- File list:        /var/log/auth.log
`- Actions
   |- Currently banned: 0
   |- Total banned:     594
   `- Banned IP list:

Here we see that banned were 594, but currently banned are none.

To see banned:

fail2ban-client banned

Manuell Adressen hinzufügen

Beispiel, um manuell IP-Adressen in den Jail SSHD zu bannen oder dort zu entfernen:

fail2ban-client set sshd banip <IP>
fail2ban-client set sshd unbanip <IP>

.