多用户的目的是什么?

多用户的目的是什么?

在我的 Linux 机器上设置 apache Web 服务器时,我被告知要创建一个单独的用户,该用户有权使用 /www 目录中的文件(其主目录是该目录)。此外,我还创建了一个 mySQL 用户。这两个用户都具有 nologin 属性。

我不太清楚自己在这里做什么,我主要通过以下方式进行测试http://本地主机,所以我主要通过我的用户帐户进行工作。

我想要了解的是:

1)一般来说,这些用户为什么存在?

2)apache,mySQL或php是否访问这些用户的权限?

3)在什么情况下我可以访问这些用户的权限?

4)为什么需要nologin属性?

5)任何其他我不知道需要询问的相关信息。

谢谢。

答案1

简单来说...

  1. 独立用户正是这样做的 - 它将事物分开,以便一个用户无法访问或修改另一个用户的文件,具体取决于该用户在其文件上设置的权限。许多守护进程(包括 Apache)在特定用户帐户下运行 - 例如,Red Hat 倾向于使用“apache”用户,而 Debian 使用“www-data”。这意味着守护进程与其他任何用户一样被对待 - 它不能访问不允许的文件,与 root 用户不同
  2. Apache 会这样做,因为它会从文件系统读取文件,就像任何其他用户一样。由于 PHP 通常作为 Apache 中的一个模块运行,因此它也受到相同的限制。然而,MySQL 有一个单独的身份验证方案,因此本地用户和数据库用户之间没有隐含的关联
  3. 如果您仅为您的网络内容创建一个单独的用户,您将访问该用户来修改该用户拥有的文件 - 大概是您的网络内容。
  4. 通过“nologin 属性”,我假设您的意思是将 shell 设置为/sbin/nologin- 这会阻止用户以交互方式登录,即他们无法通过 SSH 连接到服务器或登录控制台。
  5. 老实说,这不是几行字就能讲清楚的事情。互联网上有很多针对初学者的指南 - 读几遍,感受一下吧!

相关内容