Linux-chpasswd 修改用户密码

chpasswd可以方便批量修改用户密码,下面介绍一下chpasswd如何使用。
首先简单介绍一下chpasswd的两种设置方式的原型

echo [username]:[passwd] |chpasswd
chpasswd [options] < passwd.txt

下面介绍一下文章要用的参数:

用户名: user
明文密码:12345678
密文密码:$1$NdDuH1w6$2y0tfgaKx25v84bK1YFOT/

0、linux查看密码

root@Xubuntu18:cat /etc/shadow
root:$6$5KdRSQdF$kEEMjx2jRuX54QmQnn.FG4/v7VRbLBVVls0LP1/phYBeH0DL7n.rN5iIIGh5IAK9dlR0vF3xEWGIRpfqfVoak0:18452:0:99999:7:::
ftp:$6$Bpln2jbJ$EWwGVaLNVPp3ARTMOB/oEkLiec9iznyiF8fHnMC.XijKDb6.wfc0MKuvNg5hDz21GZgEPXWJ28jyk3ItaQuuv/:18689:0:99999:7:::
ftpp:!:18689:0:99999:7:::

简单列举了3个用户的密码信息,第一个用户是root,是带密码的,第二个是ftp,也是有密码的,第三个是ftpp,后面带!,代表没有密码。

注意事项:
1、chpasswd命令修改密码只能在root用户下
2、修改的用户必须存在,否则无法设置密码,可以使用下面的命令添加:

useradd  username  //username 是要创建的用户名

1、明文直接设置

root@Xubuntu18: echo user:12345678|chpasswd

用查看密码信息的命令查看一下,已经修改成功

root@Xubuntu18:  cat /etc/shadow |grep user
user:$6$7PiIkAF2$hLerqFb0TS483JZwXPM9e1im2U7pgVlaTFtgNwp4lyJNXunp5xGgO8Rle53rBiPoiTQ6BVz7j9bwtO98hh.xw/:18689:0:99999:7:::

2、密文设置

密文可以通过openssl对明文进行加密,下面是对密码:12345678加密的例子:

root@Xubuntu18: openssl passwd -1 12345678
$1$NdDuH1w6$2y0tfgaKx25v84bK1YFOT/

第二行字符串是生成的密码密文,接下来用chpasswd命令修改密码,密码改成了密文,chpasswd后面需要加 -e的参数

root@Xubuntu18: echo user:$1$NdDuH1w6$2y0tfgaKx25v84bK1YFOT/|chpasswd -e

可以通过/etc/shadow 查看一下是否修改成功。

3、明文设置,指定加密方式

下面是通过-c指定加密的方式,加密方式包括:DES,MD5,NONE,SHA256,SHA512

root@Xubuntu18: echo user:12345678|chpasswd -c SHA512

可以自行修改加密方式的参数,查看/etc/shadow来对比差异

4、批量明文设置

将用户名密码写入文本文件中,例如passwd.txt,内容格式为:
username:password

例如:
user1:12345678
user2:12345678

然后用chpasswd命令进行密码设置,注意passwd.txt的路径。

root@Xubuntu18: chpasswd < /home/user/passwd.txt

5、批量密文设置

同明文一样,将用户名:密文添加到passwd.txt中,例如:
user1: 1 1 1NdDuH1w6$2y0tfgaKx25v84bK1YFOT/
user2: 1 1 1NdDuH1w6$2y0tfgaKx25v84bK1YFOT/
运用下面的命令进行密码设置,密文需要加 -e

root@Xubuntu18: chpasswd -e < /home/user/passwd.txt

以上就是学习到的关于chpasswd的5钟使用方法,欢迎大家评论区补充或提问,如果觉得有用,记得点赞收藏哟!!!

猜你喜欢

转载自blog.csdn.net/PRML_MAN/article/details/114325939