ApacheAuthAD » Cronologia » Versione 10
Simone Piccardi, 20-05-2024 15:29
1 | 8 | Amministratore Truelite | h1. Autenticazione su Active Directory per Apache |
---|---|---|---|
2 | 1 | Christopher R. Gabriel | |
3 | 10 | Simone Piccardi | Per far eseguire ad Apache una autenticazione HTTP degli utenti appoggiandosi ad un server Active Directory si può utilizzare il supporto per l'autenticazione su LDAP fornito dai relativi moduli. Nel caso di Debian questi sono installati insieme al server, ma non sono abilitati di default, peranto andranno abilitati eseguendo i comandi: |
4 | 1 | Christopher R. Gabriel | |
5 | <pre> |
||
6 | a2enmod ldap |
||
7 | a2enmod authnz_ldap |
||
8 | </pre> |
||
9 | 10 | Simone Piccardi | |
10 | Il primo passo per la configurazione è verificare la raggiungibilità ed il funzionamento della connessione ad Active directory usando LDAP, Per questo possiamo usare il comando @ldapsearch@ (installabile su Debian con il pacchetto @ldap-utils@, che consente di eseguire una interrogazione con: |
||
11 | |||
12 | <pre> |
||
13 | ldapsearch -x -ZZ -H ldap://192.168.0.184 -D "CN=user,CN=Users,DC=example,DC=com" -b "DC=example,DC=com" -w password |
||
14 | </pre> |
||
15 | |||
16 | dove @ |
||
17 | 3 | Amministratore Truelite | |
18 | 9 | Simone Piccardi | Poniamo il caso di aver configurato direttamente ed unicamente un sito di default, questa è la configurazione di @/etc/apache2/sites-available/default@: |
19 | 8 | Amministratore Truelite | |
20 | 1 | Christopher R. Gabriel | <pre> |
21 | 9 | Simone Piccardi | NameVirtualHost * |
22 | 8 | Amministratore Truelite | LDAPVerifyServerCert Off |
23 | <VirtualHost *> |
||
24 | ErrorLog /var/log/apache2/error.log |
||
25 | 9 | Simone Piccardi | LogLevel warn |
26 | 4 | Amministratore Truelite | CustomLog /var/log/apache2/access.log combined |
27 | ServerSignature On |
||
28 | 9 | Simone Piccardi | ServerAdmin xxx@yyy.zz |
29 | 4 | Amministratore Truelite | <Location /myrepo > |
30 | # Impostiamo il tipo di autenticazione su Basic (attenzione le password viaggiano in chiaro) |
||
31 | AuthType Basic |
||
32 | # Con questa direttiva diciamo ad apache che se Ldap non autentica l'utente non deve tentare altre autenticazioni |
||
33 | 9 | Simone Piccardi | AuthBasicProvider ldap |
34 | 4 | Amministratore Truelite | AuthName "Qui mettiamo il titolo della finestra che appare per chiedere l'utente e la password" |
35 | # Ora si definisce l'URL a cui indirizzare la richiesta LDAP |
||
36 | 1 | Christopher R. Gabriel | # ed il relativo formato del tipo: scheme://host:port/basedn?attribute?scope?filter |
37 | 4 | Amministratore Truelite | # L'URL di seguito riportato effettuera' una ricerca per tutti gli oggetti ricorsivamente a partire dal basedn |
38 | # Effettua inoltre la validazione sull'attributo sAMAccountName |
||
39 | AuthLDAPURL "ldap://servera/DC=mydomain,DC=com?sAMAccountName?sub?(objectClass=*)" |
||
40 | # Active Directory requires an authenticating DN to access records |
||
41 | # This is the DN used to bind to the directory service |
||
42 | # This is an Active Directory user account |
||
43 | AuthLDAPBindDN "mydomain\user" |
||
44 | AuthLDAPBindPassword password |
||
45 | AuthzLDAPAuthoritative on |
||
46 | Require valid-user |
||
47 | </Location> |
||
48 | </VirtualHost> |
||
49 | 9 | Simone Piccardi | </pre> |