初学者的问题。 我看到这个网站上提到,这是一个不好的做法,但不记得在哪里,为什么。 所以,如果我有一个用户可以访问Apache不应该访问的文件,并且将这个用户添加到Apache组中,那么这会造成安全漏洞。 如果是,为什么(例如,如果权限是700,Apache应该不能访问敏感文件)?
如果权限的影响未被理解,则任何权限设置都可能在某些环境中创build安全问题。
将用户添加到组中通常不会赋予该组任何特殊的权限。 用户拥有的文件通常对该组的成员不可见,因为您可能未将该组设置为该用户的默认组。
如果用户使用sg或某些东西来创build文件,以便该组可以访问该文件,则该组的任何成员都将访问该文件。 如果该人员创build了某个文件或目录,并授予该组的读写权限,那么可能会利用Web服务器中的错误或正在提供的代码来将任意文件存储在该目录中,并将其提供。
在某种多租户安排中,向apache组授予权限可能允许租户查看由另一个租户创build和拥有的数据。
在任何情况下,只需要一些时间,并使用find
命令和-gid
选项来归档属于该组的系统上的文件和目录。 当您将用户添加到组时,可以让您看到您授予访问权限的内容。
你通常会在系统上以几乎没有权限的用户身份运行apache。 通常less于您给系统上的普通用户。 运行apache的用户应该可以写入访问权限,除了日志logging之外,希望没有任何地方可以访问。 你可能会在apache组中添加一个用户来给这个用户额外的权限。 他们是apache服务器进程甚至需要的特权吗? 应该将这些权限分配给其他组,而不是用户组的一部分?