Como testar uma conexão LDAP de um cliente

47

Como verificar a conexão LDAP de um cliente para o servidor. Estou trabalhando na autenticação LDAP e essa área de trabalho do cliente precisa ser autenticada por meio de um servidor LDAP. Posso fazer o SSH no servidor LDAP usando o usuário LDAP, mas no prompt de login da área de trabalho, não consigo fazer o login. Diz Falha na autenticação.

A máquina cliente possui o Cent OS 6.3 e o servidor LDAP possui o Cent OS 5.5

O software LDAP é o Openldap.

Os logs dos servidores LDAP nem mostram nenhuma mensagem.

Portanto, como testar se o cliente pode se conectar com êxito ao LDAP ou não.

FELDAP
fonte
2
Como uma observação secundária para este post antigo, você pode fazer uma pesquisa (por exemplo, ldapsearch) sem o PAM sendo configurado, mas para obter usuários para autenticação via LDAP, será necessário configurar o PAM para LDAP. Um ldapsearch básico mostra apenas que você tem os pacotes ldap lib e client tools instalados (por exemplo, yum install openldap openldap-clients) e pode acessar os servidores de diretório LDAP. É um bom passo no processo de configuração ou solução de problemas.
Ernie

Respostas:

44

Use ldapsearch. Ele retornará um erro se você não puder consultar o servidor LDAP.

A sintaxe para usar o ldapsearch:

ldapsearch -x -LLL -h [host] -D [user] -w [password] -b [base DN] -s sub "([filter])" [attribute list]

Um exemplo simples

$ ldapsearch -x -LLL -h host.example.com -D user -w password -b"dc=ad,dc=example,dc=com" -s sub "(objectClass=user)" givenName

Consulte este link: http://randomerror.wordpress.com/2009/10/16/quick-tip-how-to-search-in-windows-active-directory-from-linux-with-ldapsearch/

Edit : Parece que você não tem o pam configurado corretamente para o gdm / xdm, aqui está um exemplo de como fazê-lo: http://pastebin.com/TDK4KWRV

Sacx
fonte
Estou usando este comando: ldapsearch -h nome do host -x -b "dc = exemplo, dc = com" 'uid = usuário' e retorna essas informações do usuário do banco de dados LDAP. Mas não consigo entrar na área de trabalho via autenticação LDAP.
FELDAP 28/11/2012
Se o seu servidor não apresentar nenhum erro, provavelmente é do seu cliente. Por favor, dê uma olhada no auth.log e veja o que há relacionado ao ldap.
Sacx
Sim, acho que é o cliente. Nem sequer está procurando o servidor LDAP. O que deve ser feito para fazer com que o cliente procure o servidor LDAP para autenticação? Eu editei o /etc/pam.d/system-auth. Você pode conferir aqui: pastebin.com/jQjN7cYU
FELDAP
1
Use ldapwhoami com parâmetros corretos e tente se autenticar com seu usuário.
Sacx
você seguiu um tutorial para preparar o cliente para autenticação gdm / xdm?
Sacx
5

Para saber se as configurações do servidor e dos clientes estão corretas, uso o seguinte:

ldapsearch -x -b "uid=username,ou=people,dc=example,dc=com"

a resposta será mais ou menos assim:

# extended LDIF
#
# LDAPv3
# base <uid=username,ou=people,dc=example,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# username, people, example.com
dn: uid=username,ou=people,dc=example,dc=com
cn: User Name
uid: username
uidNumber: 1050
loginShell: /bin/bash
homeDirectory: /home/webminder
gidNumber: 1030
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
objectClass: inetOrgPerson
gecos: User Name
sn: User Name

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

você pode usar filtros diferentes. Eu só tenho um servidor na minha rede

MeduZa
fonte
3

Seu problema não é LDAP, é PAM.

Como observado nos comentários sobre a resposta de Sacx você provavelmente não tem o aplicativo de console login (geralmente o PAM system, xdm, gdm, etc. serviço (s)) configurado para consultar o LDAP para autenticação de usuários.

Você deve revisar a documentação do PAM para obter mais informações sobre como configurar isso .

voretaq7
fonte
Eu já configurei esses arquivos, mas não está funcionando. Você pode verificar os arquivos que eu publiquei nos comentários acima. O LDAP realmente não possui seus documentos.
FELDAP 2/12/12