【Linux实践室】Linux用户管理实战指南:用户密码管理操作详解

CSDN 2024-06-12 14:37:02 阅读 82

在这里插入图片描述

🌈个人主页:聆风吟_

🔥系列专栏:Linux实践室、网络奇遇记

🔖少年有梦不应止于心动,更要付诸行动。


文章目录

一. ⛳️任务描述二. ⛳️相关知识2.1 🔔用户密码存放地及方式2.2 🔔使用passwd命令修改用户密码2.2.1 知识点讲解2.2.2 案例演示 2.3 🔔使用chpasswd命令修改用户密码2.3.1 知识点讲解2.3.2 案例演示 三. ⛳️编程要求四. ⛳️编程解答📝全文总结

一. ⛳️任务描述

恭喜你已经完成了前面的内容,现在你已经学会了如何创建一个新用户和删除一个已经存在的用户,接下来,我们一起学习为新创建的用户设置登录密码。

本关的任务是新创建一个用户,并设置登录密码。


二. ⛳️相关知识

为了完成本节任务,你需要掌握如下知识:

Linux中用户登录密码存放地以及方式怎么使用 passwd命令修改用户密码怎么使用 chpasswd命令修改用户密码

2.1 🔔用户密码存放地及方式

Linux中用户的登录密码是存放在/etc/shadow文件中,/etc/shadow文件中存放的是加密过后的密码,所以在/etc/shadow文件中看到的密码是加密过后的密文。

看下笔者的电脑中/etc/shadow文件存放的内容格式。

在这里插入图片描述

可以看到第一个冒号前是用户,用户名是以明文的方式存放。

在第一个冒号和第二个冒号之间存放的是加密过后的密码,密码是以密文的方式存放,其中密文是由用户密码和其它信息加密后组成的,这里不做详细讲解,我们只需要知道如果第一个冒号和第二个冒号之间是*或者!或者空,则表示该用户没有密码,否则,则表示该用户是有密码。

例如:用户名fzm是存在密码,而mysql是不存在密码的。


2.2 🔔使用passwd命令修改用户密码

2.2.1 知识点讲解

命令格式:

passwd [命令参数] 参数

常见命令参数:

参数 说明
-d 删除密码
-l 停止账号使用
-S 显示密码信息

passwd必须以root权限才能执行,如果是普通用户想执行passwd时,需要在命令前加sudo命令来提升权限为root权限。

2.2.2 案例演示

1 . 使用useradd命令来新创建一个用户,使用passwd命令来设置登录密码。

在这里插入图片描述

使用useradd命令创建一个新用户(test),此时test用户是没有密码的,所以使用tail -n 1 /etc/shadow命令查看/etc/shadow文件的最后一行可以看出test用户密码部分为!

使用passwd命令为test用户设置密码时,可以看到需要输入两次密码,目的是为了确保两次输入的密码一致。当设置完密码后,可以看到/etc/shadow文件中test用户的密码部分已经为加密过后的密文。

2 . 使用passwd命令来清除用户的密码。

在这里插入图片描述

使用passwd命令清除用户test的登录密码,使用tail -n 1 /etc/shadow命令查看/etc/shadow文件的最后一行可以看出test用户密码部分为空,此时test用户是没有密码的。


2.3 🔔使用chpasswd命令修改用户密码

2.3.1 知识点讲解

chpasswd命令通常是用于批量修改用户密码,从标准输入批量读取成对的用户名和密码,其中输入的用户名和密码的格式为用户名:密码

例如要批量更新用户密码,将用户名和密码写入到一个文件中,格式如下所示:

在这里插入图片描述

然后执行执行如下命令来更新密码:

sudo chpasswd < batch.txt

<符号表示输入重定向,接下来的实训中我们会详细的介绍。

命令格式:

chpasswd [命令参数] 参数

常见命令参数:

参数 说明
-e 输入的密码是加密后的密文
-h 显示帮助信息并退出

chpasswd必须以root权限才能执行,如果是普通用户执行时,需要在命令前加sudo命令来提升权限为root权限。

2.3.2 案例演示

1 . 使用chpasswd命令来更新用户登录密码。

在这里插入图片描述

chpasswd是从键盘不断的读入指令,我们可以使用Ctrl+D组合键来结束键盘输入。


三. ⛳️编程要求

本节的任务具体如下:

新创建一个用户newUser;使用passwd命令为用户newUser设置登录密码;

四. ⛳️编程解答

#!/bin/bash#创建newUser新用户#***********begin*************#useradd newUser#************end**************##在符号<<前输入设置用户密码的命令(命令与<< EOF保持在同一行), 密码输入在下一行,确认密码输入在下下行#例如:#command << EOF#password#password#EOF#***********begin*************#passwd newUser << EOF123123EOF#************end**************#


📝全文总结

本文主要讲解 Linux 的用户密码管理的两个命令:

passwd:修改用户密码chpasswd:批量修改用户密码。

今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。