我修改了 sudoers 文件,并且不再有任何可以使用 sudo 的用户

我修改了 sudoers 文件,并且不再有任何可以使用 sudo 的用户

我取消注释了一行,其中说明管理员组中所有用户都是 sudoers,我认为这导致了我的问题。我很确定我损坏了文件或类似的东西。

我将显示 sudoers 文件的样子,但它告诉我访问被拒绝。

所以,我的问题是我不再拥有具有 sudo 能力的用户。

答案1

如果您没有更改 root 密码,那么您应该能够重新启动并从 grub 菜单中选择救援模式。

或者您可以从 livecd 重新启动,挂载根分区并撤消您的更改。

答案2

在这种情况下,您需要具有 root 权限的人来修改文件以解决问题。

您是在管理员群组吗?

答案3

如果不查看生成的 sudoers 文件,似乎可能存在以下错误:

  1. 在编辑 sudoers 文件时,出现了语法错误,导致文件无法正常运行。更改 sudoers 文件时,最好使用 visudo,而不是直接编辑文件。

  2. sudoers 文件的文件保护或所有权不再正确。该文件必须由用户 root 和组 root 拥有,并且文件保护应为:0440 (u=r, g=r, o-rwx)。使用 visudo 以外的编辑器可能会使文件具有不正确的权限。

要修复此问题,需要一个能够使用 root 密码(通过 su)获得 root 权限的用户。如果您可以物理访问该机器,则可以使用 Linux CD 启动救援启动并修复此问题。当然,如果您可以物理访问该机器,在许多公司和情况下,您无论如何都会有 root 密码,因此使用救援启动不是必要的。

答案4

如果您仍然可以通过某种方式访问​​该框,则您可能会使用本地权限提升攻击来获得 root 访问权限并使用 sudo(或 sudo su -c passwd)解决问题。

请注意,如果您自己尝试此操作,可能会损坏您的盒子或使其处于工作但不稳定的状态,请让有经验的人为您尝试或找到获取本地访问权限的方法并使用 livecd 重置密码。

相关内容