将debian 8用户(使用$ 6标签encryption的SHA512)迁移到LDAP

我有一个从debian 8到LDAP迁移本地用户的问题。

如你所知debian 6及以上使用SHA512作为标准的用户密码encryption。 在影子文件中,它在开始时显示带有“$ 6”标签的密码。

我使用http://www.padl.com/OSS/MigrationTools.html推荐的迁移工具

但是当我尝试迁移用户。 它给了我

{crypt}x 

代替

 {CRYPT}<salt>$<hashed password> 

通常在将现有用户迁移到LDAP时,我将用户从旧版debian(debian 5或之前版本)中迁移出来。 其中用户用MD5encryptionencryption。 这些工具总是以小的修改工作。

我有什么办法将本地用户与SHA512散列密码迁移到LDAP?

感谢您的帮助或答复。

migrate_passwd.pl只parsing你给它的密码文件作为参数,但是这只适用于旧式(即非影子密码)系统。 带有影子密码文件的系统只在该文件中存储一个“x”字符,真正的密码存储在/etc/shadow

看这个脚本的来源应该这样做。 但是,可惜的是,您需要root来读取/etc/shadow并且在没有特权的情况下运行时,脚本会自动失败。 所以,一个简单的:

 sudo ./migrate_passwd.pl /etc/passwd 

应该解决你的问题。