Posts Tagged ‘apache active directory’

Active Directory HTTP authentication folosind authnz_ldap cu Apache2

In multe cazuri este necesara autentificarea cu Active Directory la nivel de Apache2, in special cand discutam de un numar mare de utilizatori care acceseaza un portal web din locatii diferite si mai ales atunci cand vrem ca accesul sa fie cat mai restrans la persoanele dintr-o companie pe care de altfel sa nu ii incarcam cu un user si o parola pentru fiecare resursa existenta.

Astfel, configurarea consta in prima faza in adaugarea unei linii in fisierul: /etc/ldap/ldap.conf care sa arate asa:

REFERRALS off

si prin care specificam sa nu fie restrictionate referintele la un server printr-un site in special cand interogarile vin prin web pentru ca autentificarea cu Active Direcotry sa fie posibila si prin web.

Mai departe am trecut la partea de configurare a autentificarii prin Active Directory si in interiorul <Directory /var/www/>    </Directory>  am adaugat urmatoarele linii:

AuthBasicProvider ldap
AuthType Basic
AuthName „Restricted Zone”
AuthLDAPURL „ldap://nume_server_dc.tld:389/DC=nume_server_dc,DC=tld?sAMAccountName?sub?(objectClass=user)” NONE
AuthLDAPBindDN „user_creat_in_ad@DOMENIU”
AuthLDAPBindPassword „parola_userului_creat_in_ad”
require ldap-attribute objectClass=user

Detalii despre fiecare linie se gasesc aici: http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html

Daca toate datele introduse au fost corecte, in mod normal autentificarea trebuie sa se efectueze fara probleme din web. Inainte de testare trebuie restartat Apache2.

/etc/init.d/apache2 restart

Mai departe am dorit ca doar cei din exteriorul retelei sa aiba restrictia de a introduce user si parola, iar cei din interiorul retelei, sau cei care au adresele IP specificate de mine sa nu aiba aceasta problema. Atunci am mai adaugat inainte de AuthBasicProvider ldap linia:

order deny allow

iar dupa require ldap-attribute objectClass=user am adaugat liniile prin care am specificat adresele IP care sa aiba acces fara autentificare HTTP:

satisfy any

deny from all

allow from 172.16.16.1/24

allow from 1.2.3.4

unde 172.16.16.1/24 reprezinta o clasa de adrese IP care se pot aloca unei retele interne, iar 1.2.3.4 reprezinta un IP extern sau intern.

srv StandDuPp
Articole recente