文件仅可由用户删除?

文件仅可由用户删除?

我正在运行 Debian 7 服务器并具有以下场景(示例名称)

用户:

  • 保罗:保罗
  • 约翰·保罗

目录:/home/paul/目录

  • 文件 W(所有者 paul、小组 paul、权利:0770)
  • 文件 X(所有者 paul、群组 paul、权利:0700)
  • 文件 Y(所有者 paul、组 paul、权限:0700)
  • 文件 Z(所有者约翰、小组保罗、权利:0770)

用户 john 应该可以删除“文件 Z”,但不能删除“文件 X”或“文件 Y”,他还应该有编辑和删除“文件 W”的权限。

简而言之:他只能删除自己的文件,但可以在获得权限的情况下编辑所有文件。

我正在寻找一种解决方案,以使用目录的删除位来删除指定文件。选项“chattr”不是选项,因为不应该使用 root 权限执行任何操作。

有人有想法吗?

答案1

在 POSIX 安全模型中,要删除文件,你只需要对其具有写权限 父目录。因此,如果“john”帐户+w对 /home/john/Directory 有权限,它将始终能够删除里面的文件。

但有一个例外,即“粘性”/“限制删除”模式。当你设置+t在目录中,文件删除受到限制仅有的发送给文件所有者或目录所有者。(例如,以/tmp这种方式工作。)因此,如果您chmod +tchown root目录,您应该会得到预期的结果。

相关内容