如何更新ldap中已存在的用户密码?

我想通过从/etc/passwd/etc/shadow导入数据来更新用户的密码[用户已经存在于LDAP中]。

如何做到这一点?

我将给出我的设置概述。

  1. pipe理节点[xcat]pipe理的节点用户标识和密码,ldap不用于此目的。
  2. 我们已经通过以下给定的步骤将用户从pipe理节点导入到ldap服务器:

一个。 我从pipe理节点复制了/etc/passwd/etc/group/etc/shadow

湾 我跑了以下几点:

 getent passwd > /tmp/passwd.out getent shadow > /tmp/shadow.out cd /usr/share/migrationtools/ ./migrate_passwd.pl /tmp/passwd.out > /tmp/passwd.ldif ldapadd -x -W -D "cn=Manager,dc=aadityaldap,dc=com" -f /tmp/passwd.ldif 

现在我们要更新密码,并保持ldap服务器与outpipe理节点同步。 请给我想法如何实现这一点。

我试图以同样的方式将用户导入到ldap,但它给我一个错误。

 [root@iitmserver2 migrationtools]# ldapmodify -x -W -D "cn=Manager,dc=aadityaldap,dc=com" -f /tmp/passwd.ldif Enter LDAP Password: ldapmodify: modify operation type is missing at line 2, entry "uid=pharthiphan,ou=People,dc=aadityaldap,dc=com" [root@iitmserver2 migrationtools]# 

您的.ldif文件格式不正确。 获得密码后,您需要将其置于格式正确的.ldif文件中:

dn: <DN TO EDIT> changetype: modify userPassword: <NEW PASSWORD>

如果你有这样的文件然后寻找空白,LDAP真的不喜欢它。 如果没有,则编辑上面的脚本以包含正确格式化的.ldif,并在cron作业中以给定的时间间隔运行:

http://www.thesitewizard.com/general/set-cron-job.shtml