Detaillierte Angaben finden sie im Buch Apache
Web-Server von Lars Eilebrecht aus dem International Thomson Publishing
Verlag S. 90 ff oder auf diversen Homepages (Suchbegriffe htaccess apache linux htpasswd)
Sie benötigen 2 Dateien:
Eine Userdatei (.htpasswd),
in der Usernamen und die verschlüsselten Passwörter stehen. Diese Datei kann für mehrere geschützte Verzeichnisse benutzt werden.
Die Konfigurationsdatei (.htaccess) muss in jedem geschützten Verzeichnis stehen und sagt, welche Benutzer aus .htpasswd Zugriff auf das Verzeichnis haben.
Anlegen der Userdatei
Laden Sie das Verschlüsselungs-Programm
herunter, speichern es auf ihre Festplatte und doppelklicken darauf. Mit diesem
Programm können sie eine direkte Verbindung zum Internet-Server aufbauen.
Als Host geben sie awardic.net oder ihre Domain an und stellen das Protocol
auf SSH. Unter Connection (Links auswählen) geben sie unter Auto-login
username ihren FTP-Benutzernamen an. Falls Sie SSH zum ersten Mal nutzen,
schreiben Sie ein Mail an , damit ihr Account für
SSH freigegeben wird. Danach wechseln sie Links wieder auf Session, um die
Einstellungen zu speichern. Geben Sie dazu einen Namen unter Saved Sessions
an und klicken auf Save. Die Verbindung können Sie dann mit Open herstellen.
(Falls sie diese Einstellungen einmal vorgenommen haben, können sie in
Zukunft mit einem Doppelklick auf den gegebenen Namen unter Saved Sessions
die Verbindung zum Server herstellen.) Beim sich öffnenden Fenster geben
sie ihr FTP-Kennwort ein.
Geben sie /usr/sbin/htpasswd2 -c /www/home_verzeichnis/geschütztes_verzeichnis/.htpasswd
name1 ein (Dabei entspricht home_verzeichnis dem Usernamen und name1
dem zu autorisierenden Benutzer.) Nun müssen sie ein Passwort angeben
und dieses bestätigen. Oder wechseln sie mit dem Befehl cd verzeichnisname in das zu schützende Verzeichnis (der Befehl ls zeigt den Inhalt des aktuellen Verzeichnisses an), mit cd .. können sie wieder ein Verzeichnis zurück navigieren. Wenn sie sich im richtigen Verzeichnis befinden, entfällt jeweils die Angabe des kompletten Pfades.
Um weitere User anzumelden benutzen sie folgenden
Befehl: /usr/sbin/htpasswd2 geschütztes_verzeichnis/.htpasswd name2.
Geben sie wiederum für den neuen User ein Passwort ein und bestätigen
sie es.
Um das Passwort eines Users zu ändern, geben
sie /usr/sbin/htpasswd2 /www/home_verzeichnis/geschütztes_verzeichnis/.htpasswd
user ein. Jetzt können sie ein neues Passwort eingeben und
anschliessend müssen sie dieses bestätigen.
Die Datei sollte nun etwa so aussehen, wenn sie
sie öffnen (bei einer SSH-Sitzung mit dem Editor joe (joe .htpasswd - mit Ctrl-C wieder schliessen) oder sonst
die Datei per FTP downloaden):
name1:4Az0k.XkUymfY
name2:8Gc%8.8UJqw39
name3:H8bJ5aD%87B0v
Beenden sie die SSH-Sitzung mit exit
Anlegen der Konfigurationsdatei
Erstellen sie eine Textdatei (.htaccess)
mit folgendem Inhalt: (entweder wieder mit SSH und joe geschütztes
Verzeichnis/.htaccess oder bei ihnen mit einem Editor und übermitteln
das File. Einige Probleme könnte der führende Punkt im Dateinamen
im lokalen Betriebssystem geben, nennen sie die Datei bspw. htaccess.txt
und benennen sie erst auf dem Server um, nachdem sie mit FTP übermittelt
wurde, siehe nochmal nächster Punkt)
AuthName "Name der geschützten Seite"
AuthType Basic
AuthUserFile /www/home_verzeichnis/geschütztes_verzeichnis/.htpasswd
Require user name1 name2 name3
Hinter Require user geben sie alle User durch Leerschläge
getrennt an, die Zugriff auf das Verzeichnis haben sollen. Das heisst,
dass die Liste den Usernamen entsprechen sollte, die sie mit htpasswd
(siehe Punkt 2 + 3) angegeben haben. Die Passwort-Datei (.htpasswd)
kann auch anderswo gespeichert werden. Passen sie
den Pfad in .htaccess entsprechend an.
Speichern sie die Textdatei mit ihrem FTP-Client
im geschützen Verzeichnis. Wenn sie das File auf dem Server haben,
benennen sie es bitte in .htaccess um (beachten sie den Punkt vor dem
Namen und dass die Datei keine Endung hat)
Autorisierung via MySQL-Datenbank
Die Autorisierung kann anstelle der .htpasswd-Datei auch über eine MySQL-Datenbank erfolgen. Die .htaccess-Datei sieht dann so aus:
Achtung: Der Aufbau dieser Datei hat am 22.5.2003 eine neue Version erhalten!
AuthName "Titel des Fensters"
AuthType Basic
AuthMySQLDB Datenbankname
AuthMySQLUser Username für Datenbankzugriff
AuthMySQLPassword Passwort für Datenbankzugriff
AuthMySQLUserTable Tabelle mit den Zugangsdaten
AuthMySQLNameField Spalte mit den Benutzernamen
AuthMySQLPasswordField Spalte mit dem Passwort
AuthMySQLGroupField Spalte mit der Gruppenzugehörigkeit
AuthMySQLNoPasswd off
AuthMySQLCryptedPasswords off
require valid-user