Fail-2-Ban unter Ubuntu/Debian installieren

  • Hey Leute,


    Heute zeige Ich euch wie ihr Fail2Ban, ein sehr wichtiges & häufig unterschätztes Tool für Linux-Server, installiert.

    Fail2Ban lehnt Verbindungen von einer IP-Adresse nach einer bestimmten Anzahl von fehlerhaften Anmeldungen (Passwort oder Username ungültig) ab und schützt den Server somit gegen Brute-Force, eine Angriffsart bei der viele Bots gezielt häufige Passwort & Username-Kombinationen ausprobieren (das sind bei uns etwa 50.000 täglich) und den Server bei erfolg ebenfalls für Brute-Force Angriffe oder Spam verwenden.


    Da es ziemlich lästig ist einen "infizierten" Server wieder zu heilen, empfehle ich Fail2Ban zu installieren.


    1. Aktualisieren & Installieren


    Zuerst müssen wir natürlich Fail2Ban installieren. Damit es dabei keine Probleme mit der Kompatibilität und eventuellen Abhängigkeiten gibt, aktuallisieren wird erstmal die Paketlisten & die installierten Pakete mittels folgender Commands:


    sudo apt-get update - Aktualisiert die Paketlisten

    sudo apt-get upgrade - Lädt & Installiert eventuelle Updates für installierte Pakete


    Nun installieren wir Fail-2-Ban über folgenden Command:


    sudo apt-get install fail2ban - Hier gegebenenfalls noch über Y (oder J) und Enter bestätigen


    Schon ist Fail-2-Ban installiert & fängt an zu arbeiten. Theoretisch kann man es jetzt dabei belassen, allerdings empfehle ich noch einige Einstellungen vorzunehmen. Kommen wir also zum 2. Schritt.


    2. Konfiguration


    In Fail-2-Ban existieren verschiedene Jails, also Bereiche, die Fail-2-Ban abdeckt. Mit gewissen Kenntnissen kann Fail-2-Ban zum Beispiel auch Logins für eine Teamspeak-Severquery filtern. Die Config für die Jails findet ihr unter /etc/fail2ban/jail.conf. Dort könnt ihr unter dem Überbegriff "SSDH" oder "SSH" folgendes einstellen:


    bantime - Zeit für die der Nutzer gesperrt wird

    maxretry - Maximale Anzahl an Versuchen

    findtime - Zeit innerhalb dessen die Versuche stattfinden müssen


    Das Verhalten der dort angewandten Filter könnt ihr in der dazugehörigen Config einstellen (etwas komplizierter, hier hilft Google). Zudem könnt ihr dort dem Log-Pfad einstellen. Dieser muss dem von SSH verwendeten Pfad entsprechen (wenn ihr hier nichts geändert habt, könnt ihr diesen Wert einfach so lassen). Ich persönlich verwende immer einen hohen Bantime-Wert mit 4 maximalen Versuchen.

    Den Log von Fail-2-Ban findet ihr unter /var/log/fail2ban.log.


    Nachdem ihr etwas an den Einstellungen geändert habt, müsst ihr das Programm noch mit sudo service fail2ban restart oder sudo /etc/init.d/fail2ban restart neustarten.


    Ich hoffe meine kleine Anleitung konnte euch helfen :)

    Bei Fragen, schreibt einfach in diesen Thread oder kontaktiert mich über das Forum/Teamspeak.


    Liebe Grüße

    Felix