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 getlocalidMaak 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-xxxxxxxxxGebruik 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=Usersherstart 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 ldapsamNu 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