在 SSH 中恢复用户修改 (usermod)

在 SSH 中恢复用户修改 (usermod)

我运行了usermod -s /bin/false ftpuser2,现在无法使用辅助帐户的 FTP 服务。我该如何恢复此命令?

如果你问我尝试过什么,那我什么都没尝试过,也不想尝试,因为我是这方面的新手,我可能会永久地破坏一切,而我的托管公司不会为我提供帮助或备份。

答案1

首先,托管公司不提供任何类型的备份或快照,这是不理想的。绝大多数公司至少会定期对其基础设施进行快照。除非您拒绝该服务。您可能需要就此问题咨询托管提供商,因为您可能在不知情的情况下拥有此类服务。

但要回答我们的问题,您已经使用该命令更改了一个纯文本文件。如果您可以使用任何其他有权修改系统文件的用户(例如用户“root”,或任何“sudoer”或“管理员”用户)进入该服务器。要解决此问题,您可以运行以下命令:

sudo usermod -s /bin/sh ftpuser2

如果sudo不存在,则需要以 root 身份登录。如果您无法以 root 身份登录,则说明您已将自己锁定,需要寻求帮助才能登录(或者您需要一个新的服务器实例)。

一旦您返回,请查阅 '/etc/passwd' 文件以了解其他用户的默认 shell 设置,然后将 ftpuser2 设置为该 shell 而不是sh

稍后,您可能想尝试禁用 FTP 用户的 shell,因为这是一个常见的漏洞。但是,请在实验室中执行此操作,而不是在生产中。并且始终确保手边有一个管理用户帐户,以便在您搞砸时帮助您重新登录。

相关内容