如何设置安全权限:多个用户和网站 / Apache / www-data

如何设置安全权限:多个用户和网站 / Apache / www-data

我有自己的私人 VPS,由托管服务管理,现在我要切换到云服务器,我必须自己管理一切。我试图模仿他们的安全设置。在我的旧服务器和新服务器上,我的用户/网站设置如下所列。我的 Apache 虚拟主机将这些作为 DocumentRoot,因此它们现在正在运行:

/home/user1/site1.com
/home/user1/site2.com

/home/user2/site3.com

/home/user3/site4.com
.....

基本上在我的旧 VPS 上,Apache Web 服务器可以运行所有这些网站,同时,每个用户都无法访问其他用户的文件(如果一个网站被黑客入侵,黑客将无法访问其他网站)。我注意到目录的权限为 755,文件为 644。

按照我现在的设置,这些用户目录中的所有内容都位于 www-data 组中,目录具有 775 权限,文件具有 664 权限。一个用户网站上的文件可以从另一个用户的网站访问(不好)。

我该如何设置权限来模仿上面描述的旧 VPS?

编辑: 经过进一步研究,我应该注意到我将服务器设置为运行 http/2。我发现 Apache MPM-ITK 实际上是根据用户/组分离虚拟主机所必需的。但是,Apache MPM-ITK 与 http/2 不兼容。我不确定除了放弃 http/2 以获得 mpm-itk mod 之外还能做什么?

答案1

这可能有点牵强,但您可以通过一些简单的 Linux 权限来实现这一点。

如果用户的目录归用户/用户组所有(即,user23:user23),您可能能够通过将 apache 用户添加到用户组来实现。

usermod -a -G user23 apache

usermod命令将把以下组(-a)附加到用户(在上面的例子中为 Apache)。

还没有尝试过。通常我会将其添加为评论而不是答案,但我必须有 50 个代表才能发表评论 -_-

相关内容