Verzeichnis per .htaccess & .htpasswd schützen

Kategorie: Apache
Publikationsdatum: 29.03.2011
Als erstes wird eine PHP-Datei mit folgendem Code erzeugt:
PHP
  1. echo dirname(__FILE__);


Diese Datei wird als z.B. pfad.php abgespeichert und auf dem Server in dem zu schütztenden Verzeichnis platziert. Nun wird mittels eines Browsers diese Datei aufgerufen und der ausgegeben Pfad kopiert.

In einem Text-Editor werden nun folgende Code-Zeilen geschrieben:

 

AuthType Basic
AuthName "Restricted Directory"
AuthUserFile /pfad/der/gerade/kopiert/wurde/.htpasswd
require valid-user

 

Im Anschluss wird diese Datei als .htaccess abgespeichert und in das zu schütztende Verzeichnis kopiert.

Nun benötigt man noch ein File .htpasswd. Erst bitte ein verschlüsseltes Passwort erzeugen und mit Hilfe eines Benutzernamens und des verschlüsselten Passwortes folgende Code-Zeile generieren:

 

benutzername:verschlüsseltes Passwort
md5 Hash:verschlüsseltes Passwort

Nun wird nochmals der Text-Editor geöffnet, die obige Code-Zeile eingefügen und dann als .htpasswd speichern. Diese File ebenfalls in das zu schützende Verzeichnis oder (bessere Variante) in ein Verzeichnis oberhalb des Pfades.

Nun kann man über den Browser das entsprechende Verzeichnis aufrufen und man erhält eine Eingabemaske für Benutzername und Passwort. Das Verzeichnis ist somit geschützt.

Wenn mehrere Domains in ein Verzeichnis zeigen und eine dieser Domains (z.B.: test.domain.at) soll einen Passwortschutz erhalten, ist folgender Code nützlich:

SetEnvIfNoCase Host ^test.domain.at$ SECURED=yes

AuthType Basic
AuthName "Restricted Directory"
AuthUserFile /pfad/der/gerade/kopiert/wurde/.htpasswd
Require valid-user

Satisfy any
Order allow,deny
Allow from all
Deny from env=SECURED

Wenn eine Passwortabfrage für alle außer jene, mit der angegebenen IP-Adresse xxx.xxx.xxx.xxx, erscheinen soll, können folgende Zeilen hilfreich sein:

AuthType Basic
AuthName "Restricted Directory"
AuthUserFile /pfad/der/gerade/kopiert/wurde/.htpasswd
Require valid-user
satisfy any
deny from all
allow from xxx.xxx.xxx.xxx


Passwort generieren:

Username:  
 
Passwort:
 
Stichwörter: Apache, Verzeichnis, Passwort, schützen, online, erstellen, PHP, generator, generate, htaccess
 
 
NACH OBEN