Wie konfigurieren Sie Fail2ban für WordPress (WP-Login, XMLRPC)

Kurz gesagt, in diesem Tutorial finden Sie die Befehlszeilen, über die Sie Fail2ban für WordPress installieren und konfigurieren können. Sichere WordPress -Authentifizierung und xmlrpc.php Gross Ass.

Auf der WordPress -Plattform entwickelte Blogs und Websites sind häufig Cyber ​​-Angriffsziele. Die meisten Angriffe haben einen Brutto-Kraft-Typ und zielen auf die Authentifizierungssitzung oder die Ausbeutung von XML-RPC (Remote Procedure Call mit XML) ab. Glücklicherweise ist Fail2ban eine sehr nützliche Sicherheitslösung für diese Situationen. Wenn Sie eine WordPress -Site mit fail2ban sichern möchten, befolgen Sie die Konfigurationsschritte in diesem Tutorial.

Stellen Sie zunächst sicher, dass Sie mit der SSH -Verbindung auf den Webserver zugreifen und die Anwendung fail2ban installiert ist.

Fail2ban -Konfiguration für WordPress auf Debian

1. Zuerst müssen Sie sicherstellen, dass die fail2ban -Anwendung installiert ist und auf dem Server ausgeführt wird. Führen Sie die Befehlszeile unten aus:

systemctl status fail2ban

In der Ausgabe sollten Sie etwas von der Form sehen:

● fail2ban.service - Fail2Ban Service
     Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; preset: enabled)
     Active: active (running) since Tue 2025-03-11 00:39:32 EET; 6 days ago
       Docs: man:fail2ban(1)
   Main PID: 917 (fail2ban-server)
      Tasks: 17 (limit: 76843)
     Memory: 33.2M
        CPU: 17min 1.752s
     CGroup: /system.slice/fail2ban.service
             └─917 /usr/bin/python3 /usr/bin/fail2ban-server -xf start

Wenn fail2ban nicht auf dem Server installiert ist, müssen Sie ihn installieren. Führen Sie die Auftragslinie für die Installation Fail2ban auf Debian / Ubuntu durch:

sudo apt install fail2ban

2. Der nächste Schritt besteht darin, den Fail2ban -Filter für WordPress zu erstellen. Führen Sie im Terminal in der Befehlszeile aus, um den Filter zu erstellen und zu bearbeiten wordpress.conf.

sudo nano /etc/fail2ban/filter.d/wordpress.conf

In der Datei wordpress.conf Legt WordPress -Authentifizierungsfilter und Dateiauthentifizierung fest xmlrpc.php, wie folgt:

[Definition]
failregex = ^<HOST> -.*"(GET|POST).*(/wp-login.php|/xmlrpc.php).*" 200
ignoreregex =

Dies bedeutet, dass nach jeder Methode, GET oder POSTWenn Sie auf die Dateien wp-login.php oder xmlrpc.php zugreifen können, kann eine Regel für fail2ban erstellt werden. Die Bedingung ist, dass diese Dateien vom Angreifer existieren und zugreifen können. Dies dient dazu, Code 200 (OK) zum Zugriff zurückzugeben.

Speichert die Datei /etc/fail2ban/filter.d/wordpress.conf.

3. Der nächste Schritt ist zu konfigurieren “Gefängnis” für WordPress. In diesem Schritt sind die meisten Benutzer verwirrt, da die Regeln je nach Hosting -Management -System (falls vorhanden) oder der Webserverkonfiguration unterschiedlich festgelegt werden müssen.

Wenn Sie HestiaCP, Vestacp oder Myvesta verwenden, erstellen und bearbeiten Sie die Datei /etc/fail2ban/jail.local.

nano /etc/fail2ban/jail.local

Fügen Sie in dieser Datei die folgenden Zeilen hinzu:

[wordpress]
enabled  = true
port     = http,https
filter   = wordpress
logpath  = /var/log/nginx/domains/*.log #or apache2.
maxretry = 5
findtime = 1800
bantime  = 3600
action   = hestia[name=WEB] #hestacp action.

Passen Sie die oben genannten Parameter entsprechend Ihren Anforderungen an. In der von mir angegebenen Konfiguration, wenn innerhalb von 1800 Minuten 5 wiederholte Versuche derselben IP vorliegen, wird es mit Hilfe des Web HestiaCP 3600 Minuten blockiert. (hestia[name=WEB]). Hier müssen Sie entsprechend dem System, das Sie auf dem Server haben, helfen.

Es ist auch sehr wichtig und “logpath“. Aus diesen Protokollen werden die Daten extrahiert, auf deren Grundlage die Aktion ausgeführt wird. Stellen Sie sicher, dass der Standort korrekt ist.

Wenn Sie kein installiertes Verwaltungssystem haben, benötigen Sie die Wirkung, IPs mit fail2ban zu blockieren, damit WordPress direkt von durchführen kann iptables. Die Aktionslinie ist wie folgt:

action   = iptables-multiport[name=wordpress, port="80,443", protocol=tcp]

Als Klammer statt von /etc/fail2ban/jail.local Sie können auch eine separate Konfigurationsdatei verwenden, z. B.: /etc/fail2ban/jail.d/wordpress.conf.

Nachdem Sie die Anpassungen vorgenommen haben, wenden Sie die Änderungen an.

sudo systemctl restart fail2ban

4. Überprüfen Sie nach dem Neustart, dass Fail2ban für WordPress funktioniert:

fail2ban-client status wordpress
Status for the jail: wordpress
|- Filter
|  |- Currently failed:	355
|  |- Total failed:	33873
|  `- File list: (log files per domain)
- Actions
   |- Currently banned:	127
   |- Total banned:	680
   `- Banned IP list:

Nachdem Sie in dieser Liste IPs blockiert haben, stellen Sie sicher, dass sie blockiert sind und in iptables. Ich habe die Situation getroffen, die aufgrund der falschen Konfiguration in fail2ban festgestellt habe, dass es sich um eine blockierte IP handelt, aber in Wirklichkeit könnte es immer noch zugreifen wp-login.php oder xmlrpc.php.

Um zu überprüfen, ob alles ordnungsgemäß funktioniert, wählen Sie eine IP, die aus der Liste fail2ban blockiert ist, und suchen Sie sie in Iptables.

Führen Sie die Befehlszeile aus:

iptables -L -v -n --line-numbers

Wenn die IP, die von Fail2ban blockiert wird, wird auch in dieser Liste enthalten, bedeutet dies, dass Sie korrektes Fail2ban für WordPress konfiguriert haben.

Verwandt: So setzen Sie das Administrator -Benutzerkennwort in WordPress zurück. Ohne Zugang zu E -Mail.

Gleichzeitig ist es sehr ratsam, das Protokoll mit den Aktionen fail2ban zu überprüfen:

sudo tail -f /var/log/fail2ban.log

Wenn Sie Bedenken haben oder Hilfe benötigen, können sie Ihnen in den Kommentaren helfen.

Leidenschaft für Technologie, ich schreibe mit Freude über Stealthsetts.com, beginnend mit 2006. Ich habe eine umfassende Erfahrung in Betriebssystemen: MacOS, Windows und Linux, aber auch in Programmiersprachen und Blogging -Plattformen (WordPress) und für Online -Stores (WooCommerce, Magento, Presashop).

Heim Ihre Quelle für IT -Tutorials, nützliche Tipps und Nachrichten. Wie konfigurieren Sie Fail2ban für WordPress (WP-Login, XMLRPC)
Hinterlasse einen Kommentar