尝试从linux ldapsearch命令获取memberof详细信息

尝试从linux ldapsearch命令获取memberof详细信息,linux,active-directory,ldap,openldap,Linux,Active Directory,Ldap,Openldap,我正在尝试从Linux机器(CentOS 5.8)到Windows LDAP服务器运行LDAP查询,并希望获取用户的“memberof”详细信息。在本例中,域是cm.loc,用户是admin1@cm.loc. 下面是我正在使用的ldapsearch语法。它返回一个错误。 有人能告诉我使用ldapsearch查询特定帐户的memberof detail的正确语法应该是什么吗 这里是我正在使用的返回错误的东西;“ldap搜索外部错误搜索筛选器7” 我的语法哪里错了 ldapsearch –x –h

我正在尝试从Linux机器(CentOS 5.8)到Windows LDAP服务器运行LDAP查询,并希望获取用户的“memberof”详细信息。在本例中,域是cm.loc,用户是admin1@cm.loc. 下面是我正在使用的ldapsearch语法。它返回一个错误。 有人能告诉我使用ldapsearch查询特定帐户的memberof detail的正确语法应该是什么吗

这里是我正在使用的返回错误的东西;“ldap搜索外部错误搜索筛选器7” 我的语法哪里错了

ldapsearch –x –h 192.168.1.20 –b 'DC=cm,DC=loc' -s base –D 'admin1@cm.loc' -W '(&(objectCategory=Group)(|(memberOf=group1)(memberOf=group2)…))' 

谢谢

memberOf
是一个具有
DN
语法的属性
group1
不是DN。

memberOf
是语法为
DN
的属性
group1
不是DN。

语法看起来不错,您需要对
memberOf
查询使用完整的DN语法,它仍然是
memberOf=
,而不是
memberOf:
-如果使用冒号语法,则会出现错误的搜索筛选器错误


接下来,必须根据RFC4515的规范对搜索字符串进行转义。这通常意味着必须分别使用
\5c
\2a
\28
\29
对搜索字符串术语中的以下字符进行转义,否则会得到相同的错误-错误搜索术语。这是在ldap服务器可能已经应用于DN的转义之上的

语法看起来正常,您需要为
memberOf
查询使用完整的DN语法,它仍然是
memberOf=
,而不是
memberOf:
-如果使用冒号语法,您将得到错误的搜索筛选器错误


接下来,必须根据RFC4515的规范对搜索字符串进行转义。这通常意味着必须分别使用
\5c
\2a
\28
\29
对搜索字符串术语中的以下字符进行转义,否则会得到相同的错误-错误搜索术语。这是在ldap服务器可能已经应用于DN的转义之上的

我尝试修改语法以包括memberof的DN格式,如下所示:ldapsearch–x–h 192.168.1.20–b'DC=cm,DC=loc'-s base–D'admin1@cm.loc“-W”(&(objectCategory=Group)(|(memberOf:CN=admin1,DC=cm,DC=loc))'并且仍然收到ldap_search_ext错误搜索筛选器(-7)的错误失败–使用memberOf=not memberOf:我尝试修改语法以包含memberOf的DN格式,如下所示:ldapsearch–x–h 192.168.1.20–b'DC=cm,DC=loc'-s base–D'admin1@cm.loc“-W”(&(objectCategory=Group)(|(memberOf:CN=admin1,DC=cm,DC=loc))'并且仍然收到ldap_search_ext错误搜索筛选器(-7)的错误失败–使用memberOf=not memberOf: