在 AIX 上,这将是一个简单的:
chsec -f /etc/security/login.cfg -s usw -a pwd_algorithm=ssha512
Run Code Online (Sandbox Code Playgroud)
问题:但是我们如何将默认密码算法设置为 sha512?
更新:我认为 pwd_algorithm 不支持 ssha512,但它会更好,是的.. 在 Linux 桌面上尝试过:
[root@notebook ~]# john --test -format=ssha512
Will run 4 OpenMP threads
Benchmarking: SSHA512, LDAP [32/64 OpenSSL]... (4xOMP) DONE
Many salts: 3450K c/s real, 858307 c/s virtual
Only one salt: 2826K c/s real, 713696 c/s virtual
[root@notebook ~]#
[root@notebook ~]# john --test -format=bcrypt
Will run 4 OpenMP threads
Benchmarking: bcrypt ("$2a$05", 32 iterations) [Blowfish 32/64 X3]... (4xOMP) DONE
Raw: 1800 c/s real, 455 c/s virtual
[root@notebook ~]#
Run Code Online (Sandbox Code Playgroud)
这是否意味着在此桌面上使用 bcrypt 每秒约 1800 个密码和每秒使用 ssha512 约 3 000 000 个密码?越慢越好。
SHW*_*SHW 10
ENCRYPT_METHOD SHA512
在文件/etc/login.defs 中设置
还要注意同一个文件中提到的NOTE,就在ENCRYPT_METHOD
参数上面,它说
注意:建议使用与 PAM 模块 配置一致的值。
所以额外的修改/etc/login.defs
是修改/etc/pam.d/common-password
密码 [success=2 default=ignore] pam_unix.so 晦涩 sha512
在这里,晦涩是由login.defs处理的,但现在已被PAM淘汰
Linux 使用pam来处理身份验证任务。设置默认密码哈希算法是通过编辑完成的/etc/pam.d/common-password
:
password [success=1 default=ignore] pam_unix.so obscure sha256
Run Code Online (Sandbox Code Playgroud)
更改为您想要使用的任何算法:
password [success=1 default=ignore] pam_unix.so obscure sha512
Run Code Online (Sandbox Code Playgroud)
现在,您的默认密码哈希算法已更改为 sha512。您还需要强制其他用户更新其密码:
chage -d 0 <username>
Run Code Online (Sandbox Code Playgroud)