Passwortschutz für ein Verzeichnis mit Apache

Erfahren Sie, wie Sie ein Verzeichnis mit Hilfe der grundlegenden HTTP-Authentifizierung des Apache mit einem Passwort schützen können. Diese Methode ermöglicht es Ihnen, einen geschützten Bereich Ihrer Website einzurichten, der einen Benutzernamen und ein Passwort für den Zugriff erfordert.

    Anforderungen

    Cloud Server von IONOS

    Vertrauen Sie auf flexibel skalierbare und zuverlässige Cloud Server auf hochverfügbarer Infrastruktur mit Standort Deutschland inklusive persönlichem Berater und minutengenauer Abrechnung - Sie zahlen also wirklich nur Ihre benötigten Ressourcen!

    VMware Virtualisierung
    Rest API
    Unlimited Traffic

    Erstellen der Passwort-Datei

    Der erste Schritt besteht darin, eine Passwortdatei zu erstellen, mit der der Apache den Benutzernamen und das Passwort überprüft. Diese Datei wird.htpasswd genannt und an einem sicheren Ort abgelegt: /etc/apache2 auf Ubuntu 16.04, und /etc/httpd auf CentOS 7.

    Mit dem Befehl htpasswd kann entweder eine Passwortdatei erstellt oder ein Eintrag hinzugefügt werden. Zum ersten Mal werden wir das Flag -c verwenden, um die Datei zu erstellen und den Benutzernamen jdoe hinzuzufügen:

    • CentOS 7: sudo htpasswd -c /etc/httpd/.htpasswd jdoe
    • Ubuntu 16.04: sudo htpasswd -c /etc/apache2/.htpasswd jdoe

    Sie werden aufgefordert, das neue Passwort für den Benutzer einzugeben und zu bestätigen.

    Hinzufügen eines neuen Benutzers zu einer bestehenden Datei

    Um einen neuen Benutzer zu einer bestehenden Passwortdatei hinzuzufügen, verwenden Sie den gleichen Befehl ohne das Flag -c. Um zum Beispiel einen Benutzer janedoe hinzuzufügen, lautet der Befehl:

    • CentOS 7: sudo htpasswd /etc/httpd/.htpasswd janedoe
    • Ubuntu 16.04: sudo htpasswd /etc/apache2/.htpasswd janedoe

    Sie werden aufgefordert, das neue Passwort für den Benutzer einzugeben und zu bestätigen.

    Verzeichnisbeschränkung aktivieren

    Bevor Sie ein Verzeichnis beschränken können, müssen Sie den Apache so konfigurieren, dass er .htaccess-Dateien erlaubt.

    CentOS 7

    Öffnen Sie die Hauptkonfigurationsdatei des Apache zur Bearbeitung mit dem Befehl:

    sudo nano /etc/httpd/conf/httpd.conf

    Scrollen Sie nach unten zum Abschnitt <Verzeichnis> für "/var/wwww/html" und ändern Sie AllowOverride auf All.

    Speichern und beenden Sie die Datei. Starten Sie dann den Apache neu, damit die Änderungen wirksam werden:

    sudo systemctl restart httpd

    Ubuntu 16.04

    Öffnen Sie die Hauptkonfigurationsdatei des Apache zur Bearbeitung mit dem Befehl:

    sudo nano /etc/apache2/apache2.conf

    Scrollen Sie nach unten zum Abschnitt <Verzeichnis> für "/var/www" und ändern Sie AllowOverride auf All.

    <Directory /var/www/>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
    </Directory>

    Speichern und beenden Sie die Datei. Starten Sie dann den Apache neu, damit die Änderungen wirksam werden:

    sudo systemctl restart apache2

    Erstellen des beschränkten Bereichs

    Gehen Sie zu dem Verzeichnis, das Sie schützen möchten. Zum Beispiel:

    cd /var/www/html/admin

    Erstellen Sie eine Datei namens.htaccess und öffnen Sie sie zur Bearbeitung:

    sudo nano .htaccess

    Fügen Sie das Folgende in diese Datei ein:

    CentOS 7:

    AuthType Basic
    AuthName "Password Required"
    Require valid-user
    AuthUserFile /etc/httpd/.htpasswd

    Ubuntu 16.04:

    AuthType Basic
    AuthName "Password Required"
    Require valid-user
    AuthUserFile /etc/apache2/.htpasswd

    Testen der Authentifizierung

    Um die Authentifizierung zu testen, besuchen Sie die passwortgeschützte URL in einem Browser. Sie erhalten ein Popup-Fenster, in dem Sie aufgefordert werden, einen Benutzernamen und ein Passwort einzugeben, um fortzufahren.

    Hinweis

    Wenn Ihr Browser über einen Popup-Blocker verfügt, müssen Sie ihn so konfigurieren, dass er Popups für diese Domain zulässt.


    Auf dem Laufenden bleiben?

    Jetzt für unseren Newsletter anmelden und gratis Online-Marketing Whitepaper für lokale Anbieter sichern!