linux口令需要什么条件
linux口令需要什么条件详细介绍
在 Linux 系统中,用户口令的策略通常由系统管理员通过配置文件(如 PAM 模块或密码质量策略)定义,不同发行版的默认设置可能略有差异,但常见的口令条件如下:
一、基本复杂度要求(通用规则)
- 最小长度
- 通常要求至少 8 个字符(部分严格策略可能要求 12 个以上),可通过配置文件调整。
- 示例配置:
minlen=8(在/etc/security/pwquality.conf中)。
- 字符类型复杂度
- 需包含以下至少 3 种类型 的字符(具体规则可自定义):
- 大写字母(A-Z)
- 小写字母(a-z)
- 数字(0-9)
- 特殊字符(如
!@#$%^&*()等)
- 示例配置:
ucredit=-1(至少 1 个大写字母)、lcredit=-1(至少 1 个小写字母)、dcredit=-1(至少 1 个数字)、ocredit=-1(至少 1 个特殊字符)。
- 需包含以下至少 3 种类型 的字符(具体规则可自定义):
- 禁止与用户名相似
- 密码不能包含用户名或其逆序(如用户名为 “user123”,密码不能是 “user” 或 “321resu”)。
二、安全策略(防止弱密码)
- 禁止简单 / 常见密码
- 密码不能是字典中的单词(如 “password”“admin”)、连续数字(如 “123456”)或重复字符(如 “aaaaaa”)。
- 由
pam_cracklib模块通过内置字典检查实现。
- 密码历史记录(防止重复使用旧密码)
- 系统会记住最近 5-10 次 使用过的密码(可配置),新密码不能与历史密码相同。
- 配置示例:
passwordrequisite pam_remember.so remember=5(在 PAM 配置文件中)。
三、有效期与管理策略
- 密码有效期
- 强制用户定期修改密码,如 90 天 内必须更换(可通过
chage命令或/etc/shadow配置)。 - 示例:
chage -M 90 username(设置最长使用天数为 90 天)。
- 强制用户定期修改密码,如 90 天 内必须更换(可通过
- 最短使用天数
- 防止用户频繁更改密码,如设置至少 7 天 内不能修改密码(避免绕过历史记录策略)。
- 配置:
chage -m 7 username。
- 过期警告
- 密码过期前 7 天 开始提示用户更换密码(默认设置,可调整)。
四、配置文件位置
- 密码质量策略(如复杂度、长度):
- RedHat/CentOS:
/etc/security/pwquality.conf或/etc/pam.d/system-auth(通过pam_cracklib模块)。 - Debian/Ubuntu:
/etc/pam.d/common-password(同样使用pam_cracklib)。
- RedHat/CentOS:
- 账户老化策略(有效期、警告期):
- 通过
chage命令直接修改用户属性,或编辑/etc/login.defs(全局默认策略)。
- 通过
五、查看当前用户策略
- 使用命令检查当前用户的密码策略:bash
pam_cracklib /etc/pam.d/*
chage username
总结
Linux 口令的核心条件包括 长度、复杂度、禁止弱密码、历史记录限制 等,具体规则由系统管理员通过 PAM 模块和配置文件自定义。用户设置密码时,需遵循管理员定义的策略,以确保安全性。如需修改策略,需以管理员身份调整相关配置文件。