Sluit deze pagina af en ga terug naar de vorige pagina
9 jan 2017 | 1 reactie(s)

NAS: verbind je windowsdesktop met ldap

Dit artikelbeschrijft de stappen die je moet doorlopen om een windows client te verbinden met een werkende LDAP server over ssl/tls. Hierna kun je op je systeem inloggen met de gebruikers uit ldap.

ldap is een opslag/distributie systeem, het doet niet de uiteindelijk authenticatie. In het geval van windows hebben we een process nodig die de communicatie voert met de windows client maar zijn informatie haalt uit ldap. Aangezien meeste NAS machines gebaseerd zijn op linux is hiervoor samba de aangewezen kandidaat, vaak is deze al geinstalleerd op de NAS.

prerequisite:
	Server:ArrayDS207 NAS, met openvpn (ssl op poort 636)
		netwerk domein is mijndomein.local en een prive netwerk
		- server FQN naam	  : nasser.mijndomein.local  (192.168.1.1)     (hostname -f)
		- werkende ldap server met gebruikers gemigreerd van samba (eg /etc/passwd) 
		- werkende samba server

	Client: Win10 Version 1607 machine
		- client FQN naam	  : desktop.mijndomein.local (192.168.1.8)     (hostname -f)
Stappenplan:
	1.Samba met ldap ipv tdb
	2.Update ldap gebruikers met samba info

1. Samba met ldap ipv tdb

activeer de samba schema in de ldap server en restart ldap
#/opt/etc/slapd.conf:
include      /etc/openldap/schema/samba.schema
sudo /opt/etc/init.d/S58slapd restart
#vraag de samba server uid (sambaSID) op:
#samba server id
net getlocalid
Maak onderstaande ldif file en vul hier de variabelen sambaDomeinName, sambaNextUserRid en sambaSID in. Alles zonder de quotes:
#maak een ldif file met volgende inhoud:
dn: sambaDomainName="sambaDomainName",dc=mijndomein,dc=local
objectClass: sambaDomain
objectClass: top
sambaDomainName: "sambaDomainName"
sambaNextUserRid: "sambaNextUserRid"
sambaPwdHistoryLength: 0
sambaLockoutThreshold: 0
sambaMaxPwdAge: -1
sambaMinPwdAge: 0
sambaSID: S-x-x-xx-xxxxxx-xxxxxx-xxxxxxxxx
Gebruik ldapadd om deze te laden.
#backup van bestaande config
cp /etc/samba/smb.conf /etc/samba/smb_tdb.conf
#wijzig volgende in de smb.conf (diff format):
   os level = 65
-  passdb backend = tdbsam
+  passdb backend = ldapsam:ldap://nasser.mijndomein.local/
   preferred master = yes
+  idmap backend = ldap://nasser.mijndomein.local/
+  ldap admin dn = cn=ldapadmin,dc=mijndomein,dc=local
+  ldap delete dn = no
+  ldap group suffix = ou=Groups
+  ldap idmap suffix = ou=Idmap
+  ldap machine suffix = ou=Hosts
+  ldap passwd sync = yes
+  #ldap ssl = start_tls
+  ldap suffix = dc=mijndomein,dc=local
+  ldap user suffix = ou=Users
herstart samba en zet het wachtwoord naar die van ldapadmin (ldap)
smbpasswd -w 'ldapadmin wachtwoord'

2. Update ldap gebruikers met samba info

De gebruikers in ldap komen vanaf (POSIX) /etc/passwd (bijv. via deArraytools) maar bestaan ook in de tdb files (database achter samba). Alleen met deze conversie ontbreekt de specifieke samba info uit de tdbsam (zoals de gebruiker uid van windows). Als de gebruiker/server id's niet goed worden overgenomen dan is dit voor windows gewoon een andere gebruiker. De server id is hierboven al overgenomen maar de gebruikers en groep id's moeten nu nog overgezet worden naar ldap. Voeg alle samba attributen toe aan ldap, de pdbedit tool van samba verzorgt dit netjes. In het geval vanArraymoet je mischien een nieuwere versie van samba installeren om pdbedit te krijgen, in het geval van DS207 moet je samba34 met ipkg installeren (gooi deze hierna weer weg) en gebruik pdbedit met de -s optie.
	 pdbedit -s "path/smb.conf" -i tdbsam -e ldapsam
Nu kun je met een ldapsearch een gebruiker opzoeken. Hieronder staat de minimum aan gegevens (ldapadd ldif formaat) die beschikbaar moeten zijn voor de specifieke gebruiker. Of je kunt de stap met pdbedit overslaan en handmatig de (missende) info toevoegen met een ldif file.
dn: cn="gebruikernaam",ou=People,dc=mijndomein,dc=local
changetype: modify
add : objectClass
objectClass: sambaSamAccount
-
add: sambaSID
sambaSID: (S-x-x-xxxxx)
- 
add:sambaPasswordHistory
sambaPasswordHistory: "56 nullen"
- 
add:sambaNTPassword 
sambaNTPassword: "geldig samba passwd hash"
- 
add:sambaPwdLastSet 
sambaPwdLastSet: 1263386096 
- 
add:SambaAcctFlags 
sambaAcctFlags: [U          ]  

3. Verbind windows machine

Ga gewoon naar een netwerkdrive van je NAS. Er wordt nu gevraagd om gebruikersnaam en wachtwoord, vul deze in en klaar.

Update op |9 jan 2017 | no comments


Rose - Copyright © 2011, designed by teNijenhuis.net
16|337