Die htaccess Datei – So sichern Sie Ihre Website

Posted by in Sicherheit, WordPress

Sie suchen nach Möglichkeiten Ihre WordPress Website gegen Hackerangriffe zu schützen?

Nützen Sie die Möglichkeiten der
htaccess Datei, Ihren Internetauftritt sicherer zu machen.

Immer häufiger werden Websites von aussen attackiert. Es gibt viele Möglichkeiten sie gegen diese Angriffe zu schützen. Wie man sich zum Beispiel absichert wenn man das Content Management System WordPress nutzt, habe ich bereits in anderen Artikeln auf meinem Blog vorgestellt. Gerne werden Plugins, wie zum Beispiel Limit Login Attempts zur Verteidigung der Websites genutzt.

Diese Plugins sind empfehlenswert und erfüllen Ihren Zweck. Dennoch ist bei Ihrer Verwendung zu beachten, dass sie innerhalb von WordPress Verwendung finden. Das bedeutet, dass die Verteidigung Ihrer Website direkt von WordPress durchgeführt wird.

Stellern wir uns das einmal ganz handfest wie eine ‚Festung‘ vor: Dass bedeutet bildlich gesprochen, dass Ihr Internetauftritt von mehr oder minder massiven Steinen geschützt wird, aber ohne ‚feste Aussenmauer‘ da steht.  Das bietet potentiellen Angreifern deutlich mehr Angriffsmöglichkeiten und deutlich mehr Angriffsfläche.  

Zudem ist im Angriffsfall ihre Website selbst mit der Abwehr der Attacke beschäftigt. Dies kann die Nicht-Erreichbarkeit Ihrer Website verursachen, wohlgemerkt NICHT weil Ihre Website gehackt wurde, sondern weil sie gerade damit beschäftigt ist einen Angriff abzuwehren. Das klingt nicht nur unbefriedigend, dass ist es auch …

Besser ist es, wenn Ihr Content Management System (CMS)  mögliche Angriffsversuche gleich von aussen abblockt. Angriffe zielen bevorzugt auf den Administrationsbereich eines CMS. Haben Hacker hier Zugriff erlangt, so haben Sie Kontrolle über Ihr System und können von dort aus ihr Unwesen treiben.

Angreifer sollten diesen Bereich also möglichst niemals zu Gesicht bekommen, noch nicht einmal die schlichte Login Seite Ihres CMS. Das erreichen Sie, indem Sie einen einfachen aber sehr effektiven weiteren Passwortschutz erreichten, der den Administrationsbereich gegen unerwünschte Zugriffe von aussen abschirmt.

In diesem Artikel zeige ich Ihnen, wie Sie Ihren WordPress Internetauftritt gegen Angriffe absichern.

Sichern Sie Ihre Website mit der htaccess Datei in 5 Minuten.

Das errichten der oben erwähnten ‚festen Aussenmauer‘ ist relativ einfach, Sie benötigen hierzu nicht unbedingt IT-Kenntnisse 😉 Nur ein paar einfache Handgriffe sind notwendig: Ein FTP-Zugang zu Ihrem Webspace, ein FTP-Programm und ein einfacher Text-Editor (Word ist keiner).

Ihre Ausrüstung:

FTP-Zugang:
Sollten Sie diesen nicht parat haben: den Zugang zu Ihrem Fileserver erfahren Sie von Ihrem Provider. Loggen Sie sich in Ihren Kundenaccount ein und halten Sie nach FTP Ausschau. Sie werden dort eine FTP-Adresse, sowie Benutzername und dass zugehörige Passwort erhalten.

FTP-Programm:
FTP Programme gibt es viele, für alle Plattformen. Sie hier vorzustellen, würde den Rahmen des Artikels sprengen. Eine gute und kostenlose Lösung ist für alle Plattformen ist Filezilla. >> Laden Sie Filezilla hier herunter, installieren Sie das Programm und richten Sie den Zugang zu Ihrem Webserver ein. Nutzen Sie den Link auf dieser Seite. Solllten Sie einen anderen Link googlen etc. achten Sie drauf, dass Sie nicht auf irgendeinen Abzocker hereinfallen. Filezilla ist grundsätzlich kostenlos.

