Linux /家庭隐私

Linux /家庭隐私

警告:这可能违反 Unix 哲学和设计,但我无论如何都会问。

有没有办法实现三个独立 /home/user 文件夹的隐私?提出这个问题的原因是,我和其他两个人拥有一个 VPS,我们都希望通过 sudo 获得 root 权限,但又不想能够读取/编辑其他用户的文件。

加密似乎不是一个好的解决方案,因为当您想要访问该文件夹时,您必须对其进行解密并将其安装在某处,然后其他人才可以访问,对吗?

也许禁用 root 帐户并编写一些 sudoers 规则?

任何帮助都将受到感谢。

答案1

rootrootroot从各方面来说,那个盒子里都是上帝;全知全能,无所不知,可以做任何他/她喜欢的事情。

但是,根据您要实现的目标,通过将常规用户帐户添加到组中,root并结合 中的非常严格的白名单,可以产生类似的效果sudoers。不过,要非常清楚您添加到白名单中的内容,正如@dresende 指出的那样,如果您不小心,几乎有无数种方法可以从 sudo 中获取 shell。一旦有了 shell,您就可以做任何您想做的事情。

但请注意,某个地方的某个人将需要访问该root帐户。您可以设置安装和管理软件或各种东西的能力,但我几乎可以保证,在某个时候,某个人将需要某些东西chown,即使chmod他们通常没有权限这样做。

此外,如果您拥有可以访问每个用户文件的网络服务(例如 Web 服务器),那么您最终会为共享此 VPS 的其他人提供另一个攻击媒介。目前的配置不允许访问,但如果这些其他用户可以调整配置……好吧,我相信您知道这会带来什么后果。

除此之外,还有许多系统配置文件是 shell 脚本。除了配置服务之外,还可以修改 shell 脚本。这就是重点,但也是您所提议的系统中的一个潜在弱点。cp -a /home/user1 /home/user2/user1-home在您的方案中,这将是毁灭性的,并且可以在无人注意的情况下插入、运行和删除。如果人们想要做坏事,他们有很多方法可以做坏事,而且几乎没有任何余地。

虽然我很欣赏你试图实现的目标,但从实际角度来看,通常没有必要建立一个完全没有人拥有根访问权限的设置。这几乎总是归结为信任和隐私问题。大多数系统管理员都会尊重人们的隐私。如果出于某种原因你们无法信任彼此,或者存在实际敏感和/或机密信息(而不仅仅是你不想让别人看到的东西),那么也许你可以找第三方来管理服务器,或者共享服务器可能不是一个好主意。

答案2

如果有一套足够完整的 SELinux 规则,这是可能的。您可能需要为每个用户创建单独的主文件上下文和根域,然后根据需要允许/拒绝访问。

答案3

您唯一的选择是禁用 root 帐户(例如,一个较长的随机密码)和一些 sudo 规则。执行此操作后,您只需删除 group/others 对 /home/user 文件夹的写入权限即可。

请注意,某些 sudo 规则可能会对您造成影响。例如,授予用户使用权限来编辑文件vim可以允许用户:sh以 root 身份执行和运行任何操作。

答案4

如果您这样做的话,您将没有 root 权限。

也许您需要讨论一下您需要哪些特定权限,然后在没有 root 权限的情况下实现这些权限。

当然,有人需要拥有 root 权限 - 我想那可能是托管公司的 VPS 管理员。

相关内容