Project

General

Profile

Apache22DavLdap » History » Revision 12

Revision 11 (Amministratore Truelite, 10/30/2007 07:14 PM) → Revision 12/14 (Amministratore Truelite, 10/30/2007 07:14 PM)

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

<pre>


* la direttiva {{{LDAPTrustedMode}}} impostata a {{{SSL}}} per impostare
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).
<pre>
<pre>
<pre>

* 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.
<pre>

* la direttiva {{{AuthzLDAPAuthoritative}}} impostata ad {{{off}}} per
bloccare l'uso esclusivo dei dati di LDAP e consentire così il
<pre>


funzionamento della ulteriore direttiva {{{require valid-user}}}.

Un esempio di configurazione di un _Virtual Host_ ''Virtual Host'' di default, utilizzato per
<pre>
<pre>

<pre>
[[NameVirtualHost]]
fornire accesso WebDAV alla cartella {{{/data}}} di un server sotto la URI
{{{webdav}}} è riportato qui di seguito:

{{{
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>
}}}