Für Webhosting

In diesem Artikel erfahren Sie, wie Sie einen serverseitigen Passwortschutz für Ihre Website einrichten.

Mit einem serverseitigen Passwortschutz (HTTP-Basic-Authentication) sichern Sie Verzeichnisse Ihrer Website effektiv ab. Bevor der Webserver Inhalte ausliefert, fordert er vom Besucher Benutzername und Passwort an. Diese Methode ist deutlich sicherer als JavaScript-Lösungen, da die Prüfung direkt auf dem Server stattfindet.

Hinweis

Wenn Sie Ihren Vertrag vor dem 10.09.2024 bestellt haben, können Sie den Schutz auch direkt in Ihrem IONOS Konto einrichten. Weitere Informationen hierzu finden Sie im Artikel Verzeichnisschutz für Webspace im IONOS Konto einrichten.

Voraussetzungen

  • Ein IONOS Webhosting-Paket mit SSH-Zugang.

Das Prinzip kurz erklärt

Für den Passwortschutz benötigen Sie zwei Dateien im selben Verzeichnis Ihres Webspaces.

  • .htpasswd:  Hier werden die Benutzer sowie ihre verschlüsselten Passwörter gespeichert.
  • .htaccess: Diese Datei fungiert als „Türsteher“. Bei jedem Aufruf der Website prüft sie, ob der Besucher die korrekten Zugangsdaten aus der .htpasswd eingegeben hat.

Schritt 1: Zielverzeichnis ermitteln

Auf einem Webspace liegen häufig mehrere Websites in verschiedenen Ordnern. Um zu vermeiden, dass Sie versehentlich die falsche Seite sperren, müssen Sie zunächst prüfen, in welchem Ordner sich Ihr Projekt befindet.

  • Loggen Sie sich in Ihr IONOS Konto ein.
  • Klicken Sie in der Titelleiste auf Menü > Domains & SSL.

  • Klicken Sie auf die Domain, deren Website Sie schützen wollen.

  • Suchen Sie den Eintrag Ziel.

Dort sehen Sie das sogenannte Heimatverzeichnis (z. B. /wordpress oder /mein-shop). Merken Sie sich den Namen dieses Ordners. In Schritt 3 müssen Sie sich genau in diesen Ordner begeben.

Schritt 2: SSH-Verbindung herstellen

Um Befehle direkt auf Ihrem Webspace auszuführen, müssen Sie zunächst eine verschlüsselte Verbindung (SSH) aufbauen.

Die folgenden Anleitungen zeigen Ihnen, wie Sie eine SSH-Verbindung herstellen. Wählen Sie die für Ihr Betriebssystem passende Anleitung aus:

Schritt 3: In das Zielverzeichnis wechseln

Nachdem Sie die SSH-Verbindung hergestellt haben, befinden Sie sich im Hauptverzeichnis Ihres Webspace. Dort sehen Sie in der Regel die Ordner all Ihrer Projekte.

Achtung bei mehreren Websites:  Erstellen Sie die Schutzdateien nicht direkt im Hauptverzeichnis, es sei denn, Sie möchten alle Ihre Websites mit demselben Passwort sperren. Wechseln Sie stattdessen immer in den Ordner der spezifischen Website.

Um in den richtigen Ordner zu navigieren, nutzen Sie folgende Befehle:

  • Um sich die vorhandenen Ordner anzeigen zu lassen, geben Sie ls (list) ein und drücken Sie Enter.

    ls

  •  Wechseln Sie in den in Schritt 1 ermittelten Ordner (z. B. „mein-shop”), indem Sie folgenden Befehl eingeben und mit der Enter-Taste bestätigen:

    cd mein-shop

Tipp: Sie können nach den ersten Buchstaben des Ordnernamens die Tab-Taste drücken, um den Namen automatisch zu vervollständigen.

Schritt 4: Benutzer und Passwortdatei anlegen (.htpasswd erstellen)

