Project

General

Profile

Apache22DavLdap » History » Version 14

Simone Piccardi, 12/21/2010 12:32 PM

1 13 Simone Piccardi
h1. Autenticazione LDAP per WebDAV
2 12 Amministratore Truelite
3 14 Simone Piccardi
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.
4 9 Amministratore Truelite
5 14 Simone Piccardi
Questo comporta la necessità di effettuare diversi cambiamenti ad eventuali precedenti configurazioni che altrimenti sarebbero rimaste perfettamente funzionanti. 
6 1 Amministratore Truelite
7 14 Simone Piccardi
Anzitutto si devono abilitare i moduli di Apache per LDAP che nel caso specifico si può fare con i comandi:
8 1 Amministratore Truelite
9 13 Simone Piccardi
<pre>
10 12 Amministratore Truelite
a2enmod ldap
11 6 Amministratore Truelite
a2enmod authnz_ldap
12 1 Amministratore Truelite
</pre>
13 1 Amministratore Truelite
14 14 Simone Piccardi
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:
15 12 Amministratore Truelite
16 13 Simone Piccardi
* la direttiva @LDAPTrustedMode@ impostata a SSL per impostare l'accesso SSL.
17 13 Simone Piccardi
* 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).
18 13 Simone Piccardi
* la direttiva @AuthBasicProvider@ per indicare (impostandola al valore ldap) di farsi dare i dati di autenticazione da LDAP.
19 13 Simone Piccardi
* la direttiva @AuthLDAPURL@ per impostare la URL del server LDAP ed il relativo ramo di albero da cui ricever i dati di autenticazione.
20 13 Simone Piccardi
* la direttiva @AuthzLDAPAuthoritative@ impostata ad off per bloccare l'uso esclusivo dei dati di LDAP e consentire così il funzionamento della ulteriore direttiva @require valid-user@. 
21 1 Amministratore Truelite
22 13 Simone Piccardi
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:
23 1 Amministratore Truelite
24 1 Amministratore Truelite
<pre>
25 13 Simone Piccardi
NameVirtualHost *
26 1 Amministratore Truelite
LDAPTrustedMode SSL
27 1 Amministratore Truelite
LDAPVerifyServerCert Off
28 1 Amministratore Truelite
<VirtualHost *>
29 13 Simone Piccardi
        ServerAdmin webmaster@truelite.it
30 13 Simone Piccardi
        DocumentRoot /data/
31 1 Amministratore Truelite
        <Directory />
32 13 Simone Piccardi
                Options FollowSymLinks
33 13 Simone Piccardi
                AllowOverride None
34 12 Amministratore Truelite
        </Directory>
35 12 Amministratore Truelite
        <Directory /data/>
36 13 Simone Piccardi
                Options Indexes FollowSymLinks MultiViews
37 13 Simone Piccardi
                AllowOverride None
38 1 Amministratore Truelite
                Order allow,deny
39 1 Amministratore Truelite
                allow from all
40 1 Amministratore Truelite
        </Directory>
41 13 Simone Piccardi
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
42 1 Amministratore Truelite
        <Directory "/usr/lib/cgi-bin">
43 13 Simone Piccardi
                AllowOverride None
44 13 Simone Piccardi
                Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
45 12 Amministratore Truelite
                Order allow,deny
46 1 Amministratore Truelite
                Allow from all
47 12 Amministratore Truelite
        </Directory>
48 13 Simone Piccardi
        ErrorLog /var/log/apache2/error.log
49 1 Amministratore Truelite
        # Possible values include: debug, info, notice, warn, error, crit,
50 1 Amministratore Truelite
        # alert, emerg.
51 13 Simone Piccardi
        LogLevel warn
52 13 Simone Piccardi
        CustomLog /var/log/apache2/access.log combined
53 13 Simone Piccardi
        ServerSignature On
54 13 Simone Piccardi
        # Note Alias goes to our DocumentRoot.
55 1 Amministratore Truelite
        Alias /webdav /data/
56 1 Amministratore Truelite
        # But we apply different settings
57 12 Amministratore Truelite
        <Location /webdav>
58 12 Amministratore Truelite
                DAV On
59 13 Simone Piccardi
                AuthName "Truelite"
60 13 Simone Piccardi
                AuthType Basic
61 13 Simone Piccardi
                AuthBasicProvider ldap
62 13 Simone Piccardi
                AuthLDAPURL ldaps://ldap.fi.trl/ou=People,dc=truelite,dc=it?uid
63 13 Simone Piccardi
                AuthzLDAPAuthoritative Off
64 1 Amministratore Truelite
                require valid-user
65 1 Amministratore Truelite
        </Location>
66 1 Amministratore Truelite
</VirtualHost>
67 12 Amministratore Truelite
</pre>