Dell Unity: In un ambiente multiprotocollo che utilizza LDAP, l'accesso condiviso dai client Windows non riesce a causa di nessun utente correggibile con mapping
Summary: Questo articolo spiega la procedura per separare e risolvere il problema del mapping errato quando si utilizza LDAP, in cui il metodo di crittografia utilizzato influisce sul mapping LDAP. ...
Symptoms
Unity LDAP è configurato correttamente, ma gli utenti non sono mappati.
Se si utilizza il comando di ricerca LDAP per cercare utenti sul server LDAP, questi vengono visualizzati correttamente.
Comando:
ldapsearch -h <ldapserver ip> -D "<BindDN>" -w <Password> -b "<BaseDN>" -s <scope(base,one,sub)> "cn=<username>"
Esempio di comando riuscito:
--------------------- root@solaris11:~# ldapsearch -h 5.6.7.xxx -D "cn=admin,dc=peeps,dc=lab" -w Password123# -b "ou=people,dc=peeps,dc=lab" -s sub "cn=user1" version: 1 dn: uid=user1,ou=People,dc=peeps,dc=lab uid: user1 uidNumber: 1 gidNumber: 1 cn: user1 sn: user1 objectClass: top objectClass: person objectClass: posixAccount objectClass: shadowAccount loginShell: /bin/bash homeDirectory: /home/user1 You have new mail in /var/mail/root ---------------------
Tuttavia, se si utilizza il comando SVC NAS per cercare utenti, l'operazione non riesce con il seguente messaggio:
Comando:
svc_nas <server name> -ldap -lookup -user <user name>
Esempio di comando non riuscito:
--------------------- service@********* spb:~/user# svc_nas nas_multi -ldap -lookup -user user2 nas_multi : commands processed: 1 command(s) succeeded output is complete 1659693343: LDAP: 6: LdapService::connect: Connection to Ldap server ***.***.***.*** SUCCEEDED IP[0/1]=***.***.***.*** port=389 1659693343: LDAP: 3: User user2t: User name + password + uid + gid are too large to fit into buffer. 1659693343: LDAP: 6: Unable to get information for user user2 --------------------- ---------------------
Inoltre, il nome utente non riuscito potrebbe contenere caratteri non necessari dopo il nome utente.
Esempio di comando riuscito:
--------------------- service@********* spb:~/user# svc_nas nas_multi -ldap -lookup -user user1 nas_multi : commands processed: 1 command(s) succeeded output is complete 1659694219: LDAP: 6: user: user1, uid: 12333, gid: 12333, homeDir: /home/user1 Command succeeded --------------------- ---------------------
Cause
Unity supporta "PBKDF2_SHA256", ma esiste una restrizione; la somma di [username + password + uid + gid] deve essere entro 452 byte.
Con la crittografia PBKDF2_SHA256 , se per la password vengono utilizzati molti byte, è possibile superare il limite di 452 byte quando uidNumber, gidNumber e uid vengono aggiunti al totale.
Se si supera il limite di 452 byte, l'accesso condiviso dai client Windows ha esito negativo a causa di nessun mapping in un ambiente multiprotocollo LDAP.
Ad esempio, se la password del cliente utilizza 447 byte, il numero rimanente di byte da utilizzare per uidNumber, gidNumber e uid è di soli 5 byte.
Esempio che rientra nel limite di 452 byte:
userPassword= 404 byte
uidNumber = 16 byte
gidNumber = 16 byte
uid = 16 byte
totale = 452 byte
Resolution
Si consiglia di utilizzare uno schema di crittografia diverso da PBKDF2_SHA256, ad esempio, utilizzare SSHA-512.
Schemi di crittografia LDAP supportati da Unity:
A partire da agosto 2022, le seguenti modalità crittografiche sono disponibili in OE 5.2:
SHA, SHA-256, SHA-384, SHA-512, SSHA, SSHA-256, SSHA-384, SSHA-512, MD5, SMD5, PKCS5S2, CRYPT, CRYPT-MD5, CRYPT-SHA-256, CRYPT-SHA-512, PBKDF2_SHA256****
Quando si utilizza PBKDF2_SHA256, la somma di [username + password + uid + gid] è limitata a 452 byte.