Indianische Auslieferungsbedingungen für WordPress

Der heutige Artikel der Serie “WordPress absichern” zeigt einige Anpassungen der serverseitigen Zugangsberechtigungen, rein auf WordPress ausgelegt.

.htaccess Dateien sagen dem Apache -Webserver (und allen anderen NCSA-kompatiblen), was er beim ausliefern der Seiten in diesem Verzeichnis zu beachten hat. Ob der verwendete Webserver diese Dateien versteht, sollte man natürlich zuerst nachlesen. Der Webserver sollte eigentlich Standardmäßig so konfiguriert sein, dass er diese Dateien berücksichtigt und sie auch niemals ausliefert.

Außerdem sollte man darauf achten, dass der Webserver keine Schreibrechte auf die Dateien hat – damit dieser sie nicht verändern kann.


Im Hauptverzeichnis von WP sollte auf jeden Fall eine .htaccess-Datei liegen. WordPress erstellt diese normalerweise auch schon bei der Installation. Wenn sie bereits vorhanden ist, kann man sie ergänzen – aber Vorsicht beim nächsten Update! Nach dem Update muss die Änderung unter Umständen wiederholt werden! Wenn nicht, folgendes in eine leere Datei einfügen.

Options All -Indexes
<Files wp-config.php>
Order Deny,Allow
Deny from all
</Files>

Zuerst verhindert man, dass in Verzeichnissen, in welchen keine index-Dateien (z.B. index.php) liegen, alle Dateien aufgelistet werden. Der Block mit der Files-Direktive verhindert, dass die Datei wp-config.php ausgeliefert wird.

Im Verzeichnis /wp-admin/ sollte ebenso eine .htaccess liegen. Deren Inhalt sollte unter anderem folgender sein:

AuthType Basic
AuthName "my blog admin area"
AuthUserFile /pfad/zu/wp-admin/.htpasswd
Require valid-user

So wird eine serverseitige Authentifikation eingerichtet. Der Benutzer der hier eingerichtet wird, hat nichts mit den bereits im WP angelegten Benutzern zu tun. Diese zusätzliche Authentifikationsschicht erhöht den Schutz der WordPress-Installation deutlich.

Um einen konkreten Benutzer für diesen Zweck anzulegen, kann man die eben konfigurierte Datei .htpasswd unter einem Linux/Unix System auf der Konsole mit dem Befehl

htpasswd -c /pfad/zu/wp-admin/.htpasswd myBlogAdminUser

erstellen. So legt man einen Benutzer “myBlogAdminUser” an. Das Passwort, welches dieser Benutzer bekommen soll, fragt das Programm dann ab und speichert es verschlüsselt in der Datei. Um weitere Benutzer hinzuzufügen muss die Option -c dann allerdings weggelassen werden. Sie erzeugt sonst jedes mal eine neue Datei, welche die alte überschreibt.
Wer keinen Konsolenzugang für seinen Webserver hat, oder wem das zu umständlich ist, der kann sich den Dateiinhalt online generieren lassen und im Anschluss in eine Textdatei mit dem Namen .htpasswd einfügen. Diese muss dann noch in das /wp-admin/ Verzeichnis auf dem Server kopiert werden (das gleiche gilt natürlich auch für die .htaccess Dateien).


Die Artikelserie “Absichern von WordPress” soll helfen, die eigene Installation von WordPress auf einem Webserver gegen Angriffe zu schützen. Bisher sind erschienen:

Leave a Reply

Your email address will not be published. Required fields are marked *