(openldap)ldappasswd命令不';不能使用uid,但可以使用cn=全名

(openldap)ldappasswd命令不';不能使用uid,但可以使用cn=全名,ldap,openldap,Ldap,Openldap,我正在尝试为我的OpenLDAP服务器中的1300个用户添加密码以供工作 如果我使用以下命令,我可以向用户添加密码 ldappasswd -s newpasswd -w adminpw -D "cn=admin,dc=school,dc=private" "cn=test user,dc=school,dc=private" 我有1300多名用户,我正在为他们添加密码,有些用户有重复的名字,但UID不同 我在尝试使用UID时执行以下命令,但它找不到用户。命令相同,只是将cn=testuser切

我正在尝试为我的OpenLDAP服务器中的1300个用户添加密码以供工作

如果我使用以下命令,我可以向用户添加密码

ldappasswd -s newpasswd -w adminpw -D "cn=admin,dc=school,dc=private" "cn=test user,dc=school,dc=private"
我有1300多名用户,我正在为他们添加密码,有些用户有重复的名字,但UID不同

我在尝试使用UID时执行以下命令,但它找不到用户。命令相同,只是将cn=testuser切换为uid=testu

ldappasswd -s newpasswd -w adminpw -D "cn=admin,dc=school,dc=private" "uid=testu,dc=school,dc=private" 
根据我在网上看到的所有指南,这应该行得通。为什么我会得到一个无此类对象(32)错误

请注意,我目前正在测试服务器上工作。用户是出于测试目的而组成的。“cn=Test User”“uid=testu”“uidNumber=1001”用户位于ldap的基础“dc=school,dc=private”有一个名为“People”的组,gid=501

我曾经和他一起当过导游

在添加/修改用户方面,我是ldap新手,但我确实构建了服务器,在它们之间设置了复制,并添加了
TLS加密。每个LDAP条目都是名称-值对属性的集合。通常,您选择一个形式为
name=value
的属性作为条目的相对可分辨名称(RDN)。明智地选择具有唯一值的属性

所有条目都是目录信息树(DIT)中的节点。条目的路径由一系列RDN组成,这些RDN由逗号按惯例从叶到根(从左到右)的顺序连接在一起。此路径称为可分辨名称(DN),用于标识DIT中的用户


当您选择RDN作为
cn=test user
时,您不能用DN
uid=testu,dc=school,dc=private
来称呼用户,即使带有值
testu
的属性
uid
是用户条目的一部分。

每个LDAP条目都是一组属性,它们是名称-值对。通常,您选择一个形式为
name=value
的属性作为条目的相对可分辨名称(RDN)。明智地选择具有唯一值的属性

所有条目都是目录信息树(DIT)中的节点。条目的路径由一系列RDN组成,这些RDN由逗号按惯例从叶到根(从左到右)的顺序连接在一起。此路径称为可分辨名称(DN),用于标识DIT中的用户


当您选择RDN作为
cn=test user
时,您不能用DN
uid=testu,dc=school,dc=private
来称呼用户,即使带有值
testu
的属性
uid
是用户条目的一部分。

我从来没有看到过这样做的指南。您必须提供完整的DN,而不仅仅是使SOEMT挂起。我从未见过一个指南说这应该有效。您必须提供完整的DN,而不仅仅是使SOEMS挂起。这是有意义的。谢谢你的解释。我假设
cn=test user
可以在切线上交换为
uid=testu
,但相关-我发现奇怪的是,当我导入用户时,它是与
dn:cn=testu,dc=school,dc=private
位于ldif的顶行,在ldif文件的以下行中添加了一个
cn=test user
。导入时,它似乎将DN中的
cn=testu
替换为
cn=testuser
。我导入了带有
dn:cn=testu,dc=school,dc=private
的ldif,因为它是一个唯一的标识符,我知道我们有同名的学生,因为我们在旧的Novell ldap中创建他们的条目时遇到了这个问题。cn是一个多值属性,因此,拥有多个值没有问题。从LDIF文件导入将遵循指定的dn。确保LDIF文件也将RDN值作为属性值。这很有意义。谢谢你的解释。我假设
cn=test user
可以在切线上交换为
uid=testu
,但相关-我发现奇怪的是,当我导入用户时,它是与
dn:cn=testu,dc=school,dc=private
位于ldif的顶行,在ldif文件的以下行中添加了一个
cn=test user
。导入时,它似乎将DN中的
cn=testu
替换为
cn=testuser
。我导入了带有
dn:cn=testu,dc=school,dc=private
的ldif,因为它是一个唯一的标识符,我知道我们有同名的学生,因为我们在旧的Novell ldap中创建他们的条目时遇到了这个问题。cn是一个多值属性,因此,拥有多个值没有问题。从LDIF文件导入将遵循指定的dn。确保LDIF文件也将RDN值作为属性值。