1.12 CentOS7上密码复杂度设置

服务器在配置的时候,什么样的策略才能更安全呢?登录失败后如何处理才是合理的做法呢?口令多久更换一次才合适呢?

信息系统安全等级保护关于主机的访问控制有一个控制点是这样要求的: 操作系统和数据库系统管理用户身份标识应具有不易被冒用的特点,口令应有复杂度要求并定期更换。

针对操作系统进行测评时,我们必须要查看口令的复杂度以及定期更换情况。口令定期更换的配置在/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   0            

PASS_MIN_LEN    10  

PASS_WARN_AGE   7        

通过命令chage -l username来查看账户的配置信息。这些配置并不对已有账户生效,只对新建账户生效。因此对于已有账户,一定要用chage命令进行逐一修改。

接下来需要设置口令的复杂度,我们一般要求口令由大小写字母、数字和字符共同组成。唯一的缘由就是这样的口令复杂度高,不容易被暴力破解。在/etc/pam.d/system-auth中添加配置如下:

password    required     pam_cracklib.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-1 dcredit=-1 

当然还可以对用户设置的口令进行字典检查。保存号文件之后开始测试:

1.12 CentOS7上密码复杂度设置_第1张图片

建的用户修改密码,必须得遵守设定的密码复杂度的规则。密码过于简单,系统会提示。这个配置要求密码长度10位以上,由至少1位大写、小写字母和数字组成。

对于登录用户失败锁定的策略,只要添加如下配置即可:

auth   required   pam_tally2.so deny=5 lock_time=5 unlock_time=5 

在不同的文件中添加会有不同的效果:

/etc/pam.d/login:在本地文本终端登录时限制;

/etc/pam.d/kde:在本地图形界面登录时限制;

/etc/pam.d/sshd:在ssh登录时限制;

/etc/pam.d/system-auth:凡是调用此文件的服务,都限制。

启用口令复杂度和登录失败锁定后,一定要当心,密码输错后很麻烦的。

安全和便捷之间总有一段距离,技术能力和安全意识决定了这段距离的长度。

你可能感兴趣的:(1.12 CentOS7上密码复杂度设置)