银河麒麟os怎么设置密码复杂度

梦静酱_6900

梦静酱_6900

2026-11-05

163人浏览

原创

必须同时修改PAM模块与pwquality.conf和login.defs文件:minlen=12,dcredit=ucredit=lcredit=ocredit=-1,PASS_MIN_LEN=12,并确保pam_pwquality.so在common-password中启用,再用chage为root等特权账户设置-m7、-M90、-W7策略。

银河麒麟os怎么设置密码复杂度

在银河麒麟操作系统中设置密码复杂度,是为了防止用户设置弱密码导致系统被暴力破解或提权攻击,必须同时修改PAM模块配置与底层策略文件才能真正生效。

修改pwquality.conf强制字符类型与长度

这是最核心的一步,直接决定密码是否被系统接受。pam_pwquality.so模块读取该文件执行实时校验。

使用root权限编辑配置文件:sudo nano /etc/security/pwquality.conf

找到minlen参数行,将其改为所需最小长度,例如设为12位:minlen = 12

取消dcredit、ucredit、lcredit、ocredit四行的注释(删除开头的#),并统一设为-1,表示“至少包含1个”对应类型字符:
dcredit = -1
ucredit = -1
lcredit = -1
ocredit = -1

这四个参数缺一不可——如果只改minlen而漏掉其中任一credit参数,用户仍可设置纯数字密码,策略形同虚设。

保存退出后,立即测试:执行passwd命令修改当前用户密码,输入8位纯字母密码会直接报错“无效的密码:不满足最小长度或字符类型要求”。

同步更新login.defs确保新建用户继承策略

/etc/login.defs不参与运行时校验,但它控制useradd创建用户时的默认行为,并影响chage等工具输出结果,必须与pwquality.conf保持一致。

用root权限打开文件:sudo nano /etc/login.defs

查找PASS_MIN_LEN这一行,若被注释就去掉#号,若不存在则新增一行:PASS_MIN_LEN 12

注意:该值必须和pwquality.conf中的minlen完全相同,否则新建用户可能绕过PAM强度检查却仍被chage显示“密码长度不足”。

无需重启或重载服务,保存即生效。

Superpowers
Superpowers

Superpowers是一款AI智能体工具,Jesse Vincent开源的 Agentic 技能框架与软件开发方法插件。

下载

验证PAM配置是否已加载pwquality模块

前两步做完,不代表策略就起作用了——关键要看PAM是否真的调用了pam_pwquality.so。

方法一:检查common-password文件
执行sudo grep -i pwquality /etc/pam.d/common-password,应返回类似以下内容:
password requisite pam_pwquality.so retry=3 minlen=12 difok=5

方法二:若无输出,说明模块未启用,需手动添加:
sudo sh -c 'echo "password requisite pam_pwquality.so retry=3 minlen=12 difok=5" >> /etc/pam.d/common-password'

⚠️重要提醒:不要直接替换原有pam_cracklib.so行,某些旧版镜像残留cracklib配置,两个模块共存会导致策略冲突甚至登录失败。

添加后执行sudo pam-auth-update --force确保所有PAM栈重新加载。

为特权账户单独加固密码生命周期

普通用户策略设好后,对root、admin等高权限账户还需叠加时间维度管控,防止长期不换密引发横向渗透风险。

第一步:锁定密码最短使用天数,避免用户频繁重置绕过复杂度检查
sudo chage -m 7 root

第二步:强制90天内必须更换密码
sudo chage -M 90 root

第三步:提前7天开始登录时弹出更换提醒
sudo chage -W 7 root

执行sudo chage -l root可查看当前所有设置是否已写入shadow数据库。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

XORM框架零基础入门教程
XORM框架零基础入门教程

本专题梳理XORM框架的入门路径,从框架定位、依赖安装、连接数据库到跑通第一个增删改查示例,讲清Engine初始化、日志开启与项目目录规划,并对比GORM等同类ORM的差异,帮助Go开发者建立整体认知。

2026.11.04

0

15

Docker Desktop怎么设置端口映射
Docker Desktop怎么设置端口映射

本专题聚焦Docker Desktop容器端口映射与访问配置,整理从创建容器、设置端口绑定到验证本地服务访问的操作流程。针对端口被占用、映射配置错误、容器服务无法访问等情况,也提供相应的检查方向,方便用户完成端口配置。

2026.11.03

20

18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习