如何防止用户读取文件,但网络服务器仍应能够读取

如何防止用户读取文件,但网络服务器仍应能够读取

我的测试机器上有一个 lighttpd 测试服务器,上面有 2 个用户,他们都有自己的文件夹,里面有一个用于 Web 服务器的公共文件夹,现在我想阻止其他用户读取其他用户的内容,但 Web 服务器仍应具有访问权限。我该怎么做?

答案1

您可以将相应的文件夹归属于 Web 服务器所属的组,但两个用户都不是。假设服务器以用户 www-server 的身份运行,用户名为 user1 和 user2。然后,如果还没有合适的组(通常有),请创建一个新组并将 Web 服务器用户添加到其中:

sudo addgroup www-private
sudo adduser www-server www-private

现在,对于每个用户,应该更改私人文件夹的所有者,以便拥有该文件夹的用户是相应的用户,而拥有该文件夹的组是 Web 服务器的组:

sudo chown user1:www-private /path/to/folder/of/user1
sudo chown user2:www-private /path/to/folder/of/user2

现在可以相应地设置权限,以便用户对自己的文件夹具有写访问权限,Web 服务器具有读取访问权限,而任何其他用户均无访问权限:

sudo chmod 750 /path/to/folder/of/user1 /path/to/folder/of/user2

如果我没记错的话,这应该会给你想要的结果。

相关内容