Wie sicherst Du deine /wp-admin Seite vor Hackern?

Einfach aber effektiv

WordPress ist schick. WordPress ist einfach zu bedienen.  Und WordPress wird gerne angegriffen.

Selbst wenn du ein starkes Passwort nutzt, kann es von hartnäckigen Angreifern irgendwann geknackt werden. Diese sogenannten Brute-Force-Attacken können zudem auch die Performance deiner Webseite stark belasten. Dabei ist es ziemlich einfach, den Zugang zum Admin-Bereich zu schützen.

Wie jede Webseite ist auch eine WordPress Seite nie zu 100% sicher. Angreifer können über die verschiedensten Wege ins System gelangen. Am häufigsten geschieht dies über:

  • Sicherheitslücken in Plugins oder Themes
  • eine veraltete WordPress Version
  • Sicherheitsprobleme beim Provider oder Webserver
  • unsichere Passwörter

Heute schauen wir uns  eine zuverlässige Möglichkeit zur Absicherung des WordPress Logins an. Die Seite http://meinedomain/wp-admin  und /wp-login sind  das beliebteste Angriffsziel für Hacker und der erste Anlaufpunkt, in dein System einzudringen. Hier zeige ich dir, wie du das schnell schützen kannst.

Keine Angst, wenn das auf den ersten Blick kompliziert erscheint. Wir gehen alles step-by-step durch. Es ist am Ende einfacher, als es scheint :-)

Zuerst brauchst du den genauen Speicherort deiner WP-Installation am Server, den so genannten Root-Folder. Um das heraus zu finden starte irgend einen Texteditor (nicht Word! – nimm Notepad o.ä.)  und gib ein:

<?php
$dir = dirname(__FILE__);
echo "<p>Full path to this dir: " . $dir . "</p>";
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>

Speichere diese datei als info.php lokal.

Lege diese Datei auf deinem Server im root per FTP ab (oberstes Verzeichnis, dass auch die WP Installation enthält) und rufe sie über http://meinedomain/info.php auf. Jetzt siehst du den vollständigen Pfad zu deiner Installation. Das ist wichtig, denn das brauchen wir später, damit alles funktioniert.

Und jetzt geht es los:

Htpasswd generieren:

Zuerst einmal erstellen wir uns ein hübsches Passwort. Das sollte natürlich verschlüsselt sein – sonst ist es sinnlos. Dazu gibt es einen Htpasswd Generator.

Merke dir deine Eingaben, klick auf  „create .htpasswd file“ speichere das Ganze in einer Textdatei (nicht WORD!) als htpasswd. Lade es in den Root deiner Seite per FTP und benenne es um in .htpasswd. Der Punkt vor dem Dateinamen ist wichtig für den Server, da er „versteckte Datei“ bedeutet.

Soweit so gut.

Schritt 2: htaccess bearbeiten

Auf Deinem Server wirst du im root eine .htaccess datei finden. Diese ist ebenfalls „versteckt“ und enthält bereits wichtige Anweisungen für deine WP Installation.

Wir werden diese Datei jetzt öffnen und erweitern. Und zwar um diesen Block:

# Protect wp-login.php
<Files wp-login.php>
AuthName "Protected Admin-Area"
AuthType Basic
AuthUserFile /der/genaue/pfad/zu/wp/.htpasswd
Require valid-user
</Files>

Und hier kommt jetzt der Pfad zum root  Verzeichnis ins Spiel aus dem ersten Schritt. Ersetze /der/genaue/pfad/zu/wp/.htpasswd mit dem Pfad aus der der info.php und zwar komplett. Es sollte ca. so aussehen:

<Files wp-login.php>
AuthType Basic
AuthName "Do not hack my Site. You are tracked, stupid"
AuthUserFile /www/htdocs/xyzxyz/xyz.at/.htpasswd
Require valid-user
</Files>

Bei dieser Gelegenheit lässt sich auch noch eine „Willkommensnachricht“ an den geneigten Hacker einpflegen wie im Beispiel. Das wars dann auch schon. Wenn alles geklappt hat begrüßt dich der Aufruf der /wp-admin in etwa so:

Das war es auch schon. Wer es noch auf die Spitze treiben will, der schützt die beiden Dateien .htaccess und .htpasswd vor Zugriffen. Zusätzlich kannst du auch noch die wp-config-Datei schützen und die XML-RPC-Schnittstelle deaktivieren: (alles in der .htaccess)

# Zugriff verweigern
<FilesMatch "(.htaccess|.htpasswd)">
Order deny,allow
Deny from all
</FilesMatch>
# Konfigurationsdatei schützen
<files wp-config.php>
Order allow,deny
Deny from all
</files>
# Schnittstelle abstellen
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>

Happy coding :-)

Eines darf man jedoch nicht vergessen: Das größte Sicherheitsrisiko sitzt oft auch VOR DEM GERÄT