Sie können den Webserver konfigurieren, dass der Zutritt zu bestimmten Verzeichnissen nur für bestimmte Personen erlaubt wird.
Der Apache Webserver wird über die .htaccess Datei konfiguriert, die im zu sperrenden Verzeichnis erstellt wird.

Die Verwendung eines htaccess Verzeichnissschutzes bringt in der Praxis viele Vorteile mit sich, darunter Verbesserungen bei der Sicherheit und bei der Umsetzung der DSGVO (Datenschutz Grundverordnung).

    Ein zusätzlicher Verzeichnisschutz des /wp-admin Ordners wie z.B. bei WordPress erzeugt eine zusätzliche Sicherheitsebene. Das Aufwand-/Nutzenverhältnis verbessert sich. Der Aufwand eines Hackingversuchs steigt und macht das Hackingziel unattraktiv.
    Die DSGVO schreibt vor, dass für die Erfassung personenbezogenen Daten wie es IP Adressen sind, die Zustimmung des Besuchers erfolgen muss. Weil der WordPress Login über den Aufruf von /wp-admin erfolgt, gilt es dieses Verzeichnis besonders zu schützen. Wie man WordPress absichern kann haben wir in einem früheren Artikel erörtert.
    Wird ein IP basierendes Plugin verwendet, das den Login einschränkt, könnte das Einholen einer Zustimmung des Besuchers erforderlich werden. Warum das zwar aberwitzig klingt, aber dennoch zur Zeit so gesehen wird, lesen Sie im Artikel zur DSGVO.
    Ein Verzeichnisschutz kann aber auch einfach dann Sinn machen, wenn ein Internetauftritt vorübergehend nicht öffentlich aufrufbar sein soll, wie z.B: bei einem Relaunch.

    htaccess Verzeichnisschutz erstellen

    Den htaccess Verzeichnisschutz erstellen Sie mit den folgenden Schritten.
    Öffnen (oder Erstellen falls noch nicht vorhanden) Sie die .htaccess Datei in dem Ordner, für den Sie den Verzeichnisschutz einrichten möchten. Im Beispielfall ist das der der Ordner wp-admin, der sich im „Document Root“ /, also dem vom Webserver ausgelieferten Hauptverzeichnis der Webseite.

    Fügen Sie in diese Datei den folgenden Inhalt ein:

    Die Ordnerstruktur /var/www/vhosts kann je nach Hosting variieren. Das muss entsprechend angepasst werden.

    WordPress Verzeichnisschutz für den Ordner wp-admin und die Datei wp-login.php

    Als Alternative zum Verzeichnisschutz des Ordners /wp-admin/ kann der Zugang zum WordPress Login auch durch die Absicherung der wp-login.php erfolgen.
    In diesem Fall wird in der .htaccess des Document Root folgender Code eingefügt:

    Denken Sie auch hier daran, die Ordnerstruktur des Hostings und den Namen vom Benutzerverzeichnis anzupassen.

    Passwort erstellen

    Speicherort der .htpasswd festlegen

    Im nächsten Schritt erzeugen Sie eine Datei, in der das Kennwort verschlüsselt abgelegt wird. Den Namen dieser AuthUserFile Datei haben wir in der .htaccess Date bereits definiert. Sie trägt den Namen .htpasswd und soll in /var/www/vhosts/benutzerverzeichnis liegen.
    Vom Hosting hängt ab, ob Sie außerhalb vom Document Root Zugriff haben. In unserem Beispiel liegt die .htpasswd eine Ebene oberhalb des Document Root. Einfachere Hostingformen wie z.B. Webhosting erlauben nur den Zugriff auf den Document Root / Webroot. Der Speicherort muss in der htaccess dann entsprechend angepasst werden.

    Neue .htpasswd erstellen

    Wechseln Sie mit dem Befehl cd zum erzeugen der .htpasswd in das entsprechende Verzeichnis.
    Mit dem folgenden Befehl erstellen (Achtung: dadurch wird eine vorhandene .htpasswd überschrieben) Sie die Datei .htpasswd:

    Der Parameter -c (create) gibt an, dass eine neue Datei .htpasswd erstellt werden soll, bzw. eine vorhandene überschrieben werden soll.
    Der Benutzername soll „benutzername“ sein.
    Der Parameter -B legt fest, dass das Kennwort in der .htpasswd mit bcrypt verschlüsselt werden soll, das als sehr sichere Verschlüsselungsmethode gilt.

    Vorhandener .htpasswd einen neuen Benutzer hinzufügen

    Wenn eine .htpasswd Datei bereits vorhanden ist, können Sie dieser Datei neue Benutzer mit Kennwörtern hinzufügen. Diese werden in der Datei in einer neuen Zeile an die vorhandenen Benutzernamen angehängt.