![LDAP 기반에서 클래스별로 개체를 검색하는 방법은 무엇입니까?](https://linux55.com/image/183687/LDAP%20%EA%B8%B0%EB%B0%98%EC%97%90%EC%84%9C%20%ED%81%B4%EB%9E%98%EC%8A%A4%EB%B3%84%EB%A1%9C%20%EA%B0%9C%EC%B2%B4%EB%A5%BC%20%EA%B2%80%EC%83%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
특정 클래스의 객체에 대해 LDAP를 검색하려고 하는데 항상 다음을 반환합니다.
result: 32 No such object
배경:
LDAP 액세스가 가능한 PGP 서버인 keyserver.pgp.com에 있는 PGP Universal 서버에 액세스하려고 합니다. 여기에는 PGP 키를 검색할 수 있는 방법에 대한 일부 정보가 들어 있는 pgpServerInfo 클래스 개체가 있습니다.
나는 LDAP에 대해 잘 알지 못하므로 내 접근 방식이 완전히 잘못되었을 수 있습니다.
이것이 내가 시도한 것입니다:
ldapsearch -v -x -H ldap://keyserver.pgp.com "(objectclass=pgpServerInfo)"
나는 또한 추가하려고 시도했지만 -s base
차이 -s one
는 없습니다.
이것은 작동합니다:
ldapsearch -v -x -b "cn=PGPServerInfo" -H ldap://keyserver.pgp.com "(objectClass=pgpServerInfo)"
하지만 그렇게 함으로써 나는 내가 피하고 싶은 대상의 이름을 가정해야 합니다.
객체를 찾는 올바른 쿼리는 무엇입니까?
답변1
기본 이름을 사용하지 않으려면 다음을 시도해 보세요.
ldapsearch -v -x -s base -H ldap://keyserver.pgp.com "(objectclass=*)" +
+
검색 시 "운영 속성"이 나열됩니다 .
그러면 원하는 것을 얻을 때까지 namingContext를 선택할 수 있습니다.