禁止每个用户阅读其他用户文件的原因是 一些用户拥有自己的'config.php'文件,其中包含敏感信息,而有些用户不喜欢其他人能够查看其内容管理系统的文件结构和源代码的想法, 因此,我正在尝试创建用户可以访问其主目录作为顶级文件夹的系统。即无法'cd /'并查看其他人的文件和系统文件夹。我从评论中猜测它并不那么简单。
与问题本身的问题陈述不同,这实际上是合理的 可解 问题。下边是 一 如何解决这个问题的可能性。
首先,使每个主目录只能由其所有者访问,而不是其他任何人。换句话说,模式0700。
其次,将用户的umask设置为0077.这意味着默认情况下,将创建文件,其中group-和world-权限位设置为零,仅允许所有者访问。
如果某个其他进程必须可以访问该特定文件(它是.php文件,也可能是Web服务器?),请为该进程提供其自己的组成员身份,将主目录中的组所有权设置为该组,并设置模式如果知道需要访问的子目录或文件的特定名称,则目录上的“execute”位允许访问,但不允许列出目录内容(在目录上“读取”)。
用户主目录下的任何子目录应该可以访问同一进程,可以具有相对宽松的世界权限位。 (例如,文件0644和目录0755或0751.)
如果需要,为用户提供一个“共享”区域,可能在其主目录之外,它具有更宽松的权限集。对于每个用户,可以使用/ home / $ USER和/ share / $ USER,其中/ share下的目录具有0755权限,并且由相应的用户拥有。可能在用户主目录中添加指向其“共享”目录的符号链接,并告诉他们其他用户的共享文件位于/ share / $ USER中。如果您要使用此路由,则可能需要使用0022的umask,这将默认文件为非所有者的只读。确保通知用户他们存储在/ share下的文件可供系统上的所有用户读取。
/usr/bin
或其他系统目录?