首页 / 资讯中心 / 文章详情

Linux 影子密码关闭详解:pwunconv 命令原理与实战(linux-command 项目)

Linux 影子密码关闭详解:pwunconv 命令原理与实战(linux-command 项目) ★ FEATURED ARTICLE
文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载导读本文围绕 linux-command 开源仓库中收录的pwunconv命令文档展开系统讲解 Linux 影子密码Shadow Password机制的由来、pwunconv的语法与真实运行效果并与pwconv、grpconv/grpunconv等成对命令及passwd、chage、useradd等周边命令串联成完整的用户密码管理知识体系。读完本文你将掌握在/etc/passwd与/etc/shadow之间迁移密码的完整操作流程、影子密码的核心安全价值以及关闭影子密码后如何验证与恢复系统认证体系。一、pwunconv 命令是什么pwunconv是 Linux 系统中用于**关闭用户投影密码影子密码**的命令其功能与pwconv恰好相反它会把密码从/etc/shadow文件中重新移回/etc/passwd文件里从而撤销影子密码机制。根据仓库文档 command/pwunconv.md 的定义pwunconv命令与 pwconv 功能相反用来关闭用户的投影密码。它会把密码从 shadow 文件内重回存到 passwd 文件里。语法非常简单pwunconv命令本身不需要任何选项和参数执行时通常需要root权限因为涉及对/etc/shadow和/etc/passwd两个系统认证文件的写操作。二、为什么会有影子密码pwconv 的背景要理解pwunconv的价值必须先理解它要关闭的投影密码机制为何存在。仓库文档 command/pwconv.md 给出了清晰的说明Linux 系统里的用户和群组密码分别存放在名称为 passwd 和 group 的文件中这两个文件位于/etc目录下。因系统运作所需任何人都得以读取它们造成安全上的破绽。投影密码将文件内的密码改存在/etc目录下的 shadow 和 gshadow 文件内只允许系统管理者读取同时把原密码置换为x字符有效的强化了系统的安全性。核心问题在于/etc/passwd文件因为系统运行需要如ls -l需要解析 UID 与用户名映射必须对所有人开放读取早期的 Unix 直接把加密后的密码哈希放在该文件的第二字段任何能读取该文件的用户都可以把哈希值抓下来做离线破解。影子密码机制的解决方案是加密密码哈希从/etc/passwd移到只有 root 可读的/etc/shadow/etc/passwd中的密码字段被替换为占位符x组密码同理从/etc/group移到/etc/gshadow对应grpconv参见 command/grpconv.md。三、pwunconv 实战完整关闭流程与验证仓库文档 command/pwunconv.md 给出了完整可复现的关闭流程我们逐条拆解并补充验证细节。3.1 执行关闭操作假设系统里已存在用户test且影子密码处于开启状态。执行pwunconv # 关闭影子密码命令执行后系统会更新/etc/passwd和/etc/shadow两个文件把/etc/shadow中的密码哈希回填到/etc/passwd的密码字段并删除或清空影子文件。3.2 验证一密码已回到 passwd 文件cat /etc/passwd | grep test # 发现密码已经在 passwd 文件中了 test:$6$nYOEWamm$bz07nlv/.RgJufb3FAqJJeULfwybzgxmrWqbk7O4vI0KsT6N.ujrh6dDIUcAJdfjksyuyAFDPIngZeD3cgcf.0:3001:3001::/home/test:/bin/sh可以看到/etc/passwd中test用户的密码字段不再是x占位符而是真实存在的密码哈希。这里哈希前缀$6$表明使用的是SHA-512 加密算法$1$为 MD5、$5$为 SHA-256、$6$为 SHA-512此外还有$y$表示 yescrypt 等更新算法。作为对照pwconv开启影子密码时同一用户在/etc/passwd中的表现是cat /etc/passwd | grep test test:x:3001:3001::/home/test:/bin/sh密码段显示为x而真实的哈希在/etc/shadow中cat /etc/shadow | grep test test:$6$nYOEWamm$bz07nlv/.RgJufb3FAqJJeULfwybzgxmrWqbk7O4vI0KsT6N.ujrh6dDIUcAJdfjksyuyAFDPIngZeD3cgcf.0:15022:0:99999:7:::3.3 验证二shadow 文件消失ls /etc/shadow # 查看影子文件提示没有这个文件或目录 ls: cannot access /etc/shadow: No such file or directory执行pwunconv后/etc/shadow文件不再存在。这也是判断影子密码是否关闭的最直观标志。四、pwunconv 与 pwconv 的完整对照命令作用密码去向passwd 密码字段shadow 文件状态pwconv开启影子密码从 passwd 移到 shadow变为x占位符存在仅 root 可读pwunconv关闭影子密码从 shadow 移回 passwd恢复为真实密码哈希被移除pwconv 方向test:x:3001:.../etc/shadow中的真实哈希参见 command/pwconv.md 的实例。pwunconv 方向test:$6$...直接在 passwd 中/etc/shadow不存在参见 command/pwunconv.md 的实例。五、成对的组密码命令grpconv 与 grpunconv影子密码机制不只针对用户同样适用于组。仓库中收录了对应的成对命令grpconv开启群组的投影密码把密码从/etc/group移到/etc/gshadow密码段以x替代见 command/grpconv.md。其实例groupmod --password 123456 cdy cat /etc/group | grep cdy cdy:123456:1000: # 密码明文显示在 group 文件中 grpconv cat /etc/group | grep cdy cdy:x:1000: # 密码段已经被 x 替代 cat /etc/gshadow | grep cdy cdy:123456:: # 密码已移到影子文件注意gshadow、shadow只有 root 权限才可以查看。grpunconv关闭群组的投影密码把密码从gshadow回存到group文件里见 command/grpunconv.md。其实例cat /etc/gshadow | grep cdy cdy:123456:: grpunconv # 关闭群组影子密码 cat /etc/gshadow cat: /etc/gshadow: 没有那个文件或目录 cat /etc/group | grep cdy cdy:123456:1000: # 密码已复制回 /etc/group可以看到grpunconv与pwunconv的机制完全同构把密码从影子文件回写到明文文件并移除影子文件。六、围绕影子密码的周边命令与文件体系pwunconv不是孤立存在的命令它与整个用户/组认证体系密切相关。仓库中同时收录了这些命令的完整文档可相互印证6.1 认证相关的四个核心文件根据 command/passwd.md 的知识扩展与用户、组账户信息相关的文件为存放用户信息/etc/passwd、/etc/shadow存放组信息/etc/group、/etc/gshadow/etc/passwd每项用:隔开例如jack:X:503:504:::/home/jack/:/bin/bash含义依次为用户名、口令密码、用户 ID0 代表 root普通新建用户通常从 500 开始、所在组、描述、用户主目录、用户缺省 Shell。pwunconv所做的就是让口令这一字段从影子文件恢复为真实值。6.2 passwd密码的日常管理入口普通用户执行passwd只能修改自己的密码管理员可用passwd 用户名为指定用户设置或修改密码支持-d删除密码、-l锁定密码、-u解锁、-S查看密码状态等选项详见 command/passwd.md注意清除用户密码后登录时无需密码即可进入存在安全风险。6.3 chage密码有效期策略chage用于修改帐号和密码的有效期限常用选项包括-M密码最大有效天数、-m最小可更改天数、-w过期前警告天数、-I过期后停滞天数、-E帐号到期日期、-l列出当前设置详见 command/chage.md。这些字段正是/etc/shadow中冒号分隔的第 38 个字段与影子密码文件结构深度绑定。6.4 其他配套命令useradd创建新用户密码默认是禁用的需配合passwd设置-p可传入crypt(3)返回的加密密码相关文件包括/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/etc/default/useradd、/etc/login.defs等详见 command/useradd.mdgroupmod修改组定义GID、组名、组成员、组密码-p选项可设置组密码密文直接作用于/etc/group与/etc/gshadow详见 command/groupmod.mdgpasswd工作组文件管理工具管理/etc/group和/etc/gshadow支持-a添加用户到组、-A指定管理员、-r删除组密码等选项详见 command/gpasswd.mdpwck验证/etc/passwd和/etc/shadow内容与格式的完整性-q仅报告错误、-s按 UID 排序、-r只读运行详见 command/pwck.md。执行pwunconv或pwconv之后用pwck做一次一致性校验是良好的运维习惯。七、实战注意事项权限要求pwunconv需要root权限执行因为它要改写系统认证文件普通用户执行会因权限不足而失败。安全权衡关闭影子密码会把密码哈希写回人人可读的/etc/passwd相当于放弃了影子密码机制带来的安全隔离仅在明确了解风险的前提下使用例如老系统迁移、某些第三方工具需要明文密码字段等场景。操作后可验证执行后用grep检查/etc/passwd中密码字段是否为真实哈希并用ls /etc/shadow确认影子文件是否已移除与本文实例中的输出对照即可。组密码同理如果同时需要关闭组影子密码对应执行grpunconv开启则用grpconv。整个体系以用户 ↔ passwd/shadow、组 ↔ group/gshadow两条线成对出现。完整性校验操作前后可执行pwck验证认证文件格式完整避免因文件损坏导致系统无法登录。结语pwunconv是影子密码体系中的反向开关与pwconv、grpconv、grpunconv共同构成了 Linux 密码存储位置迁移的完整工具集。理解它就是理解/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow四个认证文件之间的关系与安全设计初衷。相关命令的完整说明与更多实例可继续查阅仓库中 command/pwconv.md、command/grpconv.md、command/grpunconv.md、command/passwd.md、command/chage.md 等文档。赞分享文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载相关推荐linux-command 命令详解grpunconv 关闭群组投影密码的原理与实战linux command 命令详解grpunconv 关闭群组投影密码的原理与实战 grpunconv 是 Linux 影子密码体系shadow pass文档教程linux-command 手册精读Linux swapoff 命令详解与交换空间关闭实战linux command 手册精读Linux swapoff 命令详解与交换空间关闭实战 本文以 linux command 仓库中的 swapoff 手册文档教程grpconv 命令详解Linux 群组投影密码影子密码实战指南grpconv 命令详解Linux 群组投影密码影子密码实战指南 grpconv 是 Linux 系统安全管理中的关键命令用于开启群组投影密码影子密码文档教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站