Dell Unity: Em um ambiente multiprotocolo usando LDAP, o acesso compartilhado de clients Windows falha devido a nenhum mapeamento - corrigível pelo usuário
Summary: Este artigo explica as etapas para separar e contornar o problema de mapeamento incorreto ao usar o LDAP em que o método de criptografia usado afeta o mapeamento LDAP.
Symptoms
O LDAP do Unity está configurado corretamente, mas os usuários não são mapeados.
Se estiver usando o comando LDAP Search para pesquisar usuários em relação ao servidor LDAP, eles serão exibidos corretamente.
Comando:
ldapsearch -h <ldapserver ip> -D "<BindDN>" -w <Password> -b "<BaseDN>" -s <scope(base,one,sub)> "cn=<username>"
Exemplo de um comando bem-sucedido:
--------------------- 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 ---------------------
No entanto, se o comando SVC NAS for usado para pesquisar usuários, ele apresentará falha com a seguinte mensagem:
Comando:
svc_nas <server name> -ldap -lookup -user <user name>
Exemplo de um comando com falha:
--------------------- 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 --------------------- ---------------------
Além disso, o nome de usuário com falha pode conter caracteres desnecessários após o nome de usuário.
Exemplo de um comando bem-sucedido:
--------------------- 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
O Unity dá suporte a "PBKDF2_SHA256", mas há uma restrição, a soma de [nome de usuário + senha + uid + gid] deve estar dentro de 452 bytes.
Com PBKDF2_SHA256 , se muitos bytes forem usados para a senha, o limite de 452 bytes poderá ser excedido quando o uidNumber, gidNumber e uid forem adicionados ao total.
Exceder o limite de 452 bytes faz com que o acesso compartilhado de clients Windows falhe devido a nenhum mapeamento em um ambiente multiprotocolo LDAP.
Por exemplo, se a senha do cliente usa 447 bytes, o número restante de bytes a ser usado para uidNumber, gidNumber e uid é de apenas 5 bytes.
Exemplo que se encaixa no limite de 452 bytes:
userPassword= 404 Byte
uidNumber = 16 byte
gidNumber = 16 bytes
uid = 16 byte
total = 452 bytes
Resolution
Considere usar um esquema de criptografia diferente PBKDF2_SHA256, por exemplo, use SSHA-512.
Esquemas de criptografia LDAP compatíveis com o Unity:
A partir de agosto de 2022, as seguintes cifras estão disponíveis no 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**
** Ao usar PBKDF2_SHA256, a soma de [nome de usuário + senha + uid + gid] é limitada a 452 bytes.