Security Blog
Security Blog
Posted By Gregory

Härten von WordPress mit WP Cerber und NGINX

Die Zusammenarbeit dieser beiden kann die Verteidigung jeder Site erheblich verbessern


English version: Hardening WordPress with WP Cerber and NGINX


NGINX ist ein kostenloser Open-Source-Hochleistungs-HTTP-Server. WP Cerber ist ein kostenloses Open-Source-Sicherheits-Plugin, das WordPress-basierte Websites vor Eindringlingen und Hackern schützt.

Wie man WordPress mit WP Cerber und NGINX zusammen härtet

Zunächst müssen Sie eine benutzerdefinierte Anmelde-URL einrichten und den direkten Zugriff auf wp-login.php blockieren und HTTP 404 Not Found Error zurückgeben . Details findest du hier: So benennst du wp-login.php um . Richten Sie aus Sicherheitsgründen Ihre benutzerdefinierte Anmelde-URL nicht als „login“ oder „wp-admin“ ein.

Dann müssen Sie den Zugriff auf die Datei wp-login.php in der NGINX-Konfigurationsdatei blockieren. Standardmäßig wird diese Datei im Verzeichnis /etc/nginx, /usr/local/nginx/conf oder /usr/local/etc/nginx abgelegt.

Fügen Sie diese Zeile zum Serverabschnitt der NGINX-Konfigurationsdatei für Ihre Site hinzu:

 Standort /wp-login.php { return 404; }

Wenn Sie XML RPC auf Ihrer Website nicht verwenden, empfehle ich dringend, auch diese Zeile hinzuzufügen:

 Ort /xmlrpc.php { return 404; }

Schließlich schützen wir unsere Website und unseren Server vor Überlastung durch Angreiferversuche oder automatisierte Versuche dummer Bots. Lassen Sie uns dies tun, indem wir die Fähigkeit von NGINX nutzen, die Rate eingehender Anfragen zu begrenzen. Mit der Ratenbegrenzung können Sie die Rate eingehender Anfragen über einen bestimmten Schwellenwert hinaus verlangsamen.

Öffnen Sie die Hauptkonfigurationsdatei nginx.conf und suchen Sie den Abschnitt http . Fügen Sie die folgende Zeile darin hinzu:

 limit_req_zone $binary_remote_addr zone=main:10m rate=60r/m;

Kehren Sie dann zum Serverbereich Ihrer Website zurück und suchen Sie die Zeile

 Standort / {

Fügen Sie diese Zeile hinzu, nachdem Sie die geschweiften Klammern geöffnet haben:

 limit_req zone=main burst=10 nodelay;

Änderungen, die wir in der Konfigurationsdatei vorgenommen haben, werden erst angewendet, wenn der Befehl zum Neuladen der Konfiguration an nginx gesendet oder neu gestartet wird. Um die neue Konfiguration zu laden, führen Sie in der Kommandozeile Ihres Servers aus:

 Service Nginx neu laden

Erledigt!

Jetzt können Sie und Ihr Backend-Server (möglicherweise von Apache unterstützt) entspannen. Diese mehreren einfachen Schritte ermöglichen es Ihnen, den eingehenden Datenverkehr von „schlechten Anforderungen“ zu bereinigen und der Serverressource zu ermöglichen, „richtige Anforderungen“ zu bedienen.


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.