“chmod -R o+x /home”危险吗?

“chmod -R o+x /home”危险吗?

我对 Ubuntu 还很陌生。在使用家用电脑工作时,我无意中输入了以下命令:

sudo chmod -R o+x /home

我想知道开放获取是否危险其他用户,如果是的话,我该如何恢复?

答案1

这个问题起初询问sudo chmod o+x /home不是 sudo chmod -R o+x /home本答案涉及版本。当时重新询问,对于-R命令的递归()版本随后,这个问题被编辑,并发布了更多答案。我留下这个答案的目的是希望它能对其他表演者有所帮助- 的递归chmod 运算/home

命令chmod o+x /home给出其他的—— 即不拥有/home也不属于其“组所有者”的人—— 对 具有执行权限/home

对于文件夹来说,执行权限意味着一些特殊的东西——这意味着您可以进入该目录并尝试访问其中的文件。

/homeo+x默认设置。您运行的命令没有任何改变。/home必须允许“其他人”访问里面的文件,因为它包含机器的所有人类用户的主目录,并且*这些用户都不是/home的所有者或其组所有者的成员!

因此,你不必担心任何事情。此外,尝试“修复”这个问题将会破坏你的系统。如果你消除取消“其他”的可执行位/home,则任何用户都无法访问自己的主目录。系统将变得不可用。您必须进入恢复模式或从实时 CD/DVD/USB 启动才能修复它。(修复它的方法是运行与之前类似的命令。只不过这次它会起作用。)

如果您已经尝试“修复”此问题并破坏了您的系统,并且您需要帮助修复它,我建议您发布一个新问题寻求帮助。毕竟,这与这个问题不同。

答案2

如果您递归运行该命令,由于sudo chmod -R o+x /home您允许每个非所有者且非文件/文件夹所属组成员的用户“打开” 下的所有目录/home。这被视为安全风险,因为它允许每个人获取文件和文件夹列表,这可能会泄露某些信息(或信息的存在)。

此外,如果您在其中有任何脚本/home,它们将被其他人执行。根据情况,这可能是一种安全风险。如果任何脚本设置了 set uid 或 set gid 位,那么这肯定是一种安全风险,其强度取决于脚本内容。如果您还设置了 setuid 位和其他可写位 (o+w),则这是一个严重的安全风险,因为任何用户都可以像您一样执行任务。(特权升级)

如果你没有任何需要由“其他”执行的可执行文件/home(这是一种常见情况,除非用户在 home 下安装了某些东西或以其他方式放置了一些可执行文件),你可以通过执行以下操作来恢复此操作sudo chmod -R o-x /home/*

请注意,/home/*而不是/home因为/home 需求o+x 使系统正常运行。

这将从每个文件和文件夹中删除“其他”的可执行位/home

答案3

+添加,-删除。尝试:

sudo chmod -R o-x /home/*

以递归方式删除x每个子文件夹(但不删除/home/其自身)的其他人的权限。

如果使用-X(或+X) 代替通常的小写x,则仅影响:

  • 目录(这样你就不会意外更改非目录文件的权限),
  • x为任何人(即用户、组和/或其他)设置权限的文件

也可以看看 ...手册页

相关内容