Wie schütze ich meine Web-Seite (Apache) mit einem Passwort?

Möglichkeit 1:

Man kann Webseiten über Javascript (wird hier nicht erläutert) oder über die im Webserver integrierte Funktion mit der .htaccess Datei schützen. Bedenke, dass der Zugriff  nur über das  HTTP Protokoll (d.h. mit dem WWW Browser) gesteuert werden kann. Ist der Pfadname einer Datei bekannt, kann jeder AFS Benutzer sie lesen, da auch der WWW Server Lesezugriff haben muß.

Die Server Konfiguration:

In httpd.conf müssen folgende Einträge stehen:
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride All

Den Namen der Passwortdatei kann man frei wählen, es muss dann natürlich die /etc/httpd/httpd.conf angpasst werden. Standard (Default) ist beim Apache/1.3.14
AccessFileName .htaccess

Für die geschützten Bereiche (Verzeichnis) muß eine .htaccess Datei angelegt werden indem folgendes stehen kann:

#beginning .htaccess-Datei:

# Name des geschützen Bereichs
AuthName "Secret-AREEA" 
# Authentifizierungs-Methode
AuthType Basic
# Pfad der Passwortdatei (muß vom Web-Server lesbar sein)
AuthUserFile /var/auth/wwwusers 
#jeder User in der Passwort Datei, der sich mit einem gültigen Passwort authentifiziert, hat Zugriff
require valid-user

#the end

 

Achtung: Die neueste Server Version (1.3) verlangt, dass das AuthName Argument in Anführungszeichen gesetzt wird, wenn es Leerzeichen enthält, also z.B. AuthName "Secret Area".

 

Die Passwort Datei

Nun erstellt man die Passwort Datei in einem Verzeichnis, das der Web-Server lesen kann, aber möglichst nicht unter ~/WWW. In unserm Beispiel nennen wir die Datei wwwusers und platzieren sie im Verzeichnis /var/auth

Das Programm htpasswd, das zum Apache Server gehört, wird folgendermaßen aufgerufen:

      htpasswd -c /var/auth/wwwusers <user>

Für <user> setzt man den Namen des neu hinzuzufügenden Benutzers ein. Nun kann man das neue Passwort eingeben. Die Option -c braucht man nur, wenn eine neue Passwortdatei angelegt werden soll ansonsten wird sie gnadenlos überschrieben.

Klappt etwas nicht, sollte man überprüfen ob die Passwort Datei für den Web-Server lesbar ist und die Pfadangabe in der .htaccess Datei stimmt.

 

Möglichkeit 2:

oder auf einem Webhost z.B. http://community.cwsurf.de ein Passwort anlegen

Datei .htaccess anlegen mit folgendem Inhalt:

AuthType Basic
AuthName "Geschuetzer Bereich"
AuthUserFile /home/www/cwcity/hosting/t/e/termito/htdocs/.htpasswd
require valid-user

Und zusätzlich im gleichen Verzeichnis eine .htpasswd anlegen
(Passwort kann unter http://www.ohost.de/htaccess.php online erstellt werden)

linux:aqd78Ag33mla2

 

Noch ein Tipp:

Indexlisting deaktivieren

Mit einer .htaccess kann man das Indexlisting eines Verzeichnis erlauben/verbieten.

Erstelle .htaccess mit folgendem Inhalt:

Options -Indexes

Thursday, 27-Dec-2007 04:18:49 EST