chmod -R 777 / 在 ubuntu 上 - 存在许多问题

chmod -R 777 / 在 ubuntu 上 - 存在许多问题

一位客户意外地赋予了他们的 ubuntu 10.04 机器上的整个文件系统完全权限。

chmod -R 777 httpdocs/cd /

正如您所见,他们尝试通过 cd 转到根目录,但却给了 chmod 一个有趣的参数来玩。

问题的第一个迹象是无法使用“su”,导致身份验证错误。sudo 还抱怨缺少 setuid 位。这个问题可以通过从机器本身以 root 身份登录并运行 chmod +s /usr/bin/sudo 来解决。

我现在可以sudo su以 root 身份执行我需要执行的操作。但su仍然出现身份验证失败。

我遵循了这里的建议:http://swiss.ubuntuforums.org/showthread.php?t=1180661&page=2

chmod 0755 /
chmod 0755 /*
chmod 1777 /tmp
chmod 0750 /root
chmod 0700 /lost+found

然后我尝试重置 root 密码。我仍然无法su成为 root,或者su root

系统似乎运行良好。有什么建议可以su再次运行吗?我可以在哪里查找更多问题?

答案1

我实际上会考虑完全重新安装系统。即使您设法正确获取了大多数权限并且一切似乎都正常,也很可能存在一些特殊权限,随时可能造成麻烦。

或者,我会将权限与第二台(可能是新安装的)机器进行比较。与您最喜欢的脚本语言一起使用应该不会太难。

答案2

哇...我也遇到过一次...幸运的是,那是一台家用机器。我解决了强制重新安装所有软件包的问题,​​这样所有权限都被设置了。反正那是在 Debian 上。我在获取所有软件包列表的脚本中使用 apt-get install --reinstall $packages。当您尝试 su 时,系统日志或身份验证会显示什么?

码头

答案3

也许是因为缺少 SUID 位导致的问题?

以下是应该包含该文件的文件:

ip@ip:~$ ls -al /bin | grep rws
-rwsr-xr-x  1 root root  27256 2010-01-28 20:32 fusermount*
-rwsr-xr-x  1 root root  78096 2009-10-23 07:28 mount*
-rwsr-xr-x  1 root root  35600 2009-05-12 00:43 ping*
-rwsr-xr-x  1 root root  31368 2009-05-12 00:43 ping6*
-rwsr-xr-x  1 root root  36864 2009-07-31 16:59 su*
-rwsr-xr-x  1 root root  56616 2009-10-23 07:28 umount*

ip@ip:~$ ls -al /usr/bin | grep rws
-rwsr-xr-x  1 root   root       14640 2009-05-12 00:43 arping*
-rwsr-sr-x  1 daemon daemon     52112 2009-09-16 01:29 at*
-rwsr-xr-x  1 root   root       41864 2009-07-31 16:59 chfn*
-rwsr-xr-x  1 root   root       37128 2009-07-31 16:59 chsh*
-rwsr-xr-x  1 root   root       59752 2009-07-31 16:59 gpasswd*
-rwsr-xr-x  1 root   lpadmin    14256 2010-03-02 17:16 lppasswd*
-rwsr-xr-x  1 root   root       62368 2008-11-05 15:24 mtr*
-rwsr-xr-x  1 root   root       32384 2009-07-31 16:59 newgrp*
-rwsr-xr-x  1 root   root       42856 2009-07-31 16:59 passwd*
-rwsr-xr-x  1 root   root       14880 2009-10-16 14:43 pkexec*
-rwsr-xr-x  2 root   root      143736 2010-04-13 20:31 sudo*
-rwsr-xr-x  2 root   root      143736 2010-04-13 20:31 sudoedit*
-rwsr-xr-x  1 root   root       18848 2009-05-12 00:43 traceroute6.iputils*
-rwsr-sr-x  1 root   root       10536 2009-11-10 12:48 X*

尝试通过以下方式在所有命令上设置执行+SUID(或至少在 su 上)

chmod u+xs file

UPD:请注意,对于 /usr/bin/at 和 /usr/bin/X,您还需要执行

chmod g+xs

相关内容