我已经设置了一个 apache 服务器实例(在 ubuntu 12.04 上)并在其上托管了两个 php 网站。网站由不同的团队维护,他们不希望其他团队可以看到代码。
网站代码位于目录 /etc/sites/team1 和 /etc/sites/team2 中。两个团队都可以通过 FTP 访问服务器(使用 vsftpd)。网络服务器使用属于 www-data 组的用户 www-data 的凭据运行。这意味着站点目录中存在的所有文件都必须具有用户 www-data 或组 www-data 的读取权限。当用户通过 FTP 客户端上传文件时,文件的所有者和组被设置为 FTP 用户的用户和组。
如何将每个通过 FTP 服务器上传的默认组设置为 www-data?
一种方法是将 FTP 用户的默认组设置为 www-data,但在这种情况下,两个站点的 FTP 用户都将拥有组 www-data,并且每个文件至少具有该组的读取权限,他们将能够看到彼此的代码。
保护源代码的正确方法是什么,以便 apache 服务器可以访问它们,但其他团队不能访问它们?