0

0

Linux 用户密码策略高级配置

舞姬之光

舞姬之光

发布时间:2026-02-16 16:51:10

|

382人浏览过

|

来源于php中文网

原创

应改用 pam_pwquality.so 替代 pam_cracklib.so,因其是官方继任者,支持 unicode 和自定义字典;需更新 pam 配置行并注意参数兼容性、minlen/minclass 实际校验逻辑、conf 文件仅作默认值、debug 调试及 enforce_for_root 显式启用等关键细节。

linux 用户密码策略高级配置

如何用 pam_pwquality.so 替代过时的 pam_cracklib.so

新版 Linux(如 RHEL 8+/CentOS 8+、Ubuntu 20.04+)默认已弃用 pam_cracklib.so,继续在 /etc/pam.d/common-password/etc/pam.d/system-auth 里写它会导致策略不生效,甚至密码修改失败。

必须改用 pam_pwquality.so —— 它是 pam_cracklib 的继任者,配置项更细、校验更严格,且支持 Unicode 和自定义字典。

  • 检查是否已安装:dpkg -l libpam-pwquality(Debian/Ubuntu)或 rpm -q libpwquality(RHEL/CentOS)
  • 替换原配置行:password requisite pam_cracklib.so ... → 改为 password requisite pam_pwquality.so ...
  • 注意:旧参数名大多失效,比如 minlen 要换成 minlen=12,但 retry 仍可用,ucredit/lcredit 等保持兼容

minlenminclass 的真实约束力

minlen 不是“最少字符数”,而是“满足复杂度要求后的最低长度”;minclass 控制至少要包含几类字符(大写、小写、数字、符号),但它只对“非空格可打印字符”计数,空格、制表符、控制字符全被忽略。

Shopxp购物系统Html版
Shopxp购物系统Html版

一个经过完善设计的经典网上购物系统,适用于各种服务器环境的高效网上购物系统解决方案,shopxp购物系统Html版是我们首次推出的免费购物系统源码,完整可用。我们的系统是免费的不需要购买,该系统经过全面测试完整可用,如果碰到问题,先检查一下本地的配置或到官方网站提交问题求助。 网站管理地址:http://你的网址/admin/login.asp 用户名:admin 密 码:admin 提示:如果您

下载
  • minlen=10 minclass=3,密码 Abc123! (末尾三个空格)实际只按 7 个有效字符校验,会失败
  • 若用户输入含 Unicode 字符(如中文、emoji),pam_pwquality 默认不识别为“字母类”,可能意外降低 class 计数 —— 需显式加 dictcheck=0 关闭字典检查,或用 enforce_for_root 避免干扰 root
  • 想让空格也被纳入长度计算?不行。模块本身跳过空白符,这是硬编码行为,无法绕过

为什么改了 /etc/security/pwquality.conf 却没生效

这个文件只是全局默认值,真正起作用的是 PAM 配置中 pam_pwquality.so 行的参数 —— 后者会覆盖前者。常见误区是只调 pwquality.conf,却忘了检查 PAM 文件里有没有重复或冲突的参数。

  • PAM 行中显式写的参数(如 minlen=14)优先级 > /etc/security/pwquality.conf 中的同名项
  • pwquality.conf 里设置 maxrepeat=2,但 PAM 行没写,那该限制就无效 —— 模块不会自动读取 conf 文件,除非你加 config=/etc/security/pwquality.conf
  • 调试方法:临时加 debug 参数到 PAM 行,然后 tail -f /var/log/auth.log 看拒绝原因,比如出现 too short 还是 not enough classes

root 用户密码不受限?小心 enforce_for_root 的默认值

默认情况下,pam_pwquality.so 对 root 用户完全不执行任何检查 —— 即便你配了 minlen=20,root 仍能设 123。这不是 bug,是设计如此,为避免系统锁死。

  • 必须显式添加 enforce_for_root 才启用 root 密码策略
  • 但加了之后,root 自己改密、或通过 sudo passwd root 改密都会受控;而首次安装或 recovery 模式下用 passwd 直接改,仍可能绕过(取决于 initramfs 是否加载 PAM)
  • 生产环境建议启用,但务必提前测试:用普通用户 sudo passwd root 验证策略是否真生效,别只信文档

最易被忽略的点:PAM 配置分散在多个文件(common-passwordsystem-auth、甚至 passwd),改错一个就全白搭;还有 SELinux 可能拦截 pam_pwquality 读取字典路径,报错信息里藏的是 Permission denied,不是策略问题。

相关文章

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

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

624

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

21

2025.12.06

磁盘配额是什么
磁盘配额是什么

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

1520

2023.06.21

如何安装LINUX
如何安装LINUX

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

714

2023.06.29

linux find
linux find

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

300

2023.06.30

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

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

791

2023.07.05

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

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

584

2023.07.06

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

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

560

2023.07.20

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

145

2026.02.13

热门下载

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

精品课程

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

共48课时 | 9.2万人学习

Git 教程
Git 教程

共21课时 | 3.7万人学习

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

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