WordPress ist die am häufigsten genutzte Blog-Software, aber durch ihre Beliebtheit auch ein gefährliches Einfallstor für Angreifer: Die können darüber einen Webserver infiltrieren und übernehmen. Das geht vor allem über unsichere Passwörter, die mit Brute-Force Methoden probiert werden. Um seine WordPress Installation so sicher wie möglich zu halten, muss man die Updates für WordPress und die Plugins immer möglichst schnell einspielen. Außerdem helfen Firewalls und Schutz-Plugins wie Wordfence, das auch in der kostenlosen Variante schon Angreifer vom Einloggen abhalten kann.
Ein einfacher Trick ist dabei aber besonders effektiv: Mit einem .htaccess Schutz für die Login-Datei setzt man quasi eine zweite, verschlossene Tür vor die eigentliche “Haustür” zum Blog. Nutzer müssen sich zunächst bei der .htaccess Passwort-Abfrage erfolgreich anmelden, bevor sie zum eigentlichen Login-Feld kommen. So macht man es den Angreifern direkt doppelt so schwer: Zumindest, wenn man unterschiedliche Nutzernamen und Passwörter benutzt.
.htaccess Schutz für WordPress
Um den Schutz für den WordPress Login einzurichten, braucht man zwei Dateien, die in den WordPress-Ordner kopiert werden müssen: In die Datei “.htpasswd” (wichtig: Der Punkt vor dem Dateinamen!) kommen Username und Passwort. Diese sind allerdings kodiert. Die zweite Datei heißt “.htaccess” und ist vielleicht schon vorhanden. Dann müssen die Zeilen einfach am Ende eingefügt werden. Gibt es die Datei noch nicht, kann man beide mit einem einfachen Texteditor erstellen und in das WordPress Verzeichnis laden. Anschließend fragt der Server direkt nach einem User-Namen und Passwort: Ohne die wird die Login-Seite von WordPress gar nicht geladen. Die Angreifer haben es deutlich schwerer, den Zugang zu WordPress zu knacken.
So geht’s: WordPress Login sichern in 3 Schritten
- Zunächst erstellt man die Datei “.htpasswd” mit einem Texteditor: Hier müssen die Usernamen und Passwörter (verschlüsselt) stehen, mit denen man die Login-Seite (wp-login.php) absichern möchte. Dies sollten aber nicht die normalen WordPress Usernamen sein, sondern eigene. Wie man Username und Passwort erstellen und verschlüsseln und anschließend als .htpasswd Datei speichern kann, zeigen wir in diesem Artikel.
- Die “.htpasswd” Datei muss in das WordPress-Verzeichnis kopiert werden, zusammen mit der Datei “wo-bin-ich.php”: Diese zeigt den Pfad auf dem Server an, in dem sich das Blog befindet – und auch die frisch hineinkopierte Datei “.htpasswd”. Das ist wichtig, da man den Pfad zu der Datei absolut angeben muss, sonst funktioniert der Schutz nicht und der Server zeigt eine Fehlermeldung. Die Datei “wo-bin-ich.php” kann man hier herunterladen und nach dem Aufrufen, wenn man sich die Pfade kopiert hat, wieder löschen.
- Als letztes braucht man die Text-Datei “.htaccess” in seinem WordPress Ordner: Hier wird der Schutz für die Login-Seite eingestellt. Ist die Datei noch nicht vorhanden, kann man sie mit einem Texteditor erstellen und den Inhalt unten hineinkopieren. Gibt es die Datei, ergänzt man diese Zeilen einfach!
Schutz für den WordPress Login: Das kommt in die .htaccess Datei
# ******************************************************
# Schutz des WordPress-Logins: wp-login.php ************
<Files wp-login.php>
AuthType Basic
AuthName "Admin Bereich"
AuthUserFile /var/www/html/blog/.htpasswd
Require valid-user
</Files>
# Zugriff auf Server-Dateien verbieten *****************
<FilesMatch "(\.htaccess|\.htpasswd)">
Require all denied
</FilesMatch>
# ******************************** computerhilfen.de ***
Wichtig ist, dass man den Dateipfad bei “AuthUserFile” anpasst: Hier muss man den Wert aus Schritt 2 eintragen. Wichtig ist der Slash “/” am Anfang: Nur wenn dieser Pfad richtig ist, funktioniert es ohne Fehlermeldung. Geschützt wird damit die login-Seite (wp-login.php) und die beiden angelegten Logindateien .htaccess und .htpasswd, damit diese nicht einfach ausgelesen werden können.
Liegt das Blog in einem Unterordner, zum Beispiel www.domain.de/blog, kopiert man alle Dateien (.htaccess, .htpasswd und wo-bin-ich.php) direkt in den Blog-Ordner, nicht in das Hauptverzeichnis.