Progetto

Generale

Profilo

Apache22DavLdap » Cronologia » Versione 13

Versione 12 (Amministratore Truelite, 30-10-2007 19:14) → Versione 13/14 (Simone Piccardi, 21-12-2010 12:32)

[[TracNav(TOC)]] 

 h1. Autenticazione LDAP per WebDAV 

 [[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: 

 
 <pre> 
 
 a2enmod ldap 
 a2enmod authnz_ldap 
 </pre> 

 

 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 <pre> 
    l'accesso SSL. 
 * <pre> 
    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 <pre> 
 <pre> 
 <pre> 
    relativo ramo di albero da cui ricever i dati di autenticazione. 
 * la direttiva @AuthzLDAPAuthoritative@ impostata ad off per <pre> 
    bloccare l'uso esclusivo dei dati di LDAP e consentire così il funzionamento della ulteriore direttiva @require valid-user@.  

 
 <pre> 


 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: 

 
 <pre> 
 NameVirtualHost 
 <pre> 

 <pre> 
 [[NameVirtualHost]] * 
 

 LDAPTrustedMode SSL 
 LDAPVerifyServerCert Off 
 

 <VirtualHost *> 
         ServerAdmin [[ServerAdmin]] webmaster@truelite.it 
         DocumentRoot 

         [[DocumentRoot]] /data/ 
         <Directory /> 
                 Options FollowSymLinks [[FollowSymLinks]] 
                 AllowOverride [[AllowOverride]] None 
         </Directory> 
         <Directory /data/> 
                 Options Indexes FollowSymLinks [[FollowSymLinks]] MultiViews 
                 AllowOverride [[AllowOverride]] None 
                 Order allow,deny 
                 allow from all 
         </Directory> 
         ScriptAlias 

         [[ScriptAlias]] /cgi-bin/ /usr/lib/cgi-bin/ 
         <Directory "/usr/lib/cgi-bin"> 
                 AllowOverride [[AllowOverride]] None 
                 Options ExecCGI [[ExecCGI]] -MultiViews +SymLinksIfOwnerMatch 
                 Order allow,deny 
                 Allow from all 
         </Directory> 
         ErrorLog 

         [[ErrorLog]] /var/log/apache2/error.log 
         

         # Possible values include: debug, info, notice, warn, error, crit, 
         # alert, emerg. 
         LogLevel [[LogLevel]] warn 
         CustomLog 

         [[CustomLog]] /var/log/apache2/access.log combined 
         ServerSignature [[ServerSignature]] On 
         


         # Note Alias goes to our DocumentRoot. [[DocumentRoot]]. 
         Alias /webdav /data/ 
         

         # But we apply different settings 
         <Location /webdav> 
                 DAV On 
                 AuthName [[AuthName]] "Truelite" 
                 AuthType [[AuthType]] Basic 
                 AuthBasicProvider [[AuthBasicProvider]] ldap 
                 AuthLDAPURL [[AuthLDAPURL]] ldaps://ldap.fi.trl/ou=People,dc=truelite,dc=it?uid 
                 AuthzLDAPAuthoritative [[AuthzLDAPAuthoritative]] Off 
                 require valid-user 
         </Location> 
 

 </VirtualHost> 
 

 </pre>