技术解析

关于 A 用户设置的符号链接, B 用户无法访问的问题
0
2021-06-17 17:51:43
idczone

image.png 如上图所示,造成这个原因是什么啊


google 一下你就知道了。权限在 inode 里,软连接只是指向了文件的 inode,然后读取 passwd 的 inode 里面的权限数据,你这用户的权限没有

可是我两个用户,都是能直接读取到 /etc/passwd 这样的文件,具备你说的用户读取权限吧。

strace cat xxx
看下什么错误不就知道了

似乎是和目录的 sticky bits 有关。
https://lwn.net/Articles/390565/
The solution is to permit symlinks to only be followed when outside a sticky world-writable directory, or when the uid of the symlink and follower match, or when the directory owner matches the symlink's owner.

/proc/sys/fs/protected_symlinks
把值改成 0 就可以了。具体可以看
https://www.kernel.org/doc/Documentation/sysctl/fs.txt

你把 passwd 权限贴出来

正解,非常感谢。

这是修改为 1 的演示
![image.png]( https://i.loli.net/2020/04/11/RWjnurzai9SwlVE.png)
这是修改 0 的演示
![image.png]( https://i.loli.net/2020/04/11/USvD9FfczAPx1Ya.png)

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服