Linux 中锁定和解锁用户帐户的三种方法

吾爱主题 阅读:106 2024-04-05 15:05:38 评论:0

如果你已经在你的组织中实施了某种密码策略,你无需看这篇文章了。但是在这种情况下,如果你给账户设置了 24 小时的锁定期,你需要手动解锁用户帐户。

本教程将帮助你在 Linux 中手动锁定和解锁用户帐户。

这可以通过三种方式使用以下两个 Linux 命令来完成。

passwd
usermod

为了说明这一点,我们选择 daygeek 用户帐户。让我们看看,怎么一步步来实现的。

请注意,你必须使用你需要锁定或解锁的用户的帐户,而不是我们的帐户。你可以使用 id 命令检查给定的用户帐户在系统中是否可用。是的,我的这个帐户在我的系统中是可用的。

?
1 2 # id daygeek uid=2240(daygeek) gid=2243(daygeek) groups =2243(daygeek),2244(ladmin)

方法1: 如何使用 passwd 命令锁定、解锁和检查 Linux 中给定用户帐户的状态?

passwd 命令是 Linux 管理员经常使用的命令之一。它用于更新 /etc/shadow 文件中用户的身份验证令牌。

使用 -l 开关运行 passwd 命令,锁定给定的用户帐户。

?
1 2 3 # passwd -l daygeek Locking password for user daygeek. passwd : Success

你可以通过 passwd 命令或从 /etc/shadow 文件中获取给定用户名来检查锁定的帐户状态。

使用 passwd 命令检查用户帐户锁定状态。

?
1 2 3 # passwd -S daygeek # passwd --status daygeek

daygeek LK 2019-05-30 7 90 7 -1 (Password locked.)

这将输出给定帐户密码状态的简短信息。

LK
NP
PS

使用 /etc/shadow 文件检查锁定的用户帐户状态。如果帐户已被锁定,密码前面将添加两个感叹号。

?
1 2 3 # grep daygeek /etc/shadow   daygeek:!!$6$tGvVUhEY$PIkpI43HPaEoRrNJSRpM3H0YWOsqTqXCxtER6rak5PMaAoyQohrXNB0YoFCmAuh406n8XOvBBldvMy9trmIV00

:18047:7:90:7:::

使用 -u 开关运行 passwd 命令,可以解锁给定的用户帐户。

?
1 2 3 # passwd -u daygeek Unlocking password for user daygeek. passwd : Success

方法2:如何使用 usermod 命令在 Linux 中锁定、解锁和检查给定用户帐户的状态?

usermod 命令也经常被 Linux 管理员使用。 usermod 命令用于修改/更新给定用户的帐户信息。它用于将用户添加到特定的组中,等等。

使用 -L 开关运行 usermod 命令,锁定给定的用户帐户。

?
1 2 3 # usermod --lock daygeek # usermod -L daygeek

你可以通过 passwd 命令或从 /etc/shadow 文件中获取给定用户名来检查锁定的帐户状态。

使用 passwd 命令检查用户帐户锁定状态。

?
1 2 3 4 # passwd -S daygeek # passwd --status daygeek daygeek LK 2019-05-30 7 90 7 -1 (Password locked.)

这将输出给定帐户密码状态的简短信息。

LK
NP
PS

使用 /etc/shadow 文件检查锁定的用户帐户状态。如果帐户已被锁定,密码前面将添加两个感叹号。

?
1 2 # grep daygeek /etc/shadow daygeek:!!$6$tGvVUhEY$PIkpI43HPaEoRrNJSRpM3H0YWOsqTqXCxtER6rak5PMaAoyQohrXNB0YoFCmAuh406n8XOvBBldvMy9trmIV00

:18047:7:90:7:::

使用 -U 开关运行 usermod 命令以解锁给定的用户帐户。

?
1 2 3 # usermod --unlock daygeek # usermod -U daygeek

方法-3:如何在 Linux 中使用 usermod 命令禁用、启用对给定用户帐户的 SSH 访问?

