尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Linux 批量改密码神器:chpasswd 命令详解,批量重置用户密码超高效
1. 命令简介chpasswd 是一个用于批量更新用户口令密码的 Linux 系统管理工具。它通过标准输入或重定向文件读取 “用户名密码” 格式的数据并批量更新系统中相应用户的密码。该命令通常需要超级用户root权限执行因为它会直接修改系统的用户认证文件如 /etc/shadow。2. 语法格式bash运行chpasswd [选项]工作原理chpasswd 默认从标准输入stdin读取数据。数据的每一行必须符合 用户名密码 的格式。命令执行后它会使用系统默认的加密算法通常为 SHA-512 或 MD5取决于系统配置对密码进行加密然后将加密后的密码哈希值写入 /etc/shadow 文件中相应用户的条目。3. 常用选项及说明表格选项说明-e, --encrypted指示输入的密码已经是加密后的密文哈希值。使用此选项时chpasswd 会直接将提供的密文写入 /etc/shadow 文件而不再进行加密。警告 必须确保提供的密文格式与 /etc/shadow 文件要求的完全一致例如以idsalthashed 格式开头的 SHA-512 密文。-h, --help显示此命令的帮助信息并退出。-m, --md5当系统支持的密码加密方式不是 MD5 时使用此选项可以强制使用 MD5 算法对输入的明文密码进行加密。在较老的系统或特定配置下可能有用。-c, --crypt-method METHOD指定加密方法。METHOD 可以是 DES, MD5, SHA256, SHA512 等。这允许管理员覆盖系统的默认加密算法。-R, --root CHROOT_DIR在指定的 CHROOT_DIR 目录中应用更改即操作 CHROOT_DIR/etc/shadow 文件而不是主机本身的 /etc/shadow。用于 chroot 环境或恢复模式。4. 示例用法1. 基础用法通过重定向文件批量修改密码首先创建一个文本文件例如 user_passwords.txt其中每行包含一个用户名和其新密码格式为 username:password。bash运行# 创建密码文件 cat user_passwords.txt EOF alice:newAlicePass123 bob:secureBobPss charlie:charlie2024! EOF # 使用 root 权限执行 chpasswd 批量更新密码 sudo chpasswd user_passwords.txt执行后用户 alice、bob 和 charlie 的密码将被分别更新。2. 使用管道echo 或 cat传递密码bash运行# 单用户更新 echo alice:AnotherNewPass | sudo chpasswd # 多用户更新 cat EOF | sudo chpasswd david:davidPass eve:eveSecret EOF3. 使用加密后的密码-e 选项此方法适用于需要同步密码哈希或从备份中恢复的场景。bash运行# 假设已有一个 SHA-512 加密的密码哈希可从 /etc/shadow 中获取或使用 openssl 生成 # 格式例如$6$somesalt$V2X8bZzBq.../Q9 echo alice:\$6\$somesalt\$V2X8bZzBq.../Q9 | sudo chpasswd -e4. 指定加密方法-c 选项强制使用 SHA-256 加密算法为新密码进行哈希。bash运行echo frank:myFrankPass | sudo chpasswd -c SHA2565. 注意事项权限要求执行 chpasswd 命令通常需要 root 权限使用 sudo因为它直接修改 /etc/shadow 文件该文件普通用户无权写入。密码格式文件密码文件必须严格遵守 用户名密码 的格式冒号为英文冒号。用户名必须是系统中已存在的有效用户。密码可以是明文。出于安全考虑建议在脚本中即时生成文件并立即使用使用后立即删除密码文件。文件中不应包含多余的空格或空行。安全性警告避免在命令行历史中留下密码类似 echo user:pass | chpasswd 的命令可能会将明文密码记录在 shell 历史记录中。在生产环境中更安全的做法是使用临时文件并设置严格权限或从安全存储中读取。谨慎使用 -e 选项只有在你完全清楚提供的哈希值来源、算法和格式都正确时才使用 -e 选项。错误的哈希值会导致用户无法登录。密码策略chpasswd 本身不强制系统的密码复杂度策略如长度、字符类型。密码是否被接受取决于系统的 PAM可插拔认证模块配置。如果密码过于简单可能会被系统拒绝。加密算法现代 Linux 发行版默认使用 SHA-512。使用 -m 或 -c 指定其他算法时需确认系统支持该算法并且了解其安全性差异例如DES 和 MD5 已被认为不够安全。验证结果批量操作后建议抽查几个用户使用 su - username 或 ssh 测试新密码是否能成功登录以确保更新无误。
RELATED

