centos设置密码复杂度及最长使用时间

本文介绍了如何在Linux系统中增强密码安全性,包括编辑系统认证文件`/etc/pam.d/system-auth`,配置密码验证策略以确保密码长度、复杂度,如至少包含大写字母、小写字母和特殊字符,并限制密码最大使用天数。同时,利用`chage`命令设置密码的有效期和提醒周期,以确保密码定期更新。通过这些措施,能有效提高系统的账户安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目标

  1. 设置密码的复杂度,长度不小于x,包含x位大写字母,x位小写字母,x个特殊字符。
  2. 设置密码最长使用时间不超过x天。

一、设置密码复杂度

1、编辑系统认证文件

vim /etc/pam.d/system-auth

在这里插入图片描述
2、配置置密码验证策略
在pam_pwquality.so模块后面加入密码的验证规则,如下图:
在这里插入图片描述

#长度不小于8位,至少包含1个数字,至少包含1个大写字母,至少包含1个小写字母,至少包含1个特殊字符
minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1
#password    requisite     pam_pwquality.so minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 try_first_pass local_users_only retry=3 authtok_type=

配置参数说明:

#定义登录/修改密码失败后,可以重试的次数;
retry=N
#设置新密码的最小长度;
minlen=N
#:N>0时表示:新密码中数字出现的最多次数;当N<0时表示:新密码中数字出现最少次数;
dcredit=N
#:当N>0时表示:新密码中大写字母出现的最多次数;当N<0时表示:新密码中大写字母出现最少次数
ucredit=N
#:当N>0时表示:新密码中小写字母出现的最多次数;当N<0时表示:新密码中小写字母出现最少次数;
lcredit=N
#当N>0时表示:新密码中特殊字符出现的最多次数;当N<0时表示:新密码中特殊字符出现最少次数;
ocredit=N
#表示拒绝包含多于N个相同连续字符的密码,默认值为0表示禁用此检查
maxrepeat=N
#表示拒绝包含长于N的单调字符序列的密码,默认值为0表示禁用此检查。
#如:12345
maxsequence=N

3、测试
如下图修改密码,则提示不符合规则。
在这里插入图片描述

二、设置密码有效期

通过chage命令来设置密码有效期
待补充
如上图的使用方法

# -d,上一次更改时间,-m,可更改的最小天数,0则任何时间都可修改,-M,有效天数,-W,到期前多少天提醒,yy,用户名
#这里则是有效期90天,提前7天给出过期提醒,任意时间段都可以修改密码。
chage -d 0 -m 0 -M 90 -W 7 yy

也可以如下图直接chage 用户名,根据提示一步步设置。
在这里插入图片描述
当密码到期后进行ssh连接时会强制用户更改密码。

#查看用户的年龄信息
chage -l 用户名

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值