Linux 递归共享可写目录

Linux 递归共享可写目录

如何使一个目录可供一组用户递归读取/写入?

问题:

这是 apache 使用的目录,因此访问权限应该相当严格。我能让它充分工作的唯一方法是将目录挂载为 nfs 共享,从而强制将 uid 和 gid 设置为特定的组和 uid。但这似乎是一种黑客行为,允许任何人修改内容,尽管 apache 对“真实”目录具有相当严格的访问权限。

我尝试过的方法:

我尝试过 setgid 位,但在通过 scp 复制目录时失败。即使在尝试在 6 个不同的地方设置 umask 后也是如此。并且我已安装并挂载了分区以使用 acl,在使用 scp/sftp 复制时,组权限也存在同样的问题。

这真是令人沮丧,因为这似乎是一个如此简单而深刻的问题,我还没有找到令人满意的解决方案。希望我在这里忽略了一些显而易见的东西。主要使用 Debian squeeze。

答案1

使用 chmod g+s 和强制 umask 的解决方案效果很好。您是否在 sshd_config 文件中强制了 sftp 子系统 umask?

Subsystem sftp internal-sftp -u 0002

答案2

如果你需要 sftp 的一些灵活性,你可能想尝试安全外壳。它具有以下权限选项:

DirFakeUser #隐藏真实文件/目录所有者(仅更改显示的权限)

DirFakeGroup #隐藏真实文件/目录组(仅更改显示的权限)

DirFakeMode #隐藏真实文件/目录权限(仅更改显示的权限)

力量集团

相关内容