Erstellen Sie nun die Datei .htpasswd und legen Sie den ersten Benutzer an. 

  • Geben Sie folgenden Befehl ein und bestätigen Sie mit Enter. Ersetzen Sie dabei <BENUTZERNAME> durch den gewünschten Anmeldenamen (z. B. admin oder gast):

    htpasswd -Bc .htpasswd <BENUTZERNAME>

  • Drücken Sie Enter.
  • Geben Sie das gewünschte Passwort ein und bestätigen Sie es mit Enter. Aus Sicherheitsgründen werden bei der Eingabe keine Zeichen oder Sternchen angezeigt. Geben Sie das Passwort einfach „blind“ ein.

Die .htpasswd-Datei wird erstellt und das Passwort wird darin mithilfe von bcrypt sicher verschlüsselt gespeichert.

Schritt 5: Schutz konfigurieren (.htaccess erstellen)

Damit der Schutz aktiv wird, müssen Sie dem Server mitteilen, wo die Passwortdatei sich genau befindet. Dazu benötigt er den absoluten Systempfad.

  • Um den Systempfad zu ermitteln, geben Sie im aktuellen Verzeichnis pwd ein und drücken Sie Enter:

    pwd

  • Kopieren Sie den Pfad in eine Textdatei.  Je nachdem, wann Ihr Vertrag eingerichtet wurde, unterscheidet sich der ausgegebene Pfad.

    Systempfad-Beispiel für Verträge bis 17.09.2025:

     /kunden/homepages/12/d12345678/htdocs

    Systempfad-Beispiel für Verträge ab 18.09.2025:

    /home/www/public/mein-shop

  • Erstellen Sie nun die .htaccess-Datei. Öffnen Sie dazu den Texteditor Nano, indem Sie den folgenden Befehl eingeben und mit der Enter-Taste bestätigen:

    nano .htaccess

  • Kopieren Sie den folgenden Block in den Editor:

    AuthType Basic
    AuthName "Geschuetzter Bereich"
    AuthUserFile /PFAD/ZU/IHRER/DATEI/.htpasswd
    require valid-user

  • Um den Pfad anzupassen, navigieren Sie mit den Pfeiltasten zur Zeile AuthUserFile. Löschen Sie den Platzhalter /PFAD/ZU/IHRER/DATEI/.htpasswd und fügen Sie den Pfad ein, den Sie oben mit pwd ermittelt haben, ergänzt um /.htpasswd.

    So sollte die Zeile am Ende aussehen:

    Beispiel für Verträge bis 17.09.2025:

    AuthUserFile /kunden/homepages/12/d12345678/htdocs/mein-shop/.htpasswd

    Beispiel für Verträge ab 18.09.2025:

    AuthUserFile /home/www/public/mein-shop/.htpasswd

  • Um die Datei zu speichern, drücken Sie die Tasten Strg + O (Speichern), bestätigen Sie mit Enter und drücken Sie anschließend Strg + X (Beenden).
     

Der Passwortschutz ist nun sofort aktiv.

Schritt 6: Testen

Öffnen Sie Ihren Browser und rufen Sie Ihre Website auf. Es sollte sich nun ein Anmeldefenster öffnen. Geben Sie dort den Benutzernamen und das Passwort aus Schritt 4 ein. Wenn die Seite lädt, war die Einrichtung erfolgreich!

Fehlerbehebung

 
Fehler 500 (Internal Server Error)

Erhalten Sie nach der Aktivierung des Passwortschutzes auf Ihrer Seite die Fehlermeldung 500, deutet dies in der Regel auf einen Fehler in der .htaccess-Datei hin.

  • Ursache: Die häufigste Ursache ist, dass der Pfad bei AuthUserFile nicht zu 100 % korrekt ist. Prüfen Sie ihn daher erneut mit pwd.
  • Lösung: Um die Seite wieder zugänglich zu machen, löschen Sie die .htaccess per FTP oder SSH (rm .htaccess) und wiederholen Sie anschließend Schritt 5.

 Keine Passwortabfrage

Wenn keine Passwortabfrage erfolgt, befindet sich die .htaccess vermutlich im falschen Ordner. Prüfen Sie deshalb, ob Sie sich im Verzeichnis der Domain befinden (siehe Schritte 1 und 3).