我编写了一个脚本来安装 LAMP 环境和一些其他有用的程序。所有这些都安装在根目录下。
我现在想创建一个名为 webmaster 的新用户,该用户只负责呈现位于 /home/webmaster/htdocs 下的我的网站。因此,我创建了一个名为“webmaster”的新用户。
当我在 htdocs 文件夹上运行“ls”时,我得到以下输出:
-rw-rw-r-- 1 webmaster www-data 1843 Aug 26 21:12 composer.json
drwxrwsr-x 3 webmaster www-data 4096 Aug 26 21:12 src
该组是否应该真正归 www-data 所有,或者我应该将组更改为 www-data,然后简单地将 Apache 用户 www-data 添加到“webmaster”组?关于安全性的最佳方法是什么?
我会认真建议看一下用于自动化和维护安装和部署的配置管理系统。这些工具经过充分测试,能够以稳健的方式处理错误、生成报告和其他几项任务。
我会问是否真的需要有一个单独的
webmaster
用户?所有 *NIX 系统都已经有一个用户运行 Web 服务器并拥有要发布的文件(www-data
在您的情况下)。这真的归结为:如果是前者,我坚持认为这样的用户没有真正的用处。如果是后者,看看这个问题,它详细解释了如何管理这样的环境。其他解决方案也是有效的。
关于如何保护 LAMP 服务器,请阅读此 Canonical Question,它深入探讨了该主题。