如何秒速登录SSH/串口终端?

标准方法:使用 passwd 命令

适用场景:系统已安装 passwd 工具(BusyBox或完整Linux环境)。

passwd root
# 3. 按提示输入两次新密码
Enter new password: ******
Retype new password: ******

关键提示

  • 普通用户仅能修改自身密码,root用户可修改任意账户密码(如 passwd username)。
  • 密码需满足强度规则(长度、字符组合),否则可能报错 BAD PASSWORD

手动编辑密码文件(无passwd工具时)

适用场景passwd命令不可用或需脚本批量操作。

步骤

  1. 生成加密密码
    在PC端使用 opensslmkpasswd 生成SHA-512加密字符串(嵌入式设备可能无此工具):

    openssl passwd -6 -salt $(openssl rand -base64 6) your_password
    # 输出示例:$6$salt$encrypted_string
  2. 修改 /etc/shadow 文件

    • 挂载文件系统为可写(若只读):
      mount -o remount,rw /
    • 编辑 /etc/shadow,找到目标行(如 root:旧密码字段:...),替换加密字符串:
      vi /etc/shadow
      # 将root行第二个字段改为生成的加密串
      root:$6$salt$encrypted_string:19450:0:99999:7:::
  3. 恢复只读挂载(如适用):

    mount -o remount,ro /

特殊场景处理

  1. 只读文件系统

    • 临时挂载可写:mount -o remount,rw /
    • 修改后还原:mount -o remount,ro /
    • 若需永久修改,需调整启动脚本中的挂载参数。
  2. BusyBox环境简化操作
    BusyBox的 passwd 可能无交互提示,直接指定密码:

    echo -e "new_password\nnew_password" | passwd root
  3. 恢复出厂默认密码
    查找系统重置脚本(通常为 /bin/factory-reset)或重新烧录包含默认配置的固件。


安全与验证

  1. 密码强度要求

    • 长度≥8字符,混合大小写、数字及符号。
    • 避免常见词汇(如 admin/123456)。
  2. 修改后验证

    su - username  # 切换用户测试新密码
  3. 文件权限检查
    确保 /etc/shadow 权限为 640,属主 root:root

    chmod 640 /etc/shadow
    chown root:root /etc/shadow

故障排除

  • 报错:passwd: Authentication token manipulation error
    原因:文件系统只读或磁盘满。
    解决:mount -o remount,rw / 并检查空间(df -h)。

  • 报错:passwd: System error
    原因:/etc/shadow 权限异常。
    解决:恢复权限 chmod 640 /etc/shadow

  • 密码未生效
    原因:加密算法不匹配(如MD5 vs SHA-512)。
    解决:确认生成密码时指定算法(-6 为SHA-512)。


嵌入式Linux修改密码的核心是:

  1. 优先使用 passwd 命令(安全可靠)。
  2. 手动编辑 /etc/shadow 仅作为备用方案,需严格注意加密算法和权限。
  3. 在只读文件系统中,需先解除挂载保护。

引用说明:本文方法参考Linux标准文档(man 5 shadow)、BusyBox官方手册及嵌入式系统安全实践,操作涉及系统关键文件,建议在测试环境验证后实施。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9848.html

(0)
酷番叔酷番叔
上一篇 2025年8月7日 09:08
下一篇 2025年8月7日 09:33

相关推荐

  • 如何拷贝文件到Linux系统?命令行与图形化工具使用方法?

    拷贝文件到Linux系统是日常运维和开发中的常见操作,根据文件大小、网络环境、安全需求等不同场景,可选择多种方法,以下是几种主流方式的详细说明及操作步骤,本地拷贝:使用cp命令当文件已在Linux本地或可挂载的存储设备(如U盘)中时,cp是最基础的拷贝工具,基本语法:cp [选项] 源文件 目标路径常用选项……

    2025年9月26日
    10600
  • linux如何开启路由转发功能

    Linux中,可通过执行命令echo 1 ˃ /proc/sys/net/ipv4/ip_forward开启路由转发功能,使系统能转发

    2025年8月17日
    10100
  • Linux系统查看报错信息的常用方法及命令有哪些?

    在Linux系统中,查看系统报错是排查故障的关键步骤,Linux通过日志文件和命令行工具提供了多种报错查看方式,帮助用户定位问题根源,了解常见的日志文件存储位置是基础,Linux系统日志通常位于/var/log目录下,不同类型的日志会被分类存储:/var/log/syslog或/var/log/messages……

    2025年9月26日
    10100
  • linux下如何重启网络连接网络连接网络

    Linux 下,可通过执行 sudo systemctl restart network 或 `sudo /etc/init.

    2025年8月15日
    10500
  • Linux内存寻址的核心机制与实现流程是怎样的?

    Linux系统的寻址机制是其内存管理的核心,通过虚拟内存技术实现了对物理内存的高效、安全调度,这一过程涉及物理地址、虚拟地址、内存管理单元(MMU)以及页表等多个关键组件的协同工作,下面将从基础概念到具体实现逐步解析Linux的寻址原理,物理地址与虚拟地址:寻址的基础物理地址是内存硬件的实际地址,由内存控制器直……

    2025年9月16日
    10600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信