wp-admin durch .htaccess und .htpasswd schützen – ohne Plugin
Wie kann man seinen WordPress Blog durch eine .htaccess und ein .htpasswd vor sogenannten Brute Force-Angriffe schützen? Gerade wp-admin
oder wp-login
werden gezielt angegriffen. Da ich auf meinem Server auch ab und an neue Projekte baue und dabei das Log laufen lasse konnte ich sehr gut sehen wann und in welcher Intensivität veruscht wurde sich Zugang zu meinem Adminbereich zu verschaffen. Also stellte ich mir folgende Frage:
Wie kann ich wp-admin mit einer htaccess schützen und das ohne Plugin
Ich bin kein Freund von externen Plugins. Deswegen probiere ich immer erst einmal eine Lösung ohne Plugin zu finden. Auch in diesem Tutorial das Verzeichnis wp-admin durch eine .htaccess Datei zu schützen und so die Sicherheit zu erhöhen.
Step 1 – .htaccess und .htpasswd Datei erstellen
Geht zunächst via FTP in den Ordner /wp-admin/
eurer WordPress Installation und erstellt dort die Dateien .htaccess
und .htpasswd
.
Step 2 – Pfad zur .htpasswd Datei ermitteln
Nun legt Ihr im root Ordner eurer WordPress Installation eine Datei an (Ich nenne sie immer info.php). In dieser Datei schreibt ihr folgendes <?php phpinfo(); ?>
. Nun könnt Ihr die Datei aufrufen (https://www.domainname.de/info.php) und in dieser sucht Ihr nach der folgenden Zeile: $_SERVER['DOCUMENT_ROOT']
. Kopiert euch den Pfad für den dritten Schritt.
Step 3 – Benutzername und Passwort erstellen
Mittels eines htaccess Generators könnt Ihr nun einen Benutzernamen und ein Passwort erstellen. Ebenso müsst Ihr auch den Pfad zur .htpasswd Datei angeben (siehe Step 2).
Die .htpasswd
sollte in etwa wie folgt aussehen:
testUsername:asar649/..lNy4l/FMfYk
Keine Produkte gefunden.
Und die .htaccess
sollte ungefähr so aussehen
# protect /wp-admin
AuthName "FCK U :)"
AuthType Basic
AuthUserFile /pfad/zu/wordpress/wp-admin/.htpasswd
require valid-user
Die Inhalte die Ihr vom htaccess Generator erhaltet müsst ihr nun nur noch in die im Step 1 erstellten Dateien kopieren und speichern. Anschließend sollte wp-admin durch htaccess geschützt sein und das ganze ohne ein Plugin zu installieren. Testet es doch gleich einmal.
Hinweis: Bitte verwendet für den htaccss und den WordPress Login unterschiedliche und vor allem sichere Passwörter.
Keine Produkte gefunden.
Schritte 2 und 3 sind sehr unklar… Erst soll ich mir in Schritt 2 den Pfad des Document-roots besorgen. In Schritt 3 soll ich den Pfad der .htpasswd Datei eintragen, aber es wird auf Schritt 2 verwiesen wo ich doch den Document root kopiert habe, nicht den Pfad der .htpasswd…
Hey Sev,
viele Wege führen nach Rom, dieser ist einer. Und ganz so unverständlich ist es denke ich nicht. Du brauchst den Verzeichnispfad der Datei und mittels des Generators kannst du ein PW erstellen. Wenn du Fragen hast, gerne stellen 😉 Aber von „sehr unklar“ zu sprechen ist denke ich etwas weit hergeholt bei dieser einfachen Aufgabe 😉
LG Oli
Sehe ich auch so. Selbst mir als nahezu komplett Unbedarftem machte das Nachvollziehen keine Probleme. Danke für deine Arbeit!! Hat mir sehr geholfen.
Uli
Problem ist aber, dass viele Themes die ajax aus dem wp-admin Ordner nachladen, weshalb User die htaccess sehen.
Meiner Meinung nach wäre es schlauer nur die wp-login.php zu schützen, da man sowieso ebendiese zum login aufrufen muss.
Gruß
Henry
Hesy Henry,
ein guter Punkt. Das mit den ajax hatte ich so nicht auf dem Schirm, da ich keine Fertig-Themes nutze und das Problem bei meinen eigenen Webseiten so nicht auftrat 😉 Für die meisten Seiten reicht aber eben die Anleitung aus.
LG Oli
zu Schritt 2:
ist viel einfacher für den Anwender und man muss nicht suchen
Hallo Oli,
großartiger Beitrag, dankeschön.
Dies hier ist kein wirklicher Kommentar, nur der Hinweis auf einen Minitippfehler, den Du vielleicht korrigieren möchtest. In Deinem Text steht „Wir kann ich wp-admin mit einer htaccess schützen“ ich wette du wolltest „Wie kann ich wp-admin mit einer htaccess schützen“ schreiben. 😉
Viele Grüße von
Maria einer Berliner Bloggerin aus Berin
Hey Maria,
danke für den Hinweis 🙂 Ist geändert.
LG Oli
Hey, wenn man die wp-login.php direkt aufruft und dann auf abbrechen geht wird der Login ohne Formatierung angezeigt… wie könnte man das noch unterbinden? LG