相关推荐

学术论文翻译与格式规范全攻略:从语言转换到期刊投稿的完整指南

学术论文翻译与格式规范全攻略:从语言转换到期刊投稿的完整指南

1. 项目概述:从“翻译”到“学术转译”的认知升级“英文期刊论文翻译格式要求和文献要求”——这个标题乍一看,似乎指向一个简单的语言转换任务。但作为一名在学术出版领域摸爬滚打了十多年的“老油条”,我必须告诉你,这背后远不止…

📅 2026/9/9 3:35:15
Spring Boot 入门指南:从零开始构建 Java Web 应用

Spring Boot 入门指南:从零开始构建 Java Web 应用

1. Spring Boot 简介 Spring Boot 是 Spring 框架的一个子项目,旨在简化 Spring 应用的初始搭建和开发过程。它通过自动配置、起步依赖和嵌入式服务器等特性,让开发者能够快速创建独立运行、生产级别的 Spring 应用。 2. Spring Boot 的核心特性 自动…

📅 2026/9/9 14:19:26
PyTorch 深度学习笔记(四)张量运算与变形——数值计算与索引进阶

PyTorch 深度学习笔记(四)张量运算与变形——数值计算与索引进阶

系列导读:本系列共 6 篇,从 PyTorch 框架入门到实战案例,带你系统掌握深度学习开发。上一篇:PyTorch 张量基础——从零开始掌握 Tensor 一、张量数值计算 1.1 点乘运算(Hadamard 积) 点乘是元素级乘积&am…

📅 2026/9/9 5:25:10
MORE NEWS

更多资讯

📰

自适应模糊滑模控制器设计与MATLAB仿真

简介:面向自动控制与智能控制领域的 MATLAB 自适应模糊滑模控制器(AFSMC)设计代码包,适合研究非线性、参数不确定系统的鲁棒控制问题,也适用于相关课程设计与论文实验。压缩包内含 4 个文件,包括 3 个 m 源…

📰

NetBox Custom Fields 深度指南:用自定义字段扩展内置数据模型

后端网络数据建模 【免费下载链接】netbox The premier source of truth powering network automation. Open source under Apache 2. Try NetBox Cloud free: https://netboxlabs.com/products/free-netbox-cloud/ 项目地址: https://gitcode.com/gh_mirrors/ne/ne…

📰

iCloud 云同步 Provider 深入解析:Readest 第五大云同步后端的架构、签名与落地实践

桌面应用跨平台前端 【免费下载链接】readest Readest is a modern, feature-rich ebook reader designed for avid readers offering seamless cross-platform access, powerful tools, and an intuitive interface to elevate your reading experience. 项目地址:…

📰

PixiEditor 跨平台渲染实战拆解:Skia + Avalonia + Drawie

PixiEditor 跨平台渲染实战拆解:Skia Avalonia Drawie 【免费下载链接】PixiEditor PixiEditor is a Universal Editor for all your 2D needs 项目地址: https://gitcode.com/GitHub_Trending/pi/PixiEditor PixiEditor 是一个基于 .NET 7 的轻量级像素艺…

📰

Spark Connect 开发者指南:连接字符串协议、Proto 消息演进与客户端代码生成

Spark Connect 开发者指南:连接字符串协议、Proto 消息演进与客户端代码生成 【免费下载链接】spark Apache Spark - A unified analytics engine for large-scale data processing 项目地址: https://gitcode.com/gh_mirrors/sp/spark 导读 本文基于 Apach…

📰

DeepSeek与豆包API 429限流实战:指数退避重试代码与生产级封装

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