在Red Hat Enterprise Linux 8/9操作系统中如何设置密码策略及复杂度

在Red Hat Enterprise Linux 8/9和相同版本的CentOS操作系统中,我们并不建议直接修改默认存在/etc/pam.d/目录下的system-auth和password-auth文件。那么我们该如何设置密码策略及复杂性呢?

一、密码复杂度定期更换策略,避免弱口令

应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换;建议操作系统对登录的用户进行身份标识和鉴别,身份鉴别信息配置复杂度要求开启定期更换策略。

解决方案

修改 /etc/login.defs 文件内容即可,加入如下:

# 密码最大有效期 
PASS_MAX_DAYS 180
# 两次修改密码的最小间隔时间
PASS_MIN_DAYS 1
# 密码最小长度
PASS_MIN_LEN 8
# 密码过期前7天开始提示
PASS_WARN_AGE 7

二、密码复杂度:设置密码强度

密码强度主要涉及到密码长短、密码是否包含数字、密码是否包含大写字母、密码是否包含小写字母、密码是否包含其他字符、新密码所需的最小字符种类、密码最大相同字符连续数量、新密码中同一类别允许的最大连续字符数、新密码和旧密码相同字符数数量等。

解决方案

在Red Hat Enterprise Linux 8/9和相同版本的CentOS操作系统下,我们需要按照如下步骤进行操作:

[root@shizhanxia.com  ]# vi /etc/security/pwquality.conf
# 新密码和旧密码相同字符数数量
difok = 5
# 新密码的最小长度
minlen = 8 
# 密码中包含所需数字的最小数量,如果小于0,则为新文件中的最小小写字符数
dcredit = -1
# 密码中包含大写字符的最小数量,如果小于0,则为新文件中的最小大写字符数
ucredit = -1
# 新密码中包含小写字符的最大数量,如果小于0,则为新文件中的最小小写字符数
lcredit = -1
# 新密码中包含其他字符的最大数,如果小于0,则为新文件中的最小其他字符数,等于0,则不做强制要求
ocredit = -1
# 新密码中允许的最大连续相同字符数。如果该值为0,则禁用该检查
maxrepeat = 3
# 中同一类允许的最大连续字符数,如果该值为0,则禁用该检查
maxclassrepeat = 0
# 在返回错误之前,最多提示用户N次
retry = 3
# 对根用户密码强制执行质量检查
enforce_for_root

扩展阅读一:

pam_pwquality此模块可以插入到给定服务的密码堆栈中,以提供密码的一些强度检查。该代码最初基于pam_cracklib模块,该模块与其选项向后兼容。此模块的作用是提示用户输入密码,并根据系统字典和一组识别错误选择的规则检查密码的强度。

pwquality.conf提供了一种为系统密码配置默认密码复杂度要求的方法。此文件由libpwquality库和使用此库检查和生成密码的实用程序读取。该文件具有非常简单的name=value格式,可能的注释以“#”字符开头。开头的空格行、行尾和“=”符号周围将被忽略。

libpwquality库还首先读取所有来自/etc/security/pwquality的conf文件。按ASCII排序的conf.d目录。相同设置的值将按照解析文件的顺序被覆盖。

三、密码复杂度:设置密码策略

应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施;建议操作系统开启登录失败处理功能配置登录失败3次及锁定时间30分钟;

解决方案

[root@shizhanxia.com ]# vi /etc/security/faillock.conf
# 如果找不到用户,将把用户名记录到系统日志中
audit
silent
# 连续身份验证失败的次数,则拒绝访问
deny = 3
# 锁定n秒后,将重新启用访问
unlock_time = 1800
# root帐户和常规帐户一样可以被锁定
even_deny_root
# root账号锁定时间,不设置同普通用户
root_unlock_time = 1800

扩展阅读一:

faillock命令是一个应用程序,可用于检查和修改配置文件的内容。它可以显示最近失败的用户名身份验证尝试,或清除所有或单个用户名的计数文件。该命令使用的是pam_faillock.so模块,此模块是在指定时间内维护每个用户失败身份认证列表,并在多次连续失败的身份验证时锁定该账户。Faillock.conf文件在pam-1.3.1-8.el8之前的版本中是不存在/etc/security/faillock.conf这个配置文件的。该文件由pam_faillock模块读取,因为faillock.conf配置简单是直接配置pam_faillock的首选方法

原创文章,作者:运维侠,如若转载,请注明出处:https://www.yunweixia.com/solutions/red-hat-enterprise-linux-8-9-password-policy-complexity-configuration-guide.html

(0)
运维侠的头像运维侠共建用户
上一篇 2025年6月24日 16:51
下一篇 2025年6月25日 18:11

相关推荐

发表回复

登录后才能评论