首先,我是 LDAP 的新手。我在工作站上使用它来模拟我正在开发的 Web 应用程序的生产环境。所以我不是通过 LDAP 登录的,那里的用户与工作站上的真实用户不同。
我已经使用标准程序 () 设置了 LDAP dpkg-reconfigure
。我还设置了 phpLDAPadmin,我可以admin
以普通用户身份登录并更改密码(如这个视频)。
但是,我没能成功地从命令行更改密码。我尝试了不同的选项,ldappasswd
但找不到正确的组合。
为了举例子,我们假设:
- 我们想更改用户的登录信息
cronaldo
(与我当前的登录信息不同) - 用户在
People
ou - 领域
test.institute.fr
有人能提供一个可行的示例吗?如果能提示输入密码而不是在 CLI 上输入密码就好了。
我使用 Ubuntu 14.04 和 OpenLDAP 2.4.31(来自存储库)。
答案1
好的,我找到了,这并不难(我对不相关的 SASL 内容感到困惑)。命令是:
ldappasswd -H ldap://localhost -D 'cn=Cristiano Ronaldo,ou=People,dc=test,dc=institute,dc=fr' -W 'cn=Cristiano Ronaldo,ou=People,dc=test,dc=institute,dc=fr' -S`
在哪里:
-D
用于指定绑定用户-W
用于提示绑定用户的密码-S
用于提示新密码
一个技巧是使用cn
( Cristiano Ronaldo
) 而不是uid
( cronaldo
)。请注意,系统将首先要求您输入两次新密码,然后要求您输入当前密码。