Tenho trabalhado na migração de um cluster de servidores existente para usar o openldap para gerenciamento de usuários/senhas. Porém, encontrei um problema - não tenho acesso a senhas de texto simples e todos os métodos SASL (que identifiquei até agora) exigem senhas de texto simples no banco de dados. O único formato disponível é criptografado. Período.
Para muitos programas, a autenticação simples ainda está disponível. No entanto, se alguém usar libldap2 (openldap), especificamente a família de funções ldap_sasl_interactive_bind suporta apenas conexões SASL, todas as outras serão desabilitadas e obsoletas.
Então, como faço para autenticar se o SASL estiver quebrado? (SASL não suporta criptografia = quebrado)
Abordagens de autenticação a serem usadas: radius (freeradius) aplicativos C personalizados
da web espelhamento ssh ldap
Consegui fazer o radius funcionar e isso é tudo.
Ajuda muito bem-vinda - os documentos não dizem por que a autenticação simples foi descontinuada e parece ser a única que pode funcionar. Sempre que o SASL está envolvido, nada funciona.
O ambiente é ubuntu-14.04; openldap, cyrus-sasl (através do openldap), freeradius, apache e componentes C e C++ personalizados.
Responder1
Não há muita diferença entre a autenticação simples LDAP e SASL/PLAIN. Em ambos, a senha em texto simples é fornecida pelo cliente e processada pelo servidor.OpenLDAP não exige que senhas sejam armazenadas emtexto simples, e, de fato, pode usar o sistema localcripta(3)função. Como você está lidando com senhas em texto simples durante a transmissão, deve-se fazer um esforço para garantir que essas senhas não sejam enviadas de forma clara. Isso geralmente é feito usando STARTTLS como parte da conexão LDAP, mas LDAPS também é uma opção.
$ ldapwhoami -h ldap.example.com -ZZ -x -D uid=user,ou=people,dc=example,dc=com -W
Enter LDAP Password:
dn:uid=user,ou=people,dc=example,dc=com
$ ldapwhoami -h ldap.example.com -ZZ -D uid=user,ou=people,dc=example,dc=com -W
Enter LDAP Password:
dn:uid=user,ou=people,dc=example,dc=com