LDAP autentisering med AD

SSO (Single sign-on) via AD (Active Directory) brukar mest förknippas med LAN men kan faktiskt användas också för att logga in på web-servers ute på nätet.

I följande exempel autentiserar vi utan SSL mot en Windows Server 2008 R2 från LightTPD och Apache. Exemplen fungrar i de flesta standard installationerna av AD. Notera att exemplen bara är just exempel och att du behöver justera tex sökvägar mm för att få det att fungera i din specifika server.

”ad.server.com” är internetnamnet på den server som ansvarar för AD
”localnetwork” och ”local” anger nätverket i LAN
”valid group” är den windows grupp som har access

OBS! Port 389 för TCP och UDP måste vara öppen i brandväggar och även mappas till AD servern om NAT används.

Exempel 1, Apache

<Directory "/path/to/secured/folder">
Order deny,allow
Deny from All
AuthType Basic
Satisfy any
AuthName "Login to server"
AuthBasicProvider ldap
AuthzLDAPAuthoritative Off
AuthLDAPURL "ldap://ad.server.com/CN=Users,DC=localnetwork,DC=local?sAMAccountName?sub?(memberOf=cn=valid group,cn=Users,dc=localnetwork,dc=local)" NONE
AuthLDAPBindDN cn=Administrator,CN=Users,DC=localnetwork,DC=local
AuthLDAPBindPassword "password"
Require valid-user
</Directory>

Exempel 2, LightTPD

Modulerna ”mod_access” och ”mod_auth” måste aktiveras, lägg koden på den nivå där en specifik mapp eller virtuell server ska skyddas.

auth.backend = "ldap"
auth.backend.ldap.hostname = "ad.server.com"
auth.backend.ldap.base-dn = "DC=localnetwork,DC=local"
auth.backend.ldap.filter = "(&(sAMAccountName=$)(memberOf=cn=valid group,cn=Users,dc=localnetwork,dc=local))"
auth.backend.ldap.bind-dn = "cn=Administrator,CN=Users,DC=localnetwork,DC=local"
auth.backend.ldap.bind-pw = "password"
auth.backend.ldap.allow-empty-pw = "disable"
auth.require = ( "/" =>
   (
      "method" => "basic",
      "realm" => "Login to server",
      "require" => "valid-user"
   )
)

Genom att autentisera mot en grupp i stället för en lista med användare förenklas administrationen betydligt och integrerar också den här delen i den centraliserade användaradministrationen.

Annonser
Tagged with: , , , , ,
Publicerat i Nätverk
Erik Schütten

Hej! Jag heter och är bosatt på Åland, bekvämt mittemellan Sverige och Finland.

Jag har jobbat med IT i drygt 30 år och är bla delägare i ett internationellt mjukvaruföretag där jag ansvarar för den tekniska driften och -utvecklingen (Vice President of Technology).

Behöver du kvalificerad hjälp med din IT verksamhet? Fråga Erik! Du når mig via erik@scab.ax. Mer info om mina tjäntser hittar du på www.scab.ax.

Linkedin Twitter Facebook Google+ RSS

Ange din e-postadress för att följa denna blogg och få meddelanden om nya inlägg via e-post.

QR-code
About Erik Schütten
Senior IT expert with 30 years of experience in designing, implementing and managing IT systems and staff. Follow Erik Schütten on Google+, Twitter and Facebook