CentOS7 设置密码复杂度

在CentOS下设置密码复杂度分为两步

(1)修改/etc/login.defs文件

vim /etc/login.defs

PASS_MAX_DAYS   90        # 密码最长过期天数
PASS_MIN_DAYS   80       # 密码最小过期天数
PASS_MIN_LEN    10      # 密码最小长度
PASS_WARN_AGE   7       # 密码过期警告天数

 (2)修改/etc/pam.d/system-auth文件

vim /etc/pam.d/system-auth

在 password requisite pam_cracklib.so 一行换成如下内容:

password  requisite pam_cracklib.so retry=5  difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/pw_dict

参数含义:

尝试次数:5 ;最少不同字符:3 ;最小密码长度:10 ;最少大写字母:1最少小写字母:3最少数字:3字典位置:/usr/share/cracklib/pw_dict

 

使用vracklib检查密码复杂度 

$ sudo yum install cracklib              # 安装cracklib
$ echo "mypassword" | cracklib-check         # 密码为mypassword时,检查情况
password: it is based on a dictionary word     # 它基于字典单词
$ echo "123" | cracklib-check             # 密码为123时,检查情况
123: it is WAY too short                # 密码太短了
$ echo "ME$2w!@fgty6723" | cracklib-check      # 密码为ME$2w!@fgty6723,检查情况
ME!@fgty6723: OK                     # OK,说明复杂度很好

 

使用pwscore检查密码复杂度

$ sudo yum install libpwquality                # 安装pwscore
$ echo "password" | pwscore                   # 给密码password打分
Password quality check failed:                 # 密码特性查检失败
The password fails the dictionary check - it is based on a dictionary word  # 密码是一个字典
$ echo "123" | pwscore                      # 给密码123打分
Password quality check failed:                  # 密码检查失败
The password is shorter than 8 characters           # 密码太短,少于8位字符
$ echo "ME!@fgty6723" | pwscore                 # 给密码ME!@fgty6723打分
90                                  # 90分

 

posted @ 2019-09-02 10:01  让未来到来  阅读(15792)  评论(0编辑  收藏  举报