Apache autentimine LDAP'iga

From EIK wiki

Autor

Rauno Lehiste

Sissejuhatus

Eesmärgiks on muuta veebilehed ligipääsetavaks meie jaoks sobilikele kasutjatele, ehk siis kasutajatele, kes on kirjeldatud LDAP'is. Kasutajalt küsitakse kasutajanime ja parooli ilma, et peaks veebilehele looma eraldi sisselogimise süsteemi.

Näidis serveri seadistus

Eeldan, et server on installitud ja sellele paigaldatud Web Server ja Users and Groups.

  • Operatsioonisüsteem: Zentyal 3.0
  • Veebiserver: Apache 2.2.22
    • Veebiserverile on loodud kolm virtualhosti: www.naiteleht.ee, sales.naiteleht.ee, mail.naiteleht.ee
  • BIND9 1.9.8
  • NTP 1.4.2
  • Users and groups(LDAP) 2.4
    • LDAP on lihtsalt paigaldatud, ei ole loodud kasutajad ega gruppe
    • LDAP'i seadistus:
Base DN: dc=naitedomeen,dc=ee
Root DN: cn=zentyal,dc=naitedomeen,dc=ee
Password: cFi02kd092ldiKL2m
Users DN: ou=Users,dc=naitedomeen,dc=ee
Groups DN: ou=Groups,dc=naitedomeen,dc=ee

Gruppide ja kasutajate lisamine

Lisame grupid Staff ja Students. Neid saab lisada Zentyali administreerimise leheküljelt Office -> Users and Groups -> Groups

Lisame neli kasutajat ja määrame nad gruppidesse. Selleks Office -> Users and Groups -> Users

  • User1 ja grupp Staff
  • User2 ja grupp Staff
  • User3 ja grupp Students
  • User4 ja grupp Students

Audentimise seadistamine

Audentimist vastu LDAPi on võimalik seadistada kahel moel.

1)Directory tagide vahele

<VirtualHost *:443>
	...
	<Directory /srv/www/www.naiteleht.ee>
   		...
	</Directory>
	...
</VirtualHost>

2) .htaccess fail veebilehe failide kaustas. Näiteks /srv/www/www.naitesait.ee/.htaccess Faili sisu tuleb sama, mis muidu kirjutaks Directory tagide vahele

Näite seadistus

Ligipääsuõiguste jagunemine:

  • www.naiteleht.ee - Ligipääsevad kõik LDAP'is määratud kasutajad
  • sales.naiteleht.ee - Ligipääsevad ainult User2 ja User3
  • mail.naiteleht.ee - Ligipääsevad ainult gruppi Students kuuluvad kasutajad

Kuna kasutame "AuthType Basic", on soovituslik sead kõike teha üle HTTPS'i

Kõik LDAP'is määratud kasutajad

Authname "Naiteleht WWW lehekülg."
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPURL ldap://127.0.0.1:390/ou=Users,dc=naitedomeen,dc=ee?uid
AuthLDAPBindDN cn=Zentyal,dc=naitedomeen,dc=ee
AuthLDAPBindPassword cFi02kd092ldiKL2m
Require valid-user

Kindlad kasutajad

Authname "Naiteleht sales lehekülg."
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPURL ldap://127.0.0.1:390/ou=Users,dc=naitedomeen,dc=ee?uid
AuthLDAPBindDN cn=Zentyal,dc=naitedomeen,dc=ee
AuthLDAPBindPassword cFi02kd092ldiKL2m
Require user User2, User3

Kindlad grupid

Authname "Naiteleht mail lehekülg."
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPURL ldap://127.0.0.1:390/dc=naitedomeen,dc=ee?uid
AuthLDAPBindDN cn=Zentyal,dc=naitedomeen,dc=ee
AuthLDAPBindPassword cFi02kd092ldiKL2m
AuthLDAPGroupAttribute member
AuthLDAPGroupAttributeIsDN on
Require ldap-group cn=Students, ou=groups, dc=naitedomeen, dc=ee

Kasutatud kirjandus