O utilitário usado para criptografar uma senha para uso com o LDAP depende do algoritmo de hash específico que você deseja usar e do servidor LDAP ao qual você está conectando. Não existe um único "utilitário de criptografia de senha LDAP". Em vez disso, você usa ferramentas de hash de senha de uso geral e informa ao servidor LDAP qual tipo de hash usou.  
 Aqui está um colapso de métodos e utilitários comuns:  
 1. Algoritmos comuns de hash para LDAP:   * 
 {ssha} (sha-1 salgado): Isso é mais antigo, mas ainda é amplamente suportado. Ele antecende um sal gerado aleatoriamente para a senha antes do hash com o SHA-1 e, em seguida, base64 codifica o resultado junto com o sal. 
 sha-1 é considerado criptograficamente fraco e deve ser evitado em novas implantações.   * 
 {SSHA256} (SHA-256 SALTED): Uma alternativa mais forte ao SSHA, usando o SHA-256. Preferido sobre SSHA. 
 * 
 {SSHA512} (SHA-512 SALTED): Ainda mais forte que o SSHA256, usando o SHA-512. Recomendado para novas implantações quando suportado. 
 * 
 {md5} (md5): Isso é * altamente * desanimado. O MD5 está quebrado e nunca deve ser usado para hash de senha. Muitos servidores LDAP podem nem permitir mais. 
 * 
 {smd5} (md5 salgado): O uso de um sal o torna * um pouco * melhor que o MD5 simples, mas ainda não é recomendado. Evite isso também. 
 * 
 {Crypt} (Crypt (3)): Usa a função `Crypt ()` `` `` `` `` `` `` `` `` ``, que geralmente indica o hash baseado em DES. O DES é considerado muito fraco. Geralmente é uma má escolha. 
 * 
 {ClearText}: A senha é armazenada em texto simples. 
 Nunca use isso em um ambiente de produção.   * 
 {pbkdf2}  :(PBKDF2-SHA256, PBKDF2-SHA512) Uma função de derivação-chave mais moderna que é mais resistente a ataques de força bruta. Esta é uma boa escolha se o seu servidor LDAP o suportar.   
 2. Utilitários e métodos para gerar hashes:   * 
 `slappasswd` (OpenlDAP): Essa é a utilidade mais comum e recomendada, especialmente se você estiver usando o OpenLDAP. Ele foi projetado especificamente para gerar hashes de senha LDAP. Ele suporta vários algoritmos, incluindo SSHA, SSHA256, SSHA512 e muito mais.  
 `` `BASH 
 slappasswd -s mySecretPassword # padrão:ssha (geralmente) 
 slappasswd -h '{ssha256}' -s mySecretPasswordWord 
 slappasswd -h '{ssha512}' -s mySecretPasswordWord 
 slappasswd -h '{pbkdf2}' -s mySecretPassword 
 `` `  
 `slappasswd` produz a sequência formatada corretamente, que você usa no atributo` userpassword` na sua entrada LDAP.  
 * 
 `ldappasswd`: Isso é usado principalmente para alterar * uma senha em uma entrada LDAP existente. Normalmente, ele usa os mesmos algoritmos de hash suportados pelo servidor LDAP. Enquanto você * poderia * potencialmente usá -lo para gerar um novo hash de senha, `slappasswd` é a ferramenta preferida para a criação inicial de senha.  
 * 
 `OpenSSL passwd`: Este é um utilitário de linha de comando de uso mais geral para gerar hashes de senha. Ele suporta uma variedade de algoritmos de hash, mas você precisa ter cuidado para formatar a saída corretamente para LDAP. Ele não lida com a geração de sal e a codificação para você tão bem quanto `slappasswd`. Geralmente é melhor usar o `slappasswd` para LDAP.  
 `` `BASH 
 OpenSSL Passwd -Salt -Sha256 MySecretPassword 
 `` `  
 Você precisaria então prender manualmente `{ssha256}` para a saída.  
 * 
 linguagens de programação (Python, Perl, Java, etc.): Você pode usar bibliotecas em várias linguagens de programação para gerar os hashes. Isso oferece mais flexibilidade, mas também exige que você entenda os algoritmos de hash e como gerar e codificar o sal corretamente. Por exemplo, em Python: 
 `` `Python 
 importar hashlib 
 Importar base64 
 OS de importação  
 def ssha256_password (senha):
 sal =os.urandom (8) # 8 bytes é um bom tamanho de sal 
 salted_password =senha.encode ('utf-8') + sal 
 hashed_password =hashlib.sha256 (salted_password) .digest () 
 combinado =hashed_password + sal 
 codificado =base64.b64Encode (combinado) .Decode ('ASCII') 
 retornar "{ssha256}" + codificado  
 Password_hash =ssha256_password ("mySecretPassword") 
 Print (Password_hash) 
 `` `  
 Este é apenas um exemplo. Você precisaria ajustar o código para outros algoritmos de hash.  
 * 
 Geradores de senha LDAP baseados na Web: Existem algumas ferramentas on -line que podem gerar hashes de senha LDAP. 
 seja extremamente cauteloso usando isso,  especialmente com senhas sensíveis. Você está confiando em terceiros com sua senha. É muito mais seguro usar uma ferramenta local como o `slappasswd`.   
 3. Configuração do servidor LDAP:   É crucial configurar seu servidor LDAP para entender quais algoritmos de hash são permitidos e preferidos. Por exemplo, no OpenLDAP, você normalmente configura isso em `slapd.conf` ou na configuração dinâmica usando` cn =config`.   
 Exemplo (Openldap, `cn =config`):   `` `ldif 
 dn:olcdatabase ={0} config, cn =config 
 ChangeType:modifique 
 Adicione:olcpasswordhash 
 olcpasswordhash:{ssha512} 
 - 
 Adicione:olcpasswordhash 
 olcpasswordhash:{ssha256} 
 - 
 Adicione:olcpasswordhash 
 olcpasswordhash:{ssha} 
 `` `  
 Isso configura o servidor para permitir SSHA512, SSHA256 e SSHA, nessa ordem de preferência. Quando um cliente usa `ldappasswd` para alterar uma senha, o servidor tentará usar o algoritmo mais forte na lista` olcpasswordhash` que o cliente solicita (ou o primeiro se o cliente não especificar uma preferência).   
 4. Qual utilitário escolher:   * 
 `slappasswd` é a melhor opção para gerar hashes iniciais de senha.  Ele foi projetado para LDAP, lida com o sal corretamente e suporta uma variedade de algoritmos. É a abordagem mais segura e confiável. 
 * Use `ldappasswd` para * alterar as senhas * em um servidor LDAP existente, pois ele se integra diretamente à configuração do servidor. 
 * Evite `OpenSSL Passwd`, a menos que você realmente saiba o que está fazendo e possa formatar a saída corretamente. 
 * Evite geradores de senha on -line devido a riscos de segurança. 
 * As linguagens de programação fornecem flexibilidade, mas requerem implementação cuidadosa.   
 Considerações de segurança:   * 
 Use algoritmos fortes de hash: Prefere SSHA512 ou PBKDF2 se o seu servidor LDAP os suportar. Evite MD5, SHA-1, DES e texto simples. 
 * 
 Use um forte sal aleatório: O sal deve ter pelo menos 8 bytes (64 bits) e criptograficamente aleatório. 
 * 
 Limite os algoritmos de hash permitidos: Configure seu servidor LDAP para permitir apenas algoritmos fortes de hash. 
 * 
 Considere políticas de senha: Implemente as políticas de complexidade e expiração de senha para melhorar ainda mais a segurança. 
 * 
 Proteja seu servidor LDAP: Prenda seu servidor LDAP do acesso não autorizado.  
 Em resumo, `slappasswd` é a utilidade mais apropriada para gerar hashes de senha LDAP. Certifique -se de selecionar um forte algoritmo de hash e configurar seu servidor LDAP de acordo com a segurança ideal. Sempre priorize as opções mais seguras disponíveis.