托管网站的推荐目录所有权和权限是什么?

信息安全 服务器 ubuntu
2021-08-22 01:41:43

所以,我不确定我的网站目录的推荐目录所有权和权限是什么。

└── var
    └── www
        ├── website1
        │   └── public_html
        └── website2
            └── public_html

所以 var 和 www 的所有者已经是 root:root。

└── [root     root    ]  var
    └── [root     root    ]  www
        ├── [user1     user1    ]  website1
        │   └── [user1     user1    ]  public_html
        └── [user2     user2    ]  website2
            └── [user2     user2    ]  public_html

应该和上面一样吧?

或者:

└── [root     root    ]  var
    └── [root     root    ]  www
        ├── [root     root    ]  website1
        │   └── [user1     user1    ]  public_html
        └── [root     root    ]  website2
            └── [user2     user2    ]  public_html

对于我这样做的前提:

└── [drwxr-xr-x]  var
    └── [drwx--x--x]  www
        ├── [drwxr-xr--]  website1
        │   └── [drwxr-xr-x]  public_html
        └── [drwxr-xr--]  website2
            └── [drwxr-xr-x]  public_html

为了更好的定位:

var 0755
www 0711
website1 0754
public_html 0754 or 0755

有什么建议吗?

1个回答

提供您提供的信息:

我总是建议您的 Web 应用程序的用户是 www-data:www-data 并且文件权限不高于 755。

如果您正在创建拆分托管,那么当然可以使用不同的用户,www-data 只是一个常用用户,尽管设置正确,您可以使用基本用户。永远不要使用根。如果您需要特殊权限,请授予您的用户特定的权力(sudoers),而不是让该用户拥有所有权力。

对于文档根目录下的任何内容,在这种情况下,这将包括您的 www 文件夹(除非您在那里存储了网络资产),我会将文件权限保留给另一个用户,我总是建议不要使用根目录,但它不会那么糟糕在这个级别。

无论您认为您的服务器是否安全,您都需要记住以 root 身份执行的任何操作都是危险的。你的服务器不安全。

我的建议是尽可能让根远离画面。我希望这有帮助。