SU 级别访问被拒绝

SU 级别访问被拒绝

我是 Linux 新手,花了一段时间基于旧的 Iomega NAS 盒设置 NAS 盒,修改已安装的软件,大部分都成功了。一个多月以来,除了按计划将其用作存储外,我没有用它做任何事情,而且一切都运行良好。

上周我遇到了一个问题,这个问题凸显了我的问题。我登录后一切正常,然后尝试切换到 SU,要求输入密码,但显示“su:身份验证失败”。我确定密码是什么,并在 Shadow 文件上使用“John The Ripper”确认密码正确。因此无法转到 SU 解决问题。

在尝试解决问题时,我尝试了 SUDO,但不确定这是否可行。结果是“sudo:必须是 setuid root”,因此没有进展。

我设法发现 /bin/ 中 SU 的权限是“-rwxr-xr-x 1 root nogroup 24480 1970-01-01 01:00 su”,而 /usr/bin 中 SUDO 的权限是“-rwxr-xr-x 2 root nogroup 110540 1970-01-01 01:01 sudo”。我不确定 SU 是否正确,但想知道它是否应该是 –rwsr-xr-x。我知道 SUDO 应该是 –rwsr-xr-x,但我无法使用 chmod 4755 /usr/bin/sudo 进行设置,结果为“chmod:更改 `/usr/bin/sudo' 的权限:操作不允许”。如果我尝试 sudo chmod 4755 /usr/bin/sudo,结果是“sudo:必须是 setuid root”。这也许是一条岔路,但却是死路。

我上次对系统进行的修改是在一个月前,仅在 NAS 盒的数据部分,我将数据的所有权限批量更改为 777。仅在数据存储区域,而不是任何 Linux 文件夹。数据存储区域称为 NAS,位于根目录中。否则我不知道发生了什么。

至于实际问题。有人能指出可能发生了什么吗?更重要的是,如何排序并再次返回 SU 级别访问?该系统是嵌入式 Linux,因此没有头,我使用 Telnet 连接来更改所有内容,但使用 Windows 资源管理器来探索和搜索区域。

我的最后一个想法是移除磁盘并将其放入 USB 硬盘盒中,然后通过 VM Ubuntu 安装进行访问。然后,如果可能,将 SUDO 的权限更改为 –rwsr-xr-x,如果我能找出应该更改哪个 SU 的权限以适应,两者都使用 VM 的 chmod 命令。可以这样做吗?

非常感谢您的帮助,谢谢。

更新

感谢 Scott 在第二个回答中提供的确认。如果有人有其他方法可以使用 chmod 重新设置粘性位,我将不胜感激,否则我必须按照指示移除磁盘,可能在本周晚些时候或下周末,所以请发表评论,谢谢。

答案1

su实用程序允许您成为任何用户 - 只要您知道他们的密码。基本上可以节省您注销并重新登录的时间。

sudo实用程序允许您以 root 用户身份运行命令。它可以允许在不输入密码的情况下执行此操作,也可以要求运行命令的用户输入自己的密码。

所以...

su -- 您输入root密码。

sudo -isudo service foo status等等 - 如果出现提示,请输入自己的密码

然后令人困惑的是——很多例子/指示/论坛帖子/等等都有

sudo su -

提示您输入的密码是您自己的密码 -sudo然后实用程序suroot用户身份调用,并且不会提示输入root用户的密码。

就我个人而言,我会使用sudo -i超过sudo su -...

答案2

看来您基本上了解了问题所在。  /bin/su并且/bin/sudo必须设置为 setuid(为 root),即, -rwsr-xr-x即 4755。如果它们-rwxr-xr-x 现在是 (755),则意味着某人(或某物)将它们 chmod 为不正确的模式,可能是通过执行不明智的批量 chmod。这已经使系统瘫痪。

su问题在于,您必须是 root 才能修复此问题,而如果您没有可用的或 , 则很难成为 root sudo。通常在这种情况下,建议是:

  • 尝试登录以“root”身份登录。(通常建议您将系统配置为不允许直接以“root”身份登录,尤其是远程登录。)
  • 启动到单用户模式。我不知道在无头系统上如何实现这一点。

是的,如果你可以移除磁盘并在另一台计算机上访问它,那么

chmod 4755 /mnt/bin/su /mnt/bin/sudo

应该修复它。

相关内容