如何在Linux中锁定或解锁用户账户?

你好,让我告诉你这个 passwd 命令。
我曾经在工作中使用过它。
有一年,公司服务器突然被一名实习生盲目操作,管理员账户几乎被锁。
我吓得出了一身冷汗。

看,锁定用户很容易。
以我们的系统管理员客户经理为例。
有一次我怀疑自己被黑了,于是直接在终端输入 sudopasswd -l admin 。
突然管理员被锁定。
这时候,如果你尝试再次使用密码登录,就会直接询问“身份验证错误”,甚至无法输入他原来的密码。
但奇怪的是,他之前打开的远程连接仍然在那里运行,并没有断开。
这就是它所说的“现有会话不受影响”。

这同样适用于解锁。
上次有同事忘记密码了,我跑过去输入 sudopasswd -u admin 立刻就解锁了。
他赶紧重置了新密码,系统提示“密码更改成功”。
当我们查看/etc/shadow文件时,管理行中的密码字段从感叹号恢复为正常。

最有趣的是确认状态。
我经常使用 passwd -S admin 命令。
上次检查用户测试时,输出是“test LK 2 02 3 -1 0-01 ”。
一看到LK,我就知道它坏了——我们去年年底锁定了这个用户,系统升级时忘记解锁,差点又酿成事故。
赶紧改命令sudopasswd -u test。

但是有一些事情需要注意。
首先,这些命令必须用sudo执行,普通用户无法执行。
其次,一些旧系统可能具有不同的影子文件格式。
您可能需要尝试命令 usermod -L username 来锁定它们。
第三,不要让用户解锁后继续使用旧密码。
你必须强迫他改变它。

说实话,这个passwd命令比更改shadow文件要容易得多。
以前我手下有个老手,坚持认为直接在shadow文件里改感叹号会更方便,结果一不小心把所有的系统账户都锁了。
最后我用passwd命令一一解锁,花了我很长时间。
所以,不要盲目修改系统文件,使用这些标准命令是最安全的。

如何锁定和解锁用户账号 passwd命令锁定机制

记得有一次,我在公司遇到了紧急情况。
当天,我们IT部门发现一名员工的账号登录异常。
您的密码可能已被泄露。
为了防止进一步的损失,我们很快使用passwd命令关闭了账户。
过程很简单,只要输入用户名 sudo passwd -l ,然后账户就会被锁定。
正如您所看到的,/etc/shadow 文件中的密码哈希状态已更改,并且!前面添加了图标。

账户被锁定后,我们立即展开调查,最终确认是由于内部操作不当造成的。
在帐户锁定期间,我们使用usermod命令修改用户shell并设置/sbin/nologin。
这完全消除了误操作的风险。

等等,我还想到,当时我们还禁用了员工的 SSH 密钥,以防万一。
看来,为了保证系统的安全,还得从多个角度来看待问题。
但如果系统中需要管理的用户较多,那么使用usermod命令进行批量操作或者编写自动化脚本肯定更方便。
不过,这也意味着我们需要清晰记录每个用户的权限和操作路径。
毕竟系统安全并不是一件容易的事,对吧?

Linux命令详解:[18]passwd修改密码命令

我记得有一次我因为忘记了密码而登录了公司的服务器。
当时是周末,服务器恰好在偏远机房,网络信号不稳定。
那时我真的很担心也很无助。
最后,我不得不联系系统管理员。
远程登录后,他使用 passwd 命令的 -l 选项锁定了我的帐户。
我只能周一上班坐等让管理员帮我解锁。

周一到来,管理员使用 passwd 命令的 -u 选项解锁了我的帐户。
我快速登录,输入passwd命令,按照提示输入我的新密码。
我感觉很舒服,再也不用担心密码问题影响我的工作了。

之后,我负责维护公司的一些服务器,并开始学习如何使用passwd命令。
有一次我发现新员工设置的密码过于简单,于是我使用passwd命令的-n选项来设置密码的最小有效天数,提高了账户的安全性。

等一下,我突然想到,如果有一天我管理的服务器上出现大量用户密码泄露,我该如何在批量修改用户密码的同时还能保证系统的安全呢?这又是一个新的挑战。