首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >POSIX粘性位应否拒绝根附加?

POSIX粘性位应否拒绝根附加?
EN

Stack Overflow用户
提问于 2021-12-25 11:56:57
回答 1查看 260关注 0票数 1

POSIX目录权限包括“粘滞”位(S_ISVTX),它是所述,将删除或重命名限制为仅限文件所有者或根用户。这通常用于诸如/tmp/var/tmp之类的目录,它们可能具有允许所有用户创建临时文件的权限drwxrwxrwt,但阻止其他非根用户删除这些文件。

我的问题是root是否允许修改普通用户在标记为粘性位的目录中创建的文件。

假设一个普通用户在一个受粘性位保护的/var/tmp中创建一个文件(该文件系统位于本地的、非NFS文件系统上,没有SELinux限制):

代码语言:javascript
复制
echo "something" > /var/tmp/somefile

但是root尝试追加到这个文件:

代码语言:javascript
复制
echo "else" >> /var/tmp/somefile

当我在一些Linux系统(例如Debian-11,ArchLinux)上尝试这一点时,会产生一个bash: /var/tmp/somefile: Permission denied错误。这似乎是对超级用户更改本地文件系统中文件的权限的意外限制。Linux的其他种类(例如Debian-10、Debian-9、Fedora-35)似乎没有这种限制,尽管在文件系统设置上没有明显的差异。

我还没有找到任何说明粘滞位应该阻止根修改这样一个文件的文档。例如,作为sys/stat.h基础的POSIX文档除了删除受粘性保护的文件外,对其他行为的描述很少。

有人能向我指出,当超级用户试图修改标记为粘性位的目录中的文件时,粘性位应该如何运行,或者什么系统设置会影响这种行为?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-28 12:59:37

找到答案

您所显示的行为似乎依赖于fs.protected_regular Linux内核参数,该参数与fs.protected_fifos by 此承诺一起引入,目的是修复安全漏洞。

解决方案:

sudo sysctl fs.protected_regular=0

资源:

因为它是一个补丁,所以可能不会有更详细的文档记录。

https://askubuntu.com/questions/1250974/user-root-cant-write-to-file-in-tmp-owned-by-someone-else-in-20-04-but-can-in/1251030#1251030

https://unix.stackexchange.com/questions/503111/group-permissions-for-root-not-working-in-tmp

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70479857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档