【Linux】用户的锁定和解锁-passwd的特殊用法

2021/4/14 7:31:06

本文主要是介绍【Linux】用户的锁定和解锁-passwd的特殊用法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!


文章目录

    • a. 加锁测试
    • b. 解锁测试
    • 前言
    • 查看帮助
    • passwd的用户锁定和解锁
    • 标准输入读取密码
    • 总结


前言

前面我们已经介绍过了passwd的使用,今天我们再来看一些特殊的用法

查看帮助

[root@zmedu-17 ~]# passwd --help用法: passwd [选项...] <帐号名称>
  -k, --keep-tokens       保持身份验证令牌不过期
  -d, --delete            删除已命名帐号的密码(只有根用户才能进行此操作)
  -l, --lock              锁定指名帐户的密码(仅限 root 用户)
  -u, --unlock            解锁指名账户的密码(仅限 root 用户)
  -e, --expire            终止指名帐户的密码(仅限 root 用户)
  -f, --force             强制执行操作
  -x, --maximum=DAYS      密码的最长有效时限(只有根用户才能进行此操作)
  -n, --minimum=DAYS      密码的最短有效时限(只有根用户才能进行此操作)
  -w, --warning=DAYS      在密码过期前多少天开始提醒用户(只有根用户才能进行此操作)
  -i, --inactive=DAYS     当密码过期后经过多少天该帐号会被禁用(只有根用户才能进行此操作)
  -S, --status            报告已命名帐号的密码状态(只有根用户才能进行此操作)
  --stdin                 从标准输入读取令牌(只有根用户才能进行此操作)

passwd的用户锁定和解锁

  • -l, --lock 锁定指名帐户的密码(仅限 root 用户)
  • -u, --unlock 解锁指名账户的密码(仅限 root 用户)
[root@zmedu-17 ~]# grep gaosh3 /etc/shadowgaosh3:$6$7FI9qn7O$QCnn/3PBZ/wA7n3WVV5cWp.BX4lzVmtlrdogfqUpySuz/kNUbKAVQ7T.AGWPhu1ta0SPO5guEFtdja/FOn68s0:18477:7:60:7:::[root@zmedu-17 ~]#

a. 加锁测试

我们来锁定之后查看与上面有何异同

[root@zmedu-17 ~]# passwd -l gaosh3锁定用户 gaosh3 的密码 。
passwd: 操作成功[root@zmedu-17 ~]# grep gaosh3 /etc/shadowgaosh3:!!$6$7FI9qn7O$QCnn/3PBZ/wA7n3WVV5cWp.BX4lzVmtlrdogfqUpySuz/kNUbKAVQ7T.AGWPhu1ta0SPO5guEFtdja/FOn68s0:18477:7:60:7:::[root@zmedu-17 ~]#

可以看到在密码前面多了两个感叹号,这就表示锁定了gaosh3d 密码

测试

[root@zmedu-17 ~]# su - gaosh1[gaosh1@zmedu-17 ~]$ su - gaosh3
密码:
su: 鉴定故障

发现无法登陆,我们来解锁一下

b. 解锁测试
[root@zmedu-17 ~]# passwd -u gaosh3解锁用户 gaosh3 的密码。
passwd: 操作成功[root@zmedu-17 ~]# [root@zmedu-17 ~]# su - gaosh1上一次登录:一 8月  3 16:00:27 CST 2020pts/2 上[gaosh1@zmedu-17 ~]$ su - gaosh3
密码:
上一次登录:一 8月  3 15:32:59 CST 2020pts/2 上
最后一次失败的登录:一 8月  3 16:00:45 CST 2020pts/2 上
最有一次成功登录后有 1 次失败的登录尝试。[gaosh3@zmedu-17 ~]$ whoamigaosh3

可以看到已经能够成功登陆了。

标准输入读取密码

在shell脚本中我们想给一个用户设置密码,肯定不用使用passwd,然后交互输入密码。
passwd给提供了一种方法,使用 --stdin

–stdin 从标准输入读取令牌(只有根用户才能进行此操作)

[root@zmedu-17 ~]# echo 12345678 |passwd --stdin  gaosh3更改用户 gaosh3 的密码 。
passwd:所有的身份验证令牌已经成功更新。

总结

passwd和chage命令,两个命令相互补充,能够实现很多功能。



这篇关于【Linux】用户的锁定和解锁-passwd的特殊用法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程