服务器密码策略

一、检查服务器密码复杂度策略:

 

1:检查密码复杂度策略中设置的大写字母个数

2:检查密码复杂度策略中设置的小写字母个数

3:检查密码复杂度策略中设置的数字个数

4:检查密码复杂度策略中设置的特殊字符个数

 

CentOS7系统:

CentOS7/RHEL7 开始使用pam_pwquality模块进行密码复杂度策略的控制管理。pam_pwquality替换了原来Centos6/RHEL6中的pam_cracklib模块,并向后兼容。

修改 /etc/pam.d/system-auth  文件,/etc/pam.d/system-auth  文件默认配置如下:

服务器密码策略_第1张图片

使用pam_pwquality模块设置密码复杂度,改动如下:------>

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=

改为:

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=8 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

如图所示:

注:ucredit:大写字母个数;lcredit:小写字母个数;dcredit:数字个数;ocredit:特殊字符个数

参数含义:尝试次数:3,最小密码长度:8;最少大写字母个数:1;最少小写字母个数:2;最少数字个数:1;最少特殊字符个数:1

 

 

二、检查是否设置口令生存周期

CentOS7系统:

修改 /etc/login.defs 文件,在 /etc/login.defs 中,默认一般是:

PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
PASS_MIN_LEN    5
PASS_WARN_AGE   7

更改设置如下:

PASS_MAX_DAYS	90
PASS_MIN_DAYS	6
PASS_MIN_LEN	6
PASS_WARN_AGE	30

注意:此处的更改优先级低于 chage 命令的设置
注意:更改完后,对所有新创建的用户生效。对已经存在的用户无效

参数含义:

PASS_MAX_DAYS   口令生存周期
PASS_MIN_DAYS    口令更改最小间隔天数
PASS_MIN_LEN    口令最小长度,已经被 PAM 模块取代,所以这个选项并不生效
PASS_WARN_AGE    口令过期前警告天数

 

建议:ansible那他机器的最好不要改,设置为永久。

PASS_MAX_DAYS    99999
PASS_MIN_DAYS    0
PASS_MIN_LEN    5
PASS_WARN_AGE    7

 

三、检查密码重复使用次数限制

Redhat:编辑/etc/pam.d/system-auth文件

修改设置如下

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok

修改为:

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=5

补充操作说明
只需在password sufficient这一行加上remember=5即可

 

四、检查是否配置账户认证失败次数限制

Redhat:
编辑/etc/pam.d/system-auth文件
配置:
auth  required  pam_tally.so deny=5 unlock_time=600 
account  required   pam_tally.so

找到 pam_tally.so 或 pam_tally2.so 的位置

[root@redis1 ~]# find / -name "pam_tally*.so"
/usr/lib64/security/pam_tally2.so

配置 /etc/pam.d/system-auth文件:

auth        required      pam_tally.so deny=5 unlock_time=300
account     required      pam_tally.so

如图:

服务器密码策略_第2张图片

 

你可能感兴趣的:(linux)