Text Editor:
Nutzen Sie zum editieren der htaccess Datei einen einfachen Text-Editor, zB. den Microsoft Editor (Standard auf Windows-Rechnern) oder TextEdit (Standard auf Apple OS-Rechnern). Nutzen Sie auf keinen Fall Textverarbeitungsprogramme wie Word / Open Office / Page etc. !!!

Alles parat? OK – Los gehts.

Schritt 1.
Erstellen Sie eine .htpasswd (PUNKThtpasswd)

Erstellen Sie in Ihrem Text-Editor eine neue leere Datei. Rufen Sie den >> Htpasswd Generator auf. In den Eingabefeldern tragen Sie den gewünschten Nutzernamen sowie ein sicheres Passwort ein – aus dieser Kombination aus Benutzernamen und Passwort ergibt sich der Zugang für die .htaccess Abfrage.

Klicken Sie auf den Button zur Erzeugung des htpasswd-Files. Kopieren Sie die vom Htpasswd Generator erzeugte Zeichenfolge – die sieht ungefähr wie folgt aus:
IhrPersnlicherBenutzername:$apr1$l3IaZD4K$cDVJkiJruLT0alULr3yoW0
in die geöffnete Datei in Ihrem Text-Editor und speichern Sie sie als .htpasswd.

Laden Sie diese Datei in ein Verzeichnis innerhalb Ihres WordPress-Verzeichnisses auf Ihren Webserver. Sie können die Datei zum Beispiel in einem von Ihnen erstellten Unterordner ‚verstecken‘.

Beachten Sie bitte:
Der Passwortgenerator verschlüsselt das von Ihnen verwendete Passwort mit dem sogenannten MD5 Algorithmus – aus dem Passwort: Conchita-Wurst-2014 wird verschlüsselt also: $apr1$SgjZFv/0$k43CHibXrsoTwG/72.8wp. Sie müssen sich allerdings nur Conchita-Wurst-2014 als Password merken, nicht die MD5 Verschlüsselung 😉

Schritt 2. 
Verknüpfen Sie die .htaccess Datei mit Ihrer 
.htpasswd Datei

Navigieren Sie mit Ihrem FTP-Programm in das WordPress-Verzeichniss Ihres Webservers. Suchen Sie dort in der obersten Verzeichnisebene eine Datei mit dem Namen  „.htaccess „(PUNKThtaccess) . Erstellen Sie zunächst eine Sicherungskopie der vorhandenen .htaccess Datei. Benennen Sie anschließend die .htaccess in htaccess um. Also OHNE Punkt. Laden Sie dann die Datei auf Ihren Rechner herunter und öffnen Sie in Ihrem Text-Editor.

Manchmal existiert noch keine .htaccess Datei in Ihrem WordPress-Verzeichnis.  Macht nichts. Erstellen Sie in diesem Fall Ihrem Text-Editor eine weitere neue leere Datei. Fügen Sie in die geöffnete Datei folgenden Code ein und passen Sie den Pfad zu Ihrer .htpasswd Datei nach folgendem Muster an:
http://www.ihre-domain.com/pfad/zu/ihrer/.htpasswd 

<Files wp-login.php>
 AuthName "Admin-Bereich"
 AuthType Basic
 AuthUserFile http://www.ihre-domain.com/pfad/zu/ihrer/.htpasswd  
 require valid-user
</Files>

<FilesMatch "(\.htaccess|\.htpasswd|wp-config\.php|liesmich\.html|readme\.html)">
 order deny,allow
 deny from all
</FilesMatch>

Abschließend laden Sie die .htaccess in die oberste Verzeichnisebene Ihres WordPress Verzeichnisses auf Ihren Webserver.
Das war es schon.

Update

