Einrichten von Fail2ban zum Schutz von Apache vor einem DDOS-Angriff

Configurarea Fail2ban pentru a proteja Apache de un atac DDOS
⏱️ 4 min read

Apache ist einer der am häufigsten verwendeten und beliebtesten Webserver der Welt. Daher ist es wichtig, Ihre Website und Benutzer vor Brute-Force-Angriffen zu schützen. Fail2ban ist eine Open-Source-Software zur Verhinderung von Eindringlingen, die in Python geschrieben wurde. Fail2Ban analysiert kontinuierlich die Protokolldateien verschiedener Dienste (wie Apache, ssh, postfix…). Wenn böswillige Angriffe erkannt werden, werden Regeln für die Firewall erstellt, um die IP-Adressen von Hackern für einen bestimmten Zeitraum zu blockieren. Fail2Ban informiert einen Systemadministrator auch per E-Mail über seine Aktivitäten.

In diesem Artikel werde ich erklären, wie Sie fail2ban installieren und konfigurieren, um Ihre Apache-Protokolle auf böswillige Authentifizierungsfehler zu überwachen.

Bedarf

  • Ubuntu Server 14.04 mit installiertem Apache
  • Apache mit Kennwortauthentifizierung konfiguriert

Fail2Ban installieren

Stellen Sie zunächst sicher, dass der Apache-Server ausgeführt wird und die Kennwortauthentifizierung aktiviert ist.

Als Nächstes können Sie Fail2ban installieren, indem Sie Folgendes ausführen:

Konfigurieren Sie fail2ban für Apache

Fail2ban speichert die Konfigurationsdatei “jail.conf” im Verzeichnis “/ etc / fail2ban /”. Es enthält eine Reihe vordefinierter Filter für verschiedene Dienste. Es wird empfohlen, diese Datei nicht zu bearbeiten. Sie müssen vordefinierte Apache-Jails aktivieren, indem Sie eine Datei “/etc/fail2ban/jail.local” erstellen:

Führen Sie Folgendes aus, um eine neue Datei “jail.local” zu erstellen:

Fügen Sie den folgenden Inhalt hinzu:

Speichern und schließen Sie die Datei und starten Sie fail2ban neu, damit die Änderungen wirksam werden.

Mit dem folgenden Befehl können Sie die von Fail2Ban in iptables hinzugefügten Regeln überprüfen:

Die Ausgabe sieht ungefähr so ​​aus:

Hinweis : Sie können die Details jedes Gefängnisses unten beschrieben finden:

  • [apache] : Dieses Gefängnis wird verwendet, um fehlgeschlagene Anmeldeversuche zu blockieren.
  • [apache-noscript] : Dieses Gefängnis wird verwendet, um Remote-Clients zu blockieren, die auf der Website nach Skripten suchen, die ausgeführt werden sollen.
  • [apache-overflows] : Dieses Gefängnis wird verwendet, um Clients zu blockieren, die versuchen, verdächtige URLs anzufordern.
  • [apache-noscript] : Dieses Gefängnis wird verwendet, um Remote-Clients zu blockieren, die auf der Website nach Skripten suchen, die ausgeführt werden sollen.
  • [apache-badbots] : Dieses Gefängnis wird verwendet, um böswillige Bot-Anfragen zu blockieren.

Hinweis : Sie finden die Details jeder unten beschriebenen Regel.

  • enabled : Diese Option bedeutet, dass der Apache-Schutz aktiviert ist.
  • port : Diese Option gibt die Dienste an, die fail2ban überwacht.
  • filter : Diese Option verweist auf die Konfigurationsdatei in der /etc/fail2ban/filter.d/ Verzeichnis.
  • logpath : Diese Option gibt den Speicherort der Protokolldatei an.
  • bantime : Diese Option gibt die Anzahl der Sekunden an, die ein Remote-Host vom Server blockiert wird.
  • maxretry : Diese Option gibt die Anzahl der fehlgeschlagenen Anmeldeversuche an, bevor ein Remote-Host für die Dauer der Sperrzeit blockiert wird.
  • ignoreip : Mit dieser Option können Sie bestimmte IP-Adressen vor dem Blockieren auf die Whitelist setzen.

Überprüfen Sie den Fail2ban-Verbotsstatus

Sobald die Gefängnisse aktiviert sind, können Sie fail2ban mit dem überprüfen fail2ban-client Befehl:

Sie können eine Liste aller von Ihnen aktivierten Gefängnisse anzeigen.

apache_fail2ban_client_status

Um den Status eines bestimmten Gefängnisses wie Apache, Apache-Badbots anzuzeigen, führen Sie die folgenden Befehle aus:

Die Ausgabe sieht folgendermaßen aus:

apache_fail2ban_client_status_apache

Sie können IP-Adressen auch manuell sperren oder aufheben.

So verbieten Sie beispielsweise eine IP-Adresse (192.168.1.20) mit einem Apache-Gefängnis:

So entsperren Sie eine IP-Adresse (192.168.1.21) mit einem Apache-Gefängnis:

Testen von Fail2Ban

Es ist wichtig, dass Sie Ihr fail2ban testen, ob es wie erwartet funktioniert oder nicht. Öffnen Sie jetzt auf einem Remotecomputer Ihren Webbrowser und geben Sie die URL Ihrer Domain (oder die IP-Adresse Ihres Servers) ein. Wenn Apache zur Authentifizierung auffordert, geben Sie wiederholt einen falschen Benutzernamen und ein falsches Kennwort ein. Nachdem Sie das Limit erreicht haben, sollten Sie blockiert sein und nicht mehr auf die Site zugreifen können.

apache_fail2ban_block_site

Überprüfen Sie den Status mit dem fail2ban-client Befehl:

Sie werden sehen, dass Ihre IP-Adresse von der Site blockiert wird.

apache_fail2ban_client_ban_status

Fazit

Jetzt haben Sie genug Wissen, um fail2ban zu konfigurieren. Die Verwendung von fail2ban ist eine gute und einfache Möglichkeit, Überschwemmungen zu stoppen (Brute-Force-Angriffe). Dies ist auch eine gute Möglichkeit, die Anzahl der auf Ihrem Apache-Webserver empfangenen fehlerhaften Anfragen zu begrenzen.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Das könnte dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x