Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:webapps:webverzeichnisse_schuetzen_mit_.htaccess-dateien]] 

Zugriffsgeschützte Webverzeichnisse

Der Webserver kennt die Möglichkeit, Verzeichnisse vor dem öffentlichen Zugriff zu schützen. Die entsprechenden Direktiven kann man in der globalen Konfigurationsdatei verwenden, alternativ kann man aber einfach in dem zu schützenden Verzeichnis eine Datei namens .htaccess anlegen.

Beispiel einer .htaccess für die LML 3.0

Der Inhalt einer einfachen .htaccess besteht aus wenigen Direktiven:

# Prototyp einer .htaccess für die LML 3.0
AuthType Basic
AuthName "Nur für Lehrer"
require group lehrer

Man sollte zusätzlich die Datei vor unbefugten Veränderungen schützen:

chown www-data:www-data .htaccess
chmod 0600 .htaccess

Beispiel einer .htaccess für die LML 4.0

Achtung: Ab der LML 4.0.5 muss LDAPS verwendet werde, siehe unten!

Bei der LML 4.0 muss die Authentifizierung gegen LDAP erfolgen, wodurch die Datei ein wenig anders aussieht:

# Prototyp einer .htaccess für die LML 4.0
AuthType Basic
AuthName "Interner Bereich"
AuthBasicProvider ldap
AuthLDAPUrl ldap://10.16.1.1/dc=linuxmuster,dc=local?uid
AuthLDAPGroupAttributeIsDN off
AuthLDAPGroupAttribute memberUid
Require ldap-group cn=teachers,ou=groups,dc=linuxmuster,dc=local

Das dc=linuxmuster,dc=local muss man an seine eigene BASEDN (bei der LML die Domain) anpassen. Die korrekten Daten kann man zum Beispiel der ersten Zeile der Ausgabe von smbldap-groupshow teachers entnehmen.

Achtung: Für die Gruppe teachers benötigt man eine aktuelle Version der Musterlösung!

Man kann auch die numerische gid verwenden:

AuthName "Vertretungsplan/Lehrer"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://10.16.1.1/dc=linuxmuster,dc=local?uid
Require ldap-attribute gidNumber=10000

Das obige Beispiel ist für die Lehrer: gid=10000(teachers)

Man kann auch mehrere Require-Zeilen kombinieren, zum Beispiel für eine Klasse mit der gid=10002 und alle Lehrer:

Require ldap-attribute gidNumber=10000
Require ldap-attribute gidNumber=10002

Hier noch ein Beispiel für Einzelnutzer:

AuthType               Basic
AuthName               "Service"
AuthBasicProvider      ldap
AuthzLDAPAuthoritative off
AuthLdapURL            "ldap://127.0.0.1/ou=accounts,dc=linuxmuster,dc=local?uid"
Require ldap-user      mueller maier administrator

Und ein letztes Beispiel, bei dem jeder User im System Zugriff erhält (insbesondere alle Schüler und Lehrer):

AuthType Basic
AuthName "Service"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLdapURL "ldap://127.0.0.1/ou=accounts,dc=linuxmuster,dc=local?uid"
Require valid-user

Auch hier gilt: dc=linuxmuster,dc=local ist die BASEDN des LDAP und muss entsprechend angepasst werden. Man findet sie in der Datei /etc/ldap/ldap.conf oder in der Ausgabe von smbldap-groupshow teachers.

LDAPS verwenden (ab LML 4.0.5 zwingend)

Ab der Version 4.0.5 der LML nimmt der LDAP nur noch verschlüsselte Anfragen entgegen. Man muss deshalb bei den AuthLdapURL Direktiven das LDAPS-Protokoll angeben, zum Beispiel:

AuthLDAPUrl ldaps://10.16.1.1/dc=linuxmuster,dc=local?uid

Wer selbstsignierte Zertifikate verwendet (das ist in der Standardkonfigration der Fall!), muss noch das Überprüfen der Zertifikate unterbinden. Dazu setzt man in der Serverkonfiguration die Option LDAPVerifyServerCert auf Off. In der Standardkonfiguration fügt man dazu etwa in der Datei /etc/apache2/sites-enabled/000-default ganz am Anfang diese Option ein:

# modified by linuxmuster-base-1.3.1

LDAPVerifyServerCert Off

NameVirtualHost *
<VirtualHost *>
...

Danach lädt man noch die Apache-Konfiguration neu: /etc/init.d/apache2 reload

Nicht vergessen: Die Datei /etc/apache2/sites-enabled/000-default kann bei einem Update überschrieben werden! Wer sich auskennt, richtet sich deshalb besser einen eigenen VirtualHost ein, dann ist man gegen Überraschungen gefeit.

 [[anwenderwiki:webapps:webverzeichnisse_schuetzen_mit_.htaccess-dateien]] anwenderwiki/webapps/webverzeichnisse_schuetzen_mit_.htaccess-dateien.txt · Zuletzt geändert: 2013/03/26 23:12 von 127.0.0.1