Achtung STRATO-User.
Wenn Sie Ihre Website(s) bei dem Provider Strato hosten, löst der oben aufgelistete Code einen Fehler aus.
Wie Sie den Schutz der .htaccess-Datei auf einem Start-Server einrichten können, finden Sie unten im Abschnitt Kommentare im Beitrag von Marion Lustig vom 09.01.2015.

Fazit:

Natürlich schließt der oben aufgeführte Schutz der htaccess Datei einen Einbruch keinesfalls hundertprozentig aus – eine hundertprozentige Sicherheit gibt es nicht. Zum Beispiel würde ein auf dem heimischen Rechner installierter Trojaner auch diese Anmeldewerte heimlich an einen Späher übertragen.

Die Vielfalt, Hartnäckigkeit und Einfallsfreudigkeit der Hacker scheint unerschöpflich. Doch der Schutz der htaccess Datei ist ein ernstzunehmender Stolperstein auf dem Weg zur feindlichen Übernahme. Er konnte sich in der Vergangenheit bereits vielmals als zuverlässige Abwehr vor ungebetenen Gästen bewähren und vor Ausnutzung von bekannt gewordenen WordPress-Lücken zum Zugriff auf den Administrationsbereich schützen.

Appell zum Schutz der htaccess Datei von Sergej Müller

Lieber eine Passwortabfrage zu viel als zu wenig.
Dringende Aufruf an alle Blogger: Sichert eure Adminbereiche ab! Die Angelegenheit ist schneller und unkomplizierter erledigt als vermutet. Die in den meisten Fällen bereits vorhandene Server-Datei .htaccess (meist von WordPress für die Steuerung der Permalinks angelegt oder für das Caching-Plugin Cachify benötigt) wird um 2 Code-Blöcke mit minimaler Pfadanpassung erweitert.

>> Appell zum Schutz der htaccess Datei von Sergej Müller

Für Neugierige:
Was ist eigentlich eine htaccess Datei?

Eine .htaccess-Datei wird bei jedem Zugriff eines Servers auf ein Verzeichnis oder einer Datei im und unterhalb des Verzeichnisses der .htaccess-Datei gelesen und ausgewertet. Wird zum Beispiel von einem Nutzer die Datei „datei.htm“ im Verzeichnis „/Ordner/“ abgefragt, so schaut der Webserver erst in allen höher gelegenen sowie direkt im Verzeichnis „/Ordner/“ nach einer vorhandenen .htaccess-Datei. Dabei werden alle gefundenen .htaccess-Dateien ausgewertet.

Mit Hilfe von  .htaccess-Dateien kann man also als Webseitenbetreiber eigene Verzeichnisse komfortabel administrieren, ohne dass an der globalen Webserverkonfiguration des Webservers selbst etwas geändert werden muss. In der Regel besitzt man als einfacher Webseitenbetreiber diese globalen Rechte zur Serverkonfiguration auch nicht.

Wikipedia:
Die .htaccess (engl. hypertext access „Hypertext-Zugriff“) ist eine Konfigurationsdatei auf NCSA-kompatiblen Webservern wie Apache, in der verzeichnisbezogene Regeln aufgestellt werden können. Beispielsweise kann man darüber ein Verzeichnis oder einzelne Dateien durch HTTP-Authentifizierung vor unberechtigten Zugriffen schützen.

Auch Fehlerseiten oder Weiterleitungen innerhalb des Servers (siehe Rewrite-Engine) lassen sich darin festlegen, ohne dass der Server neu gestartet werden muss: Änderungen in der .htaccess-Datei treten ohne Weiteres sofort in Kraft, weil die Datei bei jeder Anfrage an den Webserver ausgewertet wird. Bestimmungen in einer .htaccess wirken wie Directory-Abschnitte in zentralen Konfigurationsdateien wie einer httpd.conf. Sie gelten nur für das Verzeichnis in dem die .htaccess gespeichert ist und in allen seinen Unterverzeichnissen, können aber auch in den Unterverzeichnissen überschrieben werden.
>> Zum Wikipedia-Artikel über htaccess Dateien

Artikel erstellt am 4. September 2015 von Thorsten Siefert