是否有能力不允许 sudoers 查看您的文件夹(只有您和 root 可以访问文件夹)?
答案1
假设“sudoers”是指被允许以 root 身份运行带有前缀的命令的人,因为他们在文件中通过类似 的行sudo
被提及,那么这些人sudoers
bob ALL=(ALL) ALL
是根。 root 的定义是不知道 root 帐户的密码,而是可以通过任何方式访问 root 帐户。
您无法保护您的数据免受 root 保护。根据定义,root 用户可以执行所有操作。权限没有帮助,因为 root 可以更改或绕过权限。加密无济于事,因为 root 可以破坏执行解密的程序。
如果您不信任某人,请不要向他们授予您存储数据的计算机的 root 访问权限。如果您不信任在计算机上具有 root 访问权限的人,请不要在该计算机上存储您的数据。
如果用户出于某些特定目的(例如轻松管理应用程序、安装软件包等)需要 root 访问权限,则为他们提供自己的硬件,或为他们提供自己的虚拟机。让它们成为虚拟机中的 root,而不是主机上的 root。
答案2
通常sudo
以这种方式授予访问权限:
# User privilege specification
root ALL=(ALL) ALL
user1 ALL=(ALL) ALL
在这种情况下,用户基本上可以不受限制地成为 root 并做任何他们想做的事情。通过这样做,您可以更加明智地授予对 sudo 中各种任务的访问权限:
user1 ALL=(root) /usr/bin/find, /bin/rm
这里我们将 user1 可以使用的命令限制为find
和rm
。如果您知道用户只需要特定命令,您可以授予他们仅对该命令的独占访问权限。
此外,您可以创建脚本而不仅仅是添加命令。例如:
user1 ALL=(root) /usr/local/bin/limited_script.sh
该脚本将是他们有权访问的唯一命令,例如cd /to/some/dir
,您可以在之前的脚本中,然后包装他们需要访问的任何命令。这可能是限制他们访问的一种方式。
请注意,该方法并不能完全证明,但可以为您提供一定程度的保护。
答案3
除非 sudoer 可以运行的命令在sudoers
配置文件中受到限制(通常/etc/sudoers
),sudo
否则root
您无法阻止 sudoer 访问您的目录。
答案4
您可能会使用 ACL,并在设置适当的 ACE 条目时可以做到这一点。不过,这样比较麻烦一些。
无论如何,如果您这样做,管理员将如何帮助您解决文件/目录的问题?您要么信任您的可信用户,要么不信任,然后转移到您信任管理员的另一个系统。