{{tag> }} ====== Fail2ban ====== Fail2ban schaut durch die Logs ( z.B. /var/log/apache/error.log oder /var/log/auth.log ) und verbannt die IP, die zu viele Versuche zur Authentifizierung auf dem Server fehlgeschlagen haben. siehe auch -> [[anwenderwiki:fernzugriff:fail2ban|Fernzugriff - fail2ban]] ===== Installation ===== apt-get install fail2ban Man kann überprüfen ob fail2ban wirklich läuft : iptables -S | grep fail2ban Die Angabe sollte so aussehen ( standardmässig ist ssh überwacht ): -A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh -A fail2ban-ssh -j RETURN ===== Konfiguration mit jail.conf ===== Die wichtigste datei ist **/etc/fail2ban/jail.conf**. ==== Email ==== Erst mal, kann man die Emailadresse überprüfen : [DEFAULT] destemail = root@localhost und nicht vergessen es zu aktivieren durch Änderung der folgenden Zeile : action = %(action_)s in ( verbannen + Email senden ) : action = %(action_mw)s oder ( verbannen + Email senden + logs ) : action = %(action_mwl)s In dem Fall, erhält man eine Email in der Form : Hi, The IP 66.xxx.xxx.xxx has just been banned by Fail2Ban after 6 attempts against ssh. Here are more information about 66.xxx.xxx.xxx: Lines containing IP:66.xxx.xxx.xxx in /var/log/auth.log Feb 13 21:42:41 server sshd[9838]: Failed password for root from 66.xxx.xxx.xxx port 6444 ssh2 Feb 13 21:45:36 server sshd[9919]: Failed password for root from 66.xxx.xxx.xxx port 30174 ssh2 Feb 13 21:48:29 server sshd[10044]: Failed password for root from 66.xxx.xxx.xxx port 55810 ssh2 Feb 13 21:51:22 server sshd[10177]: Failed password for root from 66.xxx.xxx.xxx port 52357 ssh2 Feb 13 21:54:15 server sshd[10334]: Failed password for root from 66.xxx.xxx.xxx port 11683 ssh2 Feb 13 21:57:08 server sshd[10422]: Failed password for root from 66.xxx.xxx.xxx port 30033 ssh2 Regards, Fail2Ban ==== Standard Services ==== Jeder standardmässige Service sieht so aus ( z.B. ssh ): [ssh] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 6 Um die Bewachung zu aktivieren, muss man die Variable enabled auf "true" setzen. Im Fall von ssh, muss man auch den Port ändern : [ssh] enabled = true port = 2222 filter = sshd logpath = /var/log/auth.log maxretry = 6 ==== Fail2ban neu starten ==== Natürlich, nach Änderung des Config-Datei muss man fail2ban neu starten : /etc/init.d/fail2ban restart Wenn alles gut läuft, sollte man einige Emails empfangen : Subject : [Fail2Ban] ssh: started Hi, The jail ssh has been started successfully. Regards, Fail2Ban