0

0

Linux如何设计安全的密码策略_Linux密码复杂度配置

舞夢輝影

舞夢輝影

发布时间:2025-11-30 19:19:18

|

712人浏览过

|

来源于php中文网

原创

Linux系统通过配置pam_pwquality模块、/etc/login.defs文件及chage命令,实现密码复杂度、生命周期和历史记录的全面管控,提升账户安全性。

linux如何设计安全的密码策略_linux密码复杂度配置

Linux系统的安全始于用户认证,而密码作为最常用的认证方式,其强度直接影响系统整体安全性。设置合理的密码策略能有效防止弱口令、暴力破解等攻击。通过配置PAM(Pluggable Authentication Modules)模块和相关系统文件,可以实现对密码复杂度的精细控制。

启用密码复杂度检查(pam_pwquality)

现代Linux发行版(如CentOS 7+、Ubuntu 18.04+)使用 pam_pwquality 模块替代旧的 pam_cracklib,用于评估密码强度。

编辑配置文件/etc/pam.d/system-auth/etc/pam.d/common-password,确保包含以下行:

password requisite pam_pwquality.so retry=3 minlen=10 difok=3

常用参数说明:

  • minlen=10:密码最小长度为10位
  • difok=3:新密码至少包含3个与旧密码不同的字符
  • lcredit=-1:至少包含1个小写字母
  • ucredit=-1:至少包含1个大写字母
  • dcredit=-1:至少包含1个数字
  • ocredit=-1:至少包含1个特殊符号
  • retry=3:输错密码最多重试3次

这些规则可组合使用,例如:

password requisite pam_pwquality.so minlen=10 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 difok=3 retry=3

配置全局密码策略(login.defs)

/etc/login.defs 文件定义了用户创建时的默认密码策略,主要影响 useradd 等命令。

  • PASS_MAX_DAYS 90:密码最长有效期90天
  • PASS_MIN_DAYS 7:密码修改最小间隔7天(防频繁更换)
  • PASS_MIN_LEN 10:密码最小长度(注意:该值不强制复杂度,仅作提示)
  • PASS_WARN_AGE 7:密码过期前7天开始提醒用户

修改后对新用户生效,已有用户需使用 chage 命令单独调整。

EasySub – AI字幕生成翻译工具
EasySub – AI字幕生成翻译工具

EasySub 是一款在线 AI 字幕生成器。 它提供AI语音识别、AI字幕生成、AI字幕翻译,本来就很简单的视频剪辑。

下载

强制用户遵守策略(chage 与 passwd)

使用 chage 命令管理用户密码过期信息:

chage -M 90 -m 7 -W 7 username   # 设置最大90天,最小7天,警告期7天
chage -l username                 # 查看用户密码策略详情

使用 passwd 命令强制用户下次登录修改密码:

passwd -e username  # 密码立即过期,登录时必须更改

阻止重复使用旧密码

防止用户循环使用旧密码,可在 pam_pwquality 中添加:

password sufficient pam_unix.so use_authtok nullok sha512 remember=5

其中 remember=5 表示禁止使用最近5次用过的密码。历史记录保存在 /etc/security/opasswd 文件中。

合理配置密码策略是Linux系统安全的基础措施。结合 pam_pwquality 的复杂度要求、login.defs 的生命周期管理以及密码历史限制,能显著提升账户安全性。定期审计用户密码状态,配合强身份验证(如双因素认证),可构建更可靠的防护体系。基本上就这些。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1349

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

702

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

776

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

572

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

545

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

297

2023.07.20

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

380

2023.07.25

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

43

2026.01.16

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.3万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号