Fail2ban Handling: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(28 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
=Install=
 
=Install=
*sudo apt install fail2ban
+
*sudo apt install fail2ban iptables
 +
 
 
=Nach der Installation stehen folgende Programme zur Verfügung=
 
=Nach der Installation stehen folgende Programme zur Verfügung=
 
*fail2ban-server - der Server
 
*fail2ban-server - der Server
 
*fail2ban-client - Clientprogramm zur Konfiguration und Auswertung des Servers
 
*fail2ban-client - Clientprogramm zur Konfiguration und Auswertung des Servers
*fail2ban-regex - Programm zum Testen von Regular-Expressions[7]
+
*fail2ban-regex - Programm zum Testen von Regular-Expressions
 +
 
 
=Konfigurationsdatein=
 
=Konfigurationsdatein=
==fail2ban.local==
+
*[[Fail2ban Konfigurationsdatein]]
*Hier werden grundlegende Dinge eingestellt. Im Normalfall reichen die Voreinstellungen aus.
+
 
<pre>
+
=Example ssh=
[Definition]
+
 
loglevel Mitteilungsfreude einstellen: DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL. loglevel = INFO
 
logtarget logtarget kann eine selbst angegebene Datei sein oder eine der folgenden Werte: STDOUT, STDERR, SYSLOG logtarget=STDERR
 
socket Hier lässt sich die Socket-Datei aus /var/run/ umbenennen. socket = /var/run/fail2ban/fail2ban.sock
 
pidfile Hier lässt sich die Prozess-ID-Datei aus /var/run/ umbenennen. pidfile = /var/run/fail2ban/fail2ban.pid
 
</pre>
 
=jail.local=
 
*In der Datei jail.local werden alle von der jail.conf abweichenden Einträge eingestellt.
 
*Man kann diese auch kopieren und als Grundlage für eine eigene jail.local nutzen.
 
*Jedoch müssen auch hier nur geänderte Werte eingetragen werden.
 
*Ein Minimalbeispiel:
 
 
  [sshd]
 
  [sshd]
 
  enabled = true
 
  enabled = true
=Übersicht der Optionen=
+
port = ssh
Eintrag Beschreibung Beispiel
+
filter = sshd
[DEFAULT]
+
logpath = /var/log/auth.log
ignoreip Durch Leerzeichen separierte Liste von zu ignorierenden (im Sinne von: nicht zu bannenden) IPs oder Netzwerken. ignoreip = 127.0.0.1/8 192.168.1.33
+
maxretry = 4
bantime Bannzeit in Sekunden. Ein negativer Wert ist ein permanenter Bann. bantime = 86400
 
findtime Die Anzahl der Sekunden nach dem der Zähler für maxretry zurückgesetzt wird. findtime = 660
 
maxretry Die maximale Anzahl an Fehlversuchen, bevor fail2ban die IP bannt. maxretry = 2
 
backend Hier kann das backend, wie z.B. systemd eingestellt werden. Voreinstellung ist auto (empfohlen). backend = systemd
 
usedns Einstellung für das reverse-Lookup-Verhalten von fail2ban. Mögliche Werte sind yes, no und warn.
 
Letzteres bewirkt, dass Einträge mit Hostnamen eine Warnung ins Logfile geben, was u.U. zu sehr vielen Einträgen führt. usedns = warn
 
[myJail] Hier kann der Name des jail vergeben werden. [ssh]
 
enabled (De-)Aktiviert das jail enabled = true
 
port Portdefinition, kann numerisch sein. Mehrere Werte werden durch Kommata getrennt. port = ssh
 
filter = sshd Name der Filterdatei /etc/fail2ban/filter.d/sshd.conf
 
logpath Die zu überwachende Logdatei, die auf den Filter geprüft wird. logpath = /var/log/auth.log
 
maxretry, bantime,... Abweichende Werte für die Default-Optionen können ebenfalls definiert werden. maxretry = 3
 
  
=Config=
+
=Example wordpress=
*sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
+
[[Fail2ban_Handling_Wordpress|Wordpress]]
  
=Example ssh=
+
=Example dovecot=
 +
<pre>
 +
[dovecot]
 +
enabled = true
 +
port = pop3,pop3s,imap,imaps
 +
filter = dovecot
 +
logpath = /var/log/mail.log
 +
maxretry = 3
 +
</pre>
 +
 
 +
=Example apache2=
 
<pre>
 
<pre>
[sshd]
+
[apache]
enabled   = true
+
enabled = true
port   = ssh
+
port     = http,https
filter   = sshd
+
filter   = apache-auth
logpath   = /var/log/auth.log
+
logpath = /var/log/apache*/*error.log
maxretry = 4
+
maxretry = 6
 
</pre>
 
</pre>
 +
 +
=Example vsftp=
 +
[[Fail2ban_Handling_Vsftp|vsftp]]
 +
 
=Links=
 
=Links=
 
*https://www.thomas-krenn.com/de/wiki/SSH_Login_unter_Debian_mit_fail2ban_absichern
 
*https://www.thomas-krenn.com/de/wiki/SSH_Login_unter_Debian_mit_fail2ban_absichern

Aktuelle Version vom 3. September 2023, 20:06 Uhr

Install

  • sudo apt install fail2ban iptables

Nach der Installation stehen folgende Programme zur Verfügung

  • fail2ban-server - der Server
  • fail2ban-client - Clientprogramm zur Konfiguration und Auswertung des Servers
  • fail2ban-regex - Programm zum Testen von Regular-Expressions

Konfigurationsdatein

Example ssh

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 4

Example wordpress

Wordpress

Example dovecot

[dovecot]
enabled = true
port = pop3,pop3s,imap,imaps
filter = dovecot
logpath = /var/log/mail.log
maxretry = 3

Example apache2

[apache]
enabled  = true
port     = http,https
filter   = apache-auth
logpath  = /var/log/apache*/*error.log
maxretry = 6

Example vsftp

vsftp

Links