Apache/HTTP/Authentifizierung: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Passwortschutz''' für Webseiten oder ein Verzeichnis
'''Apache Webserver Authentifizierung'''


= Beschreibung =
== Beschreibung ==
Passwortschutz für Webseiten oder Verzeichnisse
* nur für bestimmte Benutzer verfügbar
* nur für bestimmte Benutzer verfügbar
* Webseite vor Suchmaschinen-Bots verbergen
* Webseite vor Suchmaschinen-Bots verbergen


= .htpasswd Datei erstellen =
== .htpasswd Datei erstellen ==
Zuallererst braucht man eine .htpasswd Datei. Diese können Sie ganz einfach mit einem Texteditor erstellen.
Zuallererst braucht man eine .htpasswd Datei. Diese können Sie ganz einfach mit einem Texteditor erstellen.
  '''Wichtig'''  
  '''Wichtig'''  
Zeile 21: Zeile 22:
* Es spielt daher nur eine Rolle, wo die .htacces Datei abgelegt wird.
* Es spielt daher nur eine Rolle, wo die .htacces Datei abgelegt wird.


= .htaccess Datei erstellen/anpassen =
== .htaccess Datei erstellen/anpassen ==
  AuthType Basic
  AuthType Basic
  AuthName "Passwortgeschützter Bereich"
  AuthName "Passwortgeschützter Bereich"
Zeile 30: Zeile 31:
  Die .htpasswd Datei sollte aus Sicherheitsgründen üblicherweise in einem anderen Verzeichnis gespeichert sein als die jeweilige .htaccess Datei, die auf die .htpasswd verweist.
  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 ==
=== Der Passwortschutz ist nun aktiv ===
* Beim Aufrufen der Webseite bzw. des Verzeichnisses im Browser wird ein Benutzername und ein Passwort abgefragt.
* Beim Aufrufen der Webseite bzw. des Verzeichnisses im Browser wird ein Benutzername und ein Passwort abgefragt.
* Um den Schutz wieder zu deaktivieren, löscht man einfach die .htpasswd Datei und die Codezeilen dafür aus der .htaccess Datei.
* Um den Schutz wieder zu deaktivieren, löscht man einfach die .htpasswd Datei und die Codezeilen dafür aus der .htaccess Datei.


= Anwendung =
== Anwendung ==
Der Webspace für die Webseite "meinetestwebseite.de" hat einen Ordner "ablage" der mit einem Passwortschutz versehen werden soll.  
Der Webspace für die Webseite "meinetestwebseite.de" hat einen Ordner "ablage" der mit einem Passwortschutz versehen werden soll.  


Zeile 45: Zeile 46:
Versucht man nun "www.webseite.de/ablage" aufzurufen erscheint eine Abfrage des Benutzernamen und eines Passworts.
Versucht man nun "www.webseite.de/ablage" aufzurufen erscheint eine Abfrage des Benutzernamen und eines Passworts.


== Passwortschutz für bestimmten IP-Adressen deaktivieren ==
=== Passwortschutz für bestimmten IP-Adressen deaktivieren ===
  Order deny,allow
  Order deny,allow
  Deny from all
  Deny from all

Aktuelle Version vom 2. November 2024, 16:20 Uhr

Apache Webserver Authentifizierung

Beschreibung

Passwortschutz für Webseiten oder Verzeichnisse

  • nur für bestimmte Benutzer verfügbar
  • Webseite 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

  • Beim Aufrufen der Webseite bzw. des Verzeichnisses im Browser wird ein Benutzername und ein Passwort abgefragt.
  • Um den Schutz wieder zu deaktivieren, löscht man einfach die .htpasswd Datei und die Codezeilen dafür aus der .htaccess Datei.

Anwendung

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 eine Abfrage des Benutzernamen und eines Passworts.

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

TMP

Authentifizierung

Wenn Sie direkt zu diesem Teil des Dokuments gesprungen sind, um herauszufinden, wie Sie die Authentifizierung durchführen, ist es wichtig, eine Sache zu beachten.

  • Es ist ein weitverbreiteter Irrglaube, dass Sie .htaccess-Dateien verwenden müssen, um die Passwortauthentifizierung zu implementieren.
  • Dies ist jedoch nicht der Fall.
  • Authentifizierungsrichtlinien in einem <Directory>-Abschnittin Ihrer Hauptkonfigurationsdatei des Servers zu platzieren, ist der bevorzugte Weg, dies zu implementieren, und .htaccess-Dateien sollten nur verwendet werden, wenn Sie keinen Zugriff auf die Hauptkonfigurationsdatei des Servers haben.
  • Siehe oben für eine Diskussion darüber, wann Sie .htaccess-Dateien verwenden sollten und wann nicht.

Wenn Sie dennoch der Meinung sind, dass Sie eine . htaccess-Datei verwenden müssen, könnte eine Konfiguration wie die folgende für Sie geeignet sein.

Inhalt der .htaccess-Datei:

AuthType Basic
AuthName "Password Required"
AuthUserFile "/www/passwords/password.file"
AuthGroupFile "/www/passwords/group.file"
Require group admins

Beachten Sie, dass AllowOverride AuthConfig in Kraft sein muss, damit diese Direktiven eine Wirkung haben.

Eine ausführlichere Erläuterung der Authentifizierung und Autorisierung finden Sie im Tutorial zur Authentifizierung.