如何在Linux中锁定(禁用)用户帐户

时间:2020-03-05 15:32:51  来源:igfitidea点击:

Linux系统允许我们锁定或者禁用对特定用户帐户的访问,而无需更改帐户的任何内容。
如果我们不想永久删除用户帐户,这可能是有用的,但是,我们只需要禁用它,并且不再能够使用该系统。

例如,禁用的用户仍将收到电子邮件,但他将无法登录并检查它们。
Linux发行版使用/etc/shadow文件存储加密的用户密码。

可以临时禁用或者永久删除用户帐户。

1)锁定(禁用)用户帐户

只需在文件/etc/shadow中的第二个字段的开头放置星号"",我们可以暂时禁用或者锁定用户帐户。
这意味着"
"不会允许登录此帐户。
无论何时要启用该帐户,只需删除星号,用户帐户就会使用其旧密码重新运行。

例如,我们要锁定名为"TOM"的用户,那么我们可以如下执行以下操作:

# vi /etc/shadow
Tom:*$narMEFm6$fhA1puOU422HiSL5aggLI/:11193:0:99999:7:-1:-1:134539228

其中第二个字段是加密密码。

我们可以用"*"或者"!"替换密码。
这将渲染用户帐户无法访问,这意味着用户不允许登录。

# vi /etc/shadow
Tom:*:13852:0:99999:7:::

但是,此方法的主要缺点是,在我们希望稍后再启用它的情况下,密码将丢失。

2)使用passwd命令

passwd命令可用于锁定或者禁用用户帐户。

# passwd Tom –l
Output
“Password changed.”
Above command changes the shadow file and adds “!” in front of the user password:
Tom:!$eFd7EIOg$EeCk6XgKktWSUgi2pGUpk.:13852:0:99999:7:::

如果我们想要启用帐户,请使用-u选项启用帐户,如下所示:

# passwd Tom -u

我们还可以通过手动删除"!"来启用帐户。
来自用户密码行/etc/shadow中的字符。

3)永久删除用户帐户

我们可以永久删除用户;只需运行userdel命令。

# userdel Tom
or
# userdel -r Tom