具有多个用户的 apache2 web 内容目录的权限设置?

具有多个用户的 apache2 web 内容目录的权限设置?

我有一个使用 LAMP 堆栈设置的 Debian VPS。我的 apache2 实例在用户帐户“www-data”上运行。

除了根帐户和服务帐户外,我还有几个属于朋友、家人和我自己的用户帐户,这些帐户都具有 FTP 访问权限。这是为了允许用户将文件拖放到位于其主文件夹中的域根目录中。

我在设置正确的权限以便 Apache 能够提供内容时遇到了问题(“403 Forbidden”)。我可以对每个域的整个 www 目录执行“chmod -R 755 *”,但据我所知,这不是一个好主意。

以下是该结构的一个示例:
apache2 由“www-data”运行
用户“john”具有此主文件夹结构
/home/john/domains/somedomain.com/www
/home/john/domains/sub.somedomain.com/www

我怎样才能保证安全,同时仍然允许用户通过 FTP 上传内容,并允许在 Wordpress 中上传文件?

答案1

对于已发布的内容,权限通常如下:

  • 755 用于目录和 CGI
  • 静态内容为 644

现在,如果您使用 Wordpress 上传文件,则需要将上传目录归为 www-data 组所有,并将权限设置为 775。您可能需要设置 SGID 位。

根据上传的目的,出于安全目的,建议不要将其放在 Web 树中,因为这可能是一个渗透点。

如果您希望多个用户操作相同的内容或拥有多用户托管环境,事情就会变得更加复杂。

相关内容