usermod 命令也是经常被 Linux 管理员使用的命令。 usermod 命令用于修改/更新给定用户的帐户信息。它用于将用户添加到特定的组中,等等。

替代的,锁定可以通过将 nologin shell 分配给给定用户来完成。为此,可以运行以下命令。

?
1 # usermod -s /sbin/nologin daygeek

你可以通过从 /etc/passwd 文件中给定用户名来检查锁定的用户帐户详细信息。

?
1 2 # grep daygeek /etc/passwd daygeek:x:2240:2243:: /home/daygeek : /sbin/nologin

我们可以通过分配回原来的 shell 来启用用户的 ssh 访问。

# usermod -s /bin/bash daygeek

如何使用 shell 脚本锁定、解锁和检查 Linux 中多个用户帐户的状态?

如果你想锁定/解锁多个帐户,那么你需要找个脚本。

是的,我们可以编写一个小的 shell 脚本来执行这个操作。为此,请使用以下 shell 脚本。

创建用户列表。每个用户信息在单独的行中。

$ cat user-lists.txt

u1
u2
u3
u4
u5

使用以下 shell 脚本锁定 Linux中 的多个用户帐户。

?
1 2 3 4 5 6 # user-lock.sh #!/bin/bash for user in ` cat user-lists.txt` do   passwd -l $user done

user-lock.sh 文件设置为可执行权限。

# chmod + user-lock.sh

最后运行脚本来达成目标。

# sh user-lock.sh

?
1 2 3 4 5 6 7 8 9 10 Locking password for user u1. passwd : Success Locking password for user u2. passwd : Success Locking password for user u3. passwd : Success Locking password for user u4. passwd : Success Locking password for user u5. passwd : Success

使用以下 shell 脚本检查锁定的用户帐户。

?
1 2 3 4 5 6 # vi user-lock-status.sh #!/bin/bash for user in ` cat user-lists.txt` do   passwd -S $user done

设置 user-lock-status.sh 可执行权限。

# chmod + user-lock-status.sh

最后运行脚本来达成目标。

?
1 2 3 4 5 6 # sh user-lock-status.sh u1 LK 2019-06-10 0 99999 7 -1 (Password locked.) u2 LK 2019-06-10 0 99999 7 -1 (Password locked.) u3 LK 2019-06-10 0 99999 7 -1 (Password locked.) u4 LK 2019-06-10 0 99999 7 -1 (Password locked.) u5 LK 2019-06-10 0 99999 7 -1 (Password locked.)

使用下面的 shell 脚本来解锁多个用户。

?
1 2 3 4 5 6 # user-unlock.sh #!/bin/bash for user in ` cat user-lists.txt` do   passwd -u $user done

设置 user-unlock.sh 可执行权限。

# chmod + user-unlock.sh

最后运行脚本来达成目标。

?
1 2 3 4 5 6 7 8 9 10 11 12 # sh user-unlock.sh   Unlocking password for user u1. passwd : Success Unlocking password for user u2. passwd : Success Unlocking password for user u3. passwd : Success Unlocking password for user u4. passwd : Success Unlocking password for user u5. passwd : Success

运行相同的 shell 脚本 user-lock-status.sh ,检查这些锁定的用户帐户在 Linux 中是否被解锁。

?
1 2 3 4 5 6 # sh user-lock-status.sh u1 PS 2019-06-10 0 99999 7 -1 (Password set , SHA512 crypt.) u2 PS 2019-06-10 0 99999 7 -1 (Password set , SHA512 crypt.) u3 PS 2019-06-10 0 99999 7 -1 (Password set , SHA512 crypt.) u4 PS 2019-06-10 0 99999 7 -1 (Password set , SHA512 crypt.) u5 PS 2019-06-10 0 99999 7 -1 (Password set , SHA512 crypt.)

总结

以上所述是小编给大家介绍的Linux 中锁定和解锁用户帐户的三种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://linux.cn/article-11043-1.html

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容