我通过修改 /etc/passwd 和 /etc/shadow 破坏了服务器的登录

我通过修改 /etc/passwd 和 /etc/shadow 破坏了服务器的登录

我正在运行 Ubuntu 服务器(安装了 ebox/zentyal)。我相信它使用 LDAP 用户和本地用户的组合,但我目前无法使用其中任何一个用户(通过 SSH)登录。

我试图修复我正在玩的另一个盒子上的用户问题,并意外地从论坛粘贴了以下命令:

rm /etc/passwd
pwconv 
rm /etc/shadow
cp /etc/passwd- /etc/passwd
pwconv

因此,我希望通过从 恢复来修复我的密码文件/etc/passwd-,但我仍然无法以管理员用户身份登录(尽管我仍然打开了根终端)。

关于如何至少让我的管理员用户再次通过 ssh 登录(它是本地用户,而不是 LDAP 用户)的任何想法?

我尝试设置一个新密码,passwd admin但得到了一个Authentication Token Manipulation Error(这是我首先试图解决的问题)。

尝试了下面 Danny 的修复方法:

root@server:/etc# useradd -G admin kribor
root@server:/etc# passwd kribor
passwd: Authentication token manipulation error
passwd: password unchanged

答案1

我将首先使用 touch 来重新创建影子文件,将其 chmod 为 root 所拥有的 0600,然后使用 useradd 创建一个新用户,并确保他们位于 wheel/admin 组中,以便他们可以使用 sudo - 这样,如果某些事情导致它现在重新启动,你现在至少有一种方法来获取盒子上的 root 命令。

然后您可以从该文档中获取一些有用的信息。http://tldp.org/HOWTO/Shadow-Password-HOWTO-2.html- 值得注意的点 - 影子文件格式、crypt(3)命令的使用。

相关内容