当我使用 shell 时,我无法列出由 useradd 或通过 virtual min ls -ls /home/someuser/ permission denied 创建的本地家庭用户的目录
但我可以列出由 root 创建的目录。我应该安全地将这些用户添加到哪个组而不会影响 Web 服务器的安全性。我为每个用户运行单独的 php 进程,并希望阻止它访问任何其他地方。
答案1
您可以使主目录的根目录可供所有人读取。这不会改变文件或其他目录(即即时主目录的子目录)的模式。
你可以这样做:
$ sudo chmod go+x /home/someuser
上述模式参数为:
G - 群组访问
o - 其他人
X - 执行(在本例中为目录访问)
如果您想要将目录(主目录)限制为特定组,例如 Web 服务器的默认组,您可以将目录的组所有者设置为,www-data
然后仅使用g
命令的,而o
对于其他组则无需使用,如下所示:
$ sudo chgrp www-data /home/someuser
$ sudo chmod g+x /home/someuser
使用chmod go+x
用户根目录的命令并创建 php 程序的子目录可能会更方便。
www-data
顺便说一下,默认情况下您的 Web 应用程序将在该组下运行。