基于centos7设置密码策略

Centos7开始使用pam_pwquality模块进行密码复杂度策略的控制管理。pam_pwquality替换了原来Centos6/RHEL6中的pam_cracklib模块,并向后兼容,pam_pwquality和pam_cracklib大致上意义一样

设置密码策略就有两种方法

1.直接指定pam_pwquality.so模块参数

首先进入到文件位置,利用vim查看并编辑

vim /etc/pam.d/system-auth

在“password requisite pam_pwquality.so”行尾添加具体参数
在这里插入图片描述

比如“minlen=16 ucredit=-1 lcredit=-1 ocredit=-1 dcredit=-1”,表示最小密码长度16位,数字,大小写字母,特殊字符均至少包含1位。

请添加图片描述

#retry 允许重试的次数

#difok=N:新密码必需与旧密码不同的位数 difok=3 新密码必须与旧密码有3位不同

#ucredit=N 当N>0时表示新密码中大写字母出现的最多次数;当N<0时表示新密码中大写字母出现最少次数

#lcredit=N 当N>0时表示新密码中小写字母出现的最多次数;当N<0时表示新密码中小写字母出现最少次数

#dcredit=N: N >= 0:密码中最多有多少个数字;N < 0密码中最少有多少个数字. dcredit=-1 密码中最少有1个数字

#ocredit=N:特殊字母的个数 ocredit=-1 密码中至少有1个特殊字符

#它表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)。

设置密码重复

可进入/etc/pam.d/system-auth中

password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok后增加remember=5 {5代表这将防止5个最近使用过的密码被用来设置为新密码(通过将它们存放在/etc/security/opasswd文件中)。}

2.通过修改/etc/security/pwquality.conf参数文件,定义密码复杂度规则。

修改pwquality.conf参数文件有2种方法

**(1)**直接vi或vim编辑器 ,或者甚至用sed命令,修改/etc/security/pwquality.conf
在这里插入图片描述
在这里插入图片描述

参数与system-auth中大致相同

**(2)**使用authconfig命令修改,修改后最终会体现在/etc/security/pwquality.conf文件中

以(2)为例:

1.用户不能设置小于此参数的密码长度。

authconfig --passminlen=8 --update

2.在新密码中设置同一类的允许连续字符的最大数目。

authconfig --passmaxclassrepeat=4 --update

3.在新密码中至少需要一个小写字符。

authconfig --enablereqlower --update

4.在新密码中至少需要一个大写字符。

authconfig --enablerequpper --update

5.在新密码中至少需要一个数字。

authconfig --enablereqdigit --update

6.密码包括至少一个特殊字符。

authconfig --enablereqother --update

设置密码过期期限

vi /etc/login.defs

PASSMAXDAYS 99999 #密码的最大有效期, 99999:永久有期

PASSMINDAYS 0 #是否可修改密码,0可修改,非0修改密码后下一次修改需间隔多少天后可修改

PASS_MIN_LEN 5 #密码最小长度,使用pam_cracklib module,该参数不再有效

PASSWARNAGE 7 #密码失效前多少天在用户登录时通知用户修改密码

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