我正在运行 ubuntu 16.04 Web 服务器,其中安装了 apache 和 nginx
我需要一个设置,其中某些目录(dir y)对于某些用户组(group x)是不可访问的(没有读、写或执行权限)
但是,x 组应该能够编辑 nginx 和 apache 的配置文件
目前 apache 和 nginx 是由特权用户运行的,我怀疑组 x 的成员可能能够编辑配置文件来读取目录的内容,我这样想对吗?
如果 apache2 和 nginx 服务由非特权用户(组 x 的成员)启动,这是否可以确保组 x 的成员不可能读取目录 y 的内容?
是否存在其他我需要警惕的漏洞,以确保目录保持私密?
编辑:经过一些测试,x 组的用户可以编辑 nginx.conf,将 nginx 用户设置为“root”,这样就可以公开目录
我看到两种解决方案,确保 nginx 的主机进程以非 root 身份运行,这会在绑定到端口 80 和 443 时产生问题
或者只是确保组 x 不能直接编辑 nginx.conf 文件,也许我可以创建一个可以编辑除“用户”属性之外的所有内容的程序
答案1
我对此的回应是创建两个组,这样组 Y 只能访问目录 Y,但组 X 将把更有权限的用户放在组 Y 和组 X 中,这样他们就可以有效地访问相关的两个目录。