目录

一、设置密码复杂度

二、设置密码有效期

三、设置登陆会话超时

四、设置登陆失败锁定


一、设置密码复杂度

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

       (一)编辑system-auth

vim /etc/pam.d/system-auth

        修改策略

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

        (二)参数说明

        负数:代表最少出现次数,正数:代表最多出现次数

        minlen = 8,密码长度至少8位;

        lcredit=-1,至少包含一个小写字母;

        ucredit=-1,至少包含一个大写字母;

        dcredit=-1,至少包含要给数字;

        ocredit=-1,至少包含一个特殊字符;

        difok=5,新密码最多与旧密码重复5个字符;

        enforce_for_root,对root强制执行密码复杂度策略。

二、设置密码有效期

        (一)编辑login.defs

vim /etc/login.defs

        配置策略

        #密码的最大有效期

        PASS_MAX_DAYS   180

        #是否可修改密码,多少天后可修改

        PASS_MIN_DAYS   0

        #密码最小长度,pam_pwquality设置优先

        PASS_MIN_LEN    8

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

        PASS_WARN_AGE   15

        #以上设置只针对新用户生效,原来用户不生效。

        原有用户设置密码有效期,可以使用命令:

chage -M 180 root

三、设置登陆会话超时

        10分钟无操作,自动退出会话。

vim /etc/profile
TMOUT=600 #600秒超时
source /etc/profile

四、设置登陆失败锁定

        输错5次密码,账号锁定10分钟。

vim /etc/pam.d/system-auth
auth        required      pam_tally2.so onerr=fail deny=5 unlock_time=600 root_unlock_time=600

        此项配置只对控制台有效,ssh无效。

        如果需要对ssh远程有效,则需要修改/etc/pam.d/sshd

auth       required     pam_tally2.so onerr=fail deny=5 unlock_time=600 root_unlock_time=600

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