클라이언트에서 LDAP 연결을 테스트하는 방법


46

클라이언트에서 서버로의 LDAP 연결을 확인하는 방법 LDAP 인증 작업을하고 있는데이 클라이언트 데스크탑은 LDAP 서버를 통해 인증해야합니다. LDAP 사용자를 사용하여 LDAP 서버에 SSH로 연결할 수 있지만 데스크탑 로그인 프롬프트에서 로그인 할 수 없습니다. 인증 실패라고 표시됩니다.

클라이언트 시스템에는 Cent OS 6.3이 있고 LDAP 서버에는 Cent OS 5.5가 있습니다.

LDAP 소프트웨어는 Openldap입니다.

LDAP 서버 로그에는 메시지가 표시되지 않습니다.

따라서 클라이언트가 LDAP에 성공적으로 연결할 수 있는지 여부를 테스트하는 방법.


1
이 이전 게시물에 대한 작은 참고 사항으로, PAM을 설정하지 않고 검색 (예 : ldapsearch)을 수행 할 수 있지만 LDAP를 통해 사용자를 인증하려면 LDAP에 대한 PAM 설정이 필요합니다. 기본 ldapsearch는 ldap lib 및 클라이언트 도구 패키지가 설치되어 있고 (예 : yum install openldap openldap-clients) LDAP 디렉토리 서버에 도달 할 수 있음을 보여줍니다. 설정 또는 문제 해결 프로세스의 좋은 단계입니다.
Ernie

답변:


43

ldapsearch를 사용하십시오. LDAP 서버를 쿼리 할 수 ​​없으면 오류가 반환됩니다.

ldapsearch 사용 구문 :

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

간단한 예

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

이 링크를 참조하십시오 : http://randomerror.wordpress.com/2009/10/16/quick-tip-how-to-search-in-windows-active-directory-from-linux-with-ldapsearch/

편집 : 그것은 당신이 여기 GDM / XDM에 대한 corectlly 구성 PAM이없는 것 같다 그것을 수행하는 방법 예는 다음과 같습니다 http://pastebin.com/TDK4KWRV


ldapsearch -h hostname -x -b "dc = example, dc = com" 'uid = user'명령을 사용하고 있으며 LDAP 데이터베이스에서 해당 사용자 정보를 반환합니다. 그러나 LDAP 인증을 통해 데스크탑에 로그인 할 수 없습니다.
FELDAP

서버에 오류가 없으면 클라이언트에서 발생한 것일 수 있습니다. auth.log를 살펴보고 ldap과 관련된 것이 무엇인지 확인하십시오.
Sacx

그렇습니다, 나는 그것의 클라이언트를 추측합니다. 심지어 LDAP 서버를 검색하지도 않습니다. 클라이언트가 인증을 위해 LDAP 서버를 조회하도록하려면 어떻게해야합니까? /etc/pam.d/system-auth를 편집했습니다. pastebin.com/jQjN7cYU
FELDAP

1
올바른 매개 변수와 함께 ldapwhoami를 사용하고 사용자 인증을 시도하십시오.
Sacx

gdm / xdm 인증을 위해 클라이언트를 준비하기 위해 튜토리얼을 따르셨습니까?
Sacx

4

내 서버 및 클라이언트 설정이 올바른지 확인하려면 다음을 사용하십시오.

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

답은 성공과 같은 것입니다.

# 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

다른 필터를 사용할 수 있습니다. 네트워크에 하나의 서버 만 있습니다


3

문제는 LDAP가 아닙니다. PAM입니다.

언급 한 바와 같이 Sacx의 대답에 코멘트에 당신은 아마 콘솔 로그인 응용 프로그램 (일반적으로 PAM이없는 system, xdm, gdm, 등의 서비스 (들)) 사용자를 인증하는 LDAP 상담을 구성.

이 설정 방법에 대한 자세한 내용PAM 설명서를 검토하십시오 .


이미 해당 파일을 구성했지만 작동하지 않습니다. 위의 의견에 게시 한 파일을 확인할 수 있습니다. LDAP에는 실제로 문서가 없습니다.
FELDAP
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.