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

时间:2013-09-15 16:40:17

标签: linux active-directory ldap openldap

我正在尝试从Linux计算机(CentOS 5.8)运行LDAP查询到Windows LDAP服务器,并希望为用户获取“memberof”详细信息。在此示例中,Domain是cm.loc,用户是admin1@cm.loc。这是我正在使用的ldapsearch语法。它返回一个错误。 有人可以指出我正确的方向,使用ldapsearch查询特定帐户的详细信息成员的正确语法是什么?

这是我正在使用的返回错误; “ldap搜索ext坏搜索过滤器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)…))' 

谢谢

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

语法看起来没问题,你需要使用memberOf查询的完整DN语法,它仍然是memberOf=,而不是memberOf: - 如果你使用冒号语法那么你' ll得到错误的搜索过滤器错误。

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