Website-Icon adminForge

WordPress via .htaccess absichern

Aus gegebenen Anlass, dieser Blog, möchte ich kurz erklären wie wir eine WordPress Webseite auch ohne Fail2Ban, nämlich per .htaccess, absichern können.

Punkt 1: Zugriffe auf die XML-RPC Schnittstelle abstellen

Um die Schnittstelle komplett zu deaktivieren, reichen diese vier Zeilen in der Apache Webserver Konfiguration oder .htaccess Datei aus.

Nachteil: Kein Empfang von Trackbacks, keine Nutzung von Drittanbietersoftware wie WordPress for Android/iOS. Für Blogger, die auf Trackbacks setzen oder eine  Mobile App nutzen, kommt die Abschaltung kaum in Frage.

Punkt 2: Zugriffe auf die XML-RPC Schnittstelle einschränken

Mit einem aktivierten mod_setenvif Apache Modul kann der User Agent gefiltert werden.

Im Beispiel-Code sind Zeile für Zeile folgende Clients freigegeben:
Poster
WordPress-Blogs
Windows Live Writer
WordPress for iOS
WordPress for Android
Nicht benötigte Freigaben können zeilenweise entfernt werden.
Neue User Agents können hinzugefügt und somit freigeschaltet werden.

Punkt 3: Zugriff auf bestimmte Dateien unterbinden

Mit den folgenden Zeilen kann der Zugriff auf diverse Dateien verboten werden.

Punkt 4: Absicherung der Login Seite wp-login.php

Die Login Seite können wir wie folgt mit einer extra HTTP Auth Abfrage ausstatten, für den Apache wahlweise in der vHost Konfiguration oder .htaccess Datei im Root-Ordner der WordPress Installation.
Allow from kann bei Bedarf auch weggelassen werden!

Apache:

 Nginx:

Die Kennwortdatei und das Passwort erstellen wir mit dem folgenden Befehl (1. Apache | 2. Nginx).

Punkt 5: Direkte Ausführung von PHP-Dateien unterbinden

Oftmals ist der Uploads Ordner unter /wp-content/uploads ein beliebter Einfallspunkt für Angreifer, da dieser in den meisten Fällen beschreibbar sein muss. Die Ausführung von PHP Dateien kann mit einer .htaccess Datei im genannten Ordner wie folgt unterbunden werden.

Apache:

Nginx:

-Dominion

1
Die mobile Version verlassen