限制文件所有者的权限

限制文件所有者的权限

我需要一些帮助,了解将文件所有权设置为所有者时会发生什么情况。也就是说,chmod 400 意味着只有所有者可以查看文件,其他人无法对其进行任何操作。但是,如果我打开 vim(作为所有者用户)并更改文件,我可以使用“wq!”对其进行写入。那么,如果用户可以覆盖这些权限,这些权限究竟会限制什么?我是否也可以在 vim 以外的其他工具中覆盖权限(即从程序中写入文件)?

答案1

系统完全按照预期运行并遵循您的明确指示。

使用!你告诉 vim按照我说的做,我知道自己在做什么。由于您是文件的所有者,您可以更改权限以允许写入,因此这实际上就是 vim 将执行的操作。

答案2

使用以下方法使文件不可变:聊天室chattr +i yourfile。那么任何人都无法更改它,即使是 root 也不行,除非取消设置该属性。请注意,只有 root 可以设置或取消设置此属性。

答案3

是的,作为文件所有者(或 root 用户),您可以忽略文件权限。不过,正如您已经看到的,这确实需要一个覆盖开关(!vim 中的)来强制解决问题,因为正常行为当然是尊重文件系统权限。许多甚至大多数程序都没有设计这样的覆盖。

这使得rwx权限类型正常自主访问控制,它们在一定程度上依赖于对软件运行良好的隐性信任。

强制访问控制(例如 SELinux)可以强制执行正确的行为,即使软件行为不当。

相关内容