/etc/sudoers 在 linux ssh 中是所有人都可写的

/etc/sudoers 在 linux ssh 中是所有人都可写的

我尝试了所有办法,但没有任何效果。

sudo不起作用,因为它说:

/etc/sudoers is world writable

即使我输入命令,也无法以 root 用户身份登录sudo -i

chmod: changing permissions of 'etc/sudoers': Operation not permitted

su: Authentication failure

在发生此错误之前,我尝试更改文件夹的权限/etc以允许我在该文件夹内创建一个新文件夹/etc,然后第二天打开ssh后就出现了这个错误。

以下命令是我记得的唯一允许我创建文件夹的命令:

sudo chmod -R 777 /etc chmod a+w test mkdir /etc/backup

我对 Linux 命令不熟悉,所以我只是搜索它们并在我的 ssh 上尝试过,然后就发生了这个错误。

终端中的错误

有人能帮助我吗?提前致谢。

答案1

在发生此错误之前,我尝试更改 /etc 文件夹的权限,以允许我在 /etc 文件夹内创建一个新文件夹

没有任何理由更改/etc/。这是由软件包/软件包管理器维护的系统目录。如果您需要个人目录,请将其放入/home/$USER或(如果是多用户服务器则放入/opt/etc)(但即使这些在我看来也很恶心 ;))。

您可以通过重新启动进入 grub rescue 或从实时会话来修复此问题,然后执行

chmod 440 /etc/sudoers

所以它匹配

r--r----- 1 root root 1800 feb 20 18:38 /etc/sudoers

请注意,这可能是徒劳的尝试:如果你对整个 sudoers 文件做了一些事情,那么/etc/你可能改变的不仅仅是 sudoers 文件。那么重新安装而不格式化就是答案。

答案2

你应该重新启动系统并启动单用户模式,进入 root shell,更改所有权/etc/sudoers

重启后按shfit直到出现 GRUB 菜单,然后按e编辑,然后转到以 开头的行linux /boot/vmlinuz并将行尾替换ro \ console=ttyS0 console=tty0rw init=/bin/bash

来自的指示伊特加拉带有图像。

现在,chmod 440 /etc/sudoerssudoers 文件应该如下所示

-r--r-----

我建议您使用visudo并编辑 sudoers 文件以添加更多配置/etc/sudoers.d/my-sudoers

相关内容