ldapsearch e autenticação do kerberos

2

Eu posso conectar e pesquisar com êxito em um controlador de domínio do Active Directory usando o ldapsearch. Eu estou usando a opção -x , para especificar uma autenticação de nome de usuário / senha (a senha sendo especificada por -W e o nome de usuário por -D ).

Eu atualmente preciso despejar o diretório de um domínio MIT-kerberos. O Kerberos é o único protocolo disponível para autenticação. Eu posso recuperar um tíquete kerberos TGT com kinit . Eu estou usando estas linhas de comando:

ldapsearch  -Y SASL -b "REALM.INC" -H ldap://kerberos_IP_address
-> ldap_sasl_interactive_bind_s: Unknown authentication method (-6)
  additional info: SASL(-4): no mechanism available: No worthy mechs found

ldapsearch -o "mech=GSSAPI" ...
-> Invalid general option name: mech

Como posso autenticar com o kerberos usando o ldapsearch?

Muito obrigado pela sua ajuda e respostas

    
por philippe 20.04.2017 / 11:46

2 respostas

1

-Y é usado para especificar o mecanismo SASL, que provavelmente será GSSAPI , embora possa ser GSS-SPNEGO . Além disso, a base dn deve estar na sintaxe dn, não na sintaxe do domínio, ou seja, dc = example, dc = com, não example.com .

$ ldapsearch -x -b '' -s base supportedSASLMechanisms -H ldap://192.0.2.1/
dn:
supportedSASLMechanisms: GSSAPI

$ ldapsearch -Y GSSAPI -b dc=example,dc=com -H ldap://192.0.2.1/

$ ldapsearch -x -b '' -s base supportedSASLMechanisms -H 
ldap://192.0.2.2/
dn:
supportedSASLMechanisms: GSS-SPNEGO
supportedSASLMechanisms: GSSAPI
    
por 20.04.2017 / 23:17
0

dependendo do seu ldapsearch & Versão do sistema operacional, você pode tentar autenticar primeiro o kerberos usando kinit e "cache" do seu ticket, usá-lo em uma variável do kerberos env e, em seguida, permitir que o ldapsearch use essa variável, com algo parecido com isto:

kinit -c /tmp/<yourlogin>.cc.tmp <yourlogin>
export KRB5CCNAME=/tmp/<yourlogin>.cc.tmp
ldapsearch -Tx -h <host> -p <port> -Y GSSAPI -b "dc=example,dc=com" cn=*
    
por 21.04.2017 / 00:10