Autenticazione LDAP per WebDAV¶
Le direttive di configurazione di Apache per usare l'autenticazione su LDAP sono cambiate nel passaggio ad Apache 2.2 (quindi nel passaggio da Debian Sarge a Debian Etch), che ha rivoluzionato i meccanismi di autenticazione.
Questo comporta la necessità di effettuare diversi cambiamenti ad eventuali precedenti configurazioni che altrimenti sarebbero rimaste perfettamente funzionanti.
Anzitutto si devono abilitare i moduli di Apache per LDAP che nel caso specifico si può fare con i comandi:
a2enmod ldap a2enmod authnz_ldap
In particolare se si vuole consentire l'accesso autenticando gli utenti su un server LDAP remoto (da accedere in maniera sicura via SSL) si dovranno utilizzare:
- la direttiva
LDAPTrustedMode
impostata a SSL per impostare l'accesso SSL. - la direttiva
LDAPVerifyServerCert
impostata a off per bloccare la verifica del certificato del server (e semplificare la connessione, altrimenti si dovrà utilizzare una appropriata CA). - la direttiva
AuthBasicProvider
per indicare (impostandola al valore ldap) di farsi dare i dati di autenticazione da LDAP. - la direttiva
AuthLDAPURL
per impostare la URL del server LDAP ed il relativo ramo di albero da cui ricever i dati di autenticazione. - la direttiva
AuthzLDAPAuthoritative
impostata ad off per bloccare l'uso esclusivo dei dati di LDAP e consentire così il funzionamento della ulteriore direttivarequire valid-user
.
Un esempio di configurazione di un Virtual Host di default, utilizzato per fornire accesso WebDAV alla cartella /data
di un server sotto la URI webdav è riportato qui di seguito:
NameVirtualHost * LDAPTrustedMode SSL LDAPVerifyServerCert Off <VirtualHost *> ServerAdmin webmaster@truelite.it DocumentRoot /data/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /data/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On # Note Alias goes to our DocumentRoot. Alias /webdav /data/ # But we apply different settings <Location /webdav> DAV On AuthName "Truelite" AuthType Basic AuthBasicProvider ldap AuthLDAPURL ldaps://ldap.fi.trl/ou=People,dc=truelite,dc=it?uid AuthzLDAPAuthoritative Off require valid-user </Location> </VirtualHost>
Aggiornato da Simone Piccardi circa 14 anni fa · 14 revisions