Uso di LDAP per autenticare gli utenti Apache

In alcuni casi può essere necessario restringere l’accesso a delle aree presenti sul nostro server web, per esempio se si utilizzano pagine interattive per la gestione dei servizi come phpMyAdmin, oppure script per la raccorla/visualizzazione di statistiche. In questi casi è possibile, oltre che con le restrizioni in base all’indirizzo ip del client, utilizzare un database contenenti le credenziali di accesso per gli utenti. In questo caso facciamo riferimento ad un database LDAP precedentemente creato per l’utilizzo di Samba, e all’uso di Apache 2.2. Per prima cosa occorre attivare i moduli ldap necessari ad integrare Apache e LDAP. I moduli in questione sono ldap e authnz_ldap, attiviamoli entrambi:

a2enmod ldap

a2enmod authnz_ldap

Creiamo una cartella che conterrà le directory/pagine da proteggere tramite autenticazione. In questo esempio creiamo la pagina index.html dentro la directory /ldap, che ci confermerà l’avvenuta autenticazione.


mkdir /var/www/ldap

nano /var/www/ldap/index.html

<HTML>
<HEAD></HEAD>
<BODY DIR="LTR">
<P ALIGN=CENTER STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif">
<FONT SIZE=6>The LDAP support for authentication is working!</FONT></FONT></P>

</BODY></HTML>

chown -R www-data.www-data /var/www/ldap

Configuriamo Apache per utilizzare e connettersi al server LDAP. Agiremo sul file di configurazione installato insieme ad Apache. Dopo la modifica si rende

necessario riavviare il servizio per rendere effettive le modifiche appena apportate.


nano /etc/apache2/sites-enabled/000-default

# LDAP Authentication
LDAPSharedCacheSize 200000
LDAPCacheEntries 1024
LDAPCacheTTL 600
LDAPOpCacheEntries 1024
LDAPOpCacheTTL 600

<Location /ldap>

Options Indexes FollowSymLinks
#AllowOverride None
order allow,deny
Allow from all
AuthType Basic
AuthName "Internal LDAP Authentication"
AuthBasicAuthoritative off
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://ldap.ced.local/dc=ced,dc=local?uid??
require valid-user
AuthLDAPBindDN cn=admin,dc=ced,dc=local
AuthLDAPBindPassword password
</Location>

/etc/init.d/apache2 restart

Digitando sul browser l’url che punta alla nostra cartella protetta http://www.ced.local/ldap ci verrà mostrata una finestra dove

inserire username e password di un qualsiasi utente contenuto nel db LDAP.

  • Facebook
  • Google Bookmarks
  • Windows Live Favorites
  • LinkedIn
  • Delicious
  • Hotmail
  • Twitter
  • Windows Live Spaces
  • Yahoo Bookmarks
  • Yahoo Messenger
  • Share/Bookmark
  1. Nessun commento ancora...
  1. Nessun trackback ancora...

Spam Protection by WP-SpamFree