Apache/HTTP/Authentifizierung

Aus Foxwiki
Version vom 18. Januar 2022, 23:39 Uhr von Dirkwagner (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Passwortschutz für Webseiten kann sinnvoll sein, wenn eine Webseite oder ein Verzeichnis nur für bestimmte Benutzer verfügbar sein soll. Auch kann man die…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Passwortschutz für Webseiten

kann sinnvoll sein, wenn eine Webseite oder ein Verzeichnis nur für bestimmte Benutzer verfügbar sein soll. Auch kann man die Webseite so vor Suchmaschinen-Bots verbergen.

.htpasswd Datei erstellen

Zuallererst braucht man eine .htpasswd Datei. Diese können Sie ganz einfach mit einem Texteditor erstellen.

Wichtig: 
Nicht den Punkt vor dem Dateinamen vergessen!

In dieser Datei werden alle Benutzer- und Passwortdaten hinterlegt. Diese sind verschlüsselt und können direkt mit unserem .htaccess Generator erstellt werden.

Falls mehrere Benutzer angelegt werden sollen, können Sie die jeweiligen Codezeilen einfach untereinander in die .htpasswd Datei schreiben.

Legen Sie nun die .htpasswd Datei in einem Verzeichnis abseits der darauf verweisenden .htaccess Datei ab (siehe folgend Schritt 2).

Wichtig: Die .htpasswd sichert nicht das Verzeichnis und deren Unterverzeichnisse in der die Datei liegt ab, sondern die Datei dient lediglich als Liste aller möglichen Zugangsdaten.Die .htaccess Datei übernimmt die eigentliche Aufgabe das Verzeichnis und die Unterverzeichnisse mit einem Passwortschutz versehen. Es spielt daher nur eine Rolle wo die .htacces datei abgelegt wird.

.htaccess Datei erstellen/anpassen

AuthType Basic
AuthName "Passwortgeschützter Bereich"
AuthUserFile /pfad/zur/datei/.htpasswd
Require valid-user


Hinweis: Die .htpasswd Datei sollte aus Sicherheitsgründen üblicherweise in einem anderen Verzeichnis gespeichert sein als die jeweilige .htaccess Datei, die auf die .htpasswd verweist.

Der Passwortschutz ist nun aktiv

Haben Sie alles richtig gemacht öffnet sich beim Aufrufen der Webseite bzw. des Verzeichnisses im Browser eine Abfrage für einen Benutzernamen und ein Passwort.

Um den Schutz wieder zu deaktivieren, löscht man einfach die .htpasswd Datei und die Codezeilen dafür aus der .htaccess Datei.

Beispiel

Der Webspace für die Webseite "meinetestwebseite.de" hat einen Ordner "ablage" der mit einem Passwortschutz versehen werden soll. Die Ordnerstruktur auf dem Webspace ist wie folgt aufgebaut:

/web--- /ablage--- /css--- /img--- /js--- index.php

Um nun den Ordner "ablage" wie oben beschrieben zu schützen muss die Struktur so erweitert werden:

/web--- /ablage--- --- .htaccess--- /css--- /img--- /js--- index.php/zugaenge--- .htpasswd

Versucht man nun "www.webseite.de/ablage" aufzurufen erscheint ein Passwortschutz.

Passwortschutz für bestimmten IP-Adressen deaktivieren

Order deny,allow
Deny from all
AuthName "Passwortgeschützter Bereich"
AuthUserFile /pfad/zur/datei/.htpasswd
AuthType Basic
Require valid-user
allow from 000.000.000.000
allow from 111.111.111.111
Satisfy Any