我们的服务器目前使用河豚密码来存储密码,它使用pam_unix2 。 我们想逐渐切换到SHA。 这个想法是所有新更改的密码都会被SHA散列。 但是我不知道如何configurationPAM,即common-password 。 如果使用pam_unix2 ,则不能使用SHA保存新密码。 如果我使用pam_unix ,则无法validation旧的blowfish密码。 有没有办法如何validation一个模块的旧密码,并与另一个新的设置?
这取决于password界面是否检查当前的密码,或者这是否由正常的auth接口完成。 我会怀疑后者由于root能够设置其他用户的密码,而不提供用户的以前的密码,在这种情况下,你应该能够做到这样的事情:
# Accept authentication with either Blowfish or SHA512 auth sufficient pam_unix2.so auth sufficient pam_unix.so # Set new passwords only with SHA512 password required pam_unix.so sha512