银河麒麟服务器操作系统V10 SP2 密码复杂度设置
Linux对应的密码策略模块有:pam_passwdqc和pam_pwquality。
其中pam_passwdqc模块对应的是/etc/login.defs,
pam_pwquality模块对应的是/etc/security/pwquality.conf
/etc/security/pwquality.conf详解
retry=N: 定义登录/修改密码失败时,可以重试的次数;
Difok=N: 定义新密码中必须有几个字符要与旧密码不同。但是如果新密码中有1/2以上的字符与旧密码不同时,该新密码将被接受;
minlen=N: 定义用户密码的最小长度;
dcredit=N: 定义用户密码中必须包含多少个数字;
ucredit=N: 定义用户密码中必须包含多少个大写字母;
lcredit=N: 定义用户密码中必须包含多少个小些字母;
ocredit=N: 定义用户密码中必须包含多少个特殊字符(除数字、字母之外);
【其中 =-1表示,至少有一个】
/etc/login.defs详解
PASS_MAX_DAYS 99999 密码的最大有效期, 99999:永久有期
PASS_MIN_DAYS 0 是否可修改密码,0可修改,非0多少天后可修改
PASS_MIN_LEN 5 密码最小长度,使用pam_cracklib module,该参数不再有效
PASS_WARN_AGE 7 密码失效前多少天在用户登录时通知用户修改密码
实际生产环境配置
vim /etc/security/pwquality.conf
minlen = 8
minclass = 1
maxrepeat = 0
maxclassrepeat = 4
lcredit = -1
ucredit = -1
dcredit = -1
ocredit = -1
difok=5
vim /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_LEN 12
PASS_MIN_DAYS 7
PASS_WARN_AGE 30