ldapsearch formato de arquivo de senha

12

Como devo passar uma senha para ldapsearch usando a opção -y <password file> ?
Se eu escrever a senha no arquivo de senha em texto simples, recebo este erro:

ldap_bind: Invalid credentials (49)
    additional info: 80090308: LdapErr: DSID-0C0903AA, comment: AcceptSecurityContext error, data 52e, v1772

O mesmo acontece se eu usar a opção -w <password> .

EDIT :
O comando que estou executando é

ldapsearch -x -D <my dn> -y .pass.txt -h server.x.x -b "dc=x,dc=y" "cn=*"

Onde o arquivo .pass.txt contém minha senha, em texto simples. O DN e a senha estão corretos. Se eu executar o comando com a opção -W e digitar a senha no prompt, o comando será executado com êxito, mas gostaria de armazenar a senha de alguma forma para criar um script.

    
por Paolo Tedesco 11.05.2010 / 18:19

4 respostas

12

Tenha em mente que o ldapsearch usará todo o conteúdo do arquivo para a senha - o que significa que incluirá um caractere de nova linha de término, se existir. Para verificar se este é, de fato, seu problema, tente criar um arquivo sem um:

echo -n ThisIsaBadPassword > .pass.txt

( UPDATE : incluído "-n")

    
por 11.05.2010 / 18:41
1

Supondo que seja a revogação da nova linha / carro, tente o seguinte:

cat .pass.txt | tr -d '\n\r' > .pass2.txt

Em seguida, use o arquivo .pass2.txt. Você sempre pode verificar se há novas linhas e retornos de carro com cat -vE e eles aparecerão como $ e ^ M respectivamente.

Você também pode fazer -y <(cat .pass.txt | tr -d '\n\r') diretamente no comando ldapsearch.

    
por 12.05.2010 / 01:49
0

ldapsearch -x -D cn=Manager,dc=domain,dc=com -y pass.txt -H ldap://ldap.domain.com -b dc=domain,dc=com

Você pode ter que chmod 600 pass.txt

    
por 12.05.2010 / 05:07
-2

Não há necessidade de despejar a senha em um arquivo real. Apenas faça o eco com o sinalizador -n para evitar a nova linha e, em seguida, leia-a a partir do descritor de arquivo STDIN (/ dev / fd / 0) da seguinte forma:

echo -n 'mypassword' | ldapsearch -x -D <my dn> -y /dev/fd/0 -h server.x.x -b "dc=x,dc=y" "cn=*"
    
por 20.05.2014 / 05:37

Tags