我想要有关 Web/FTP 服务器上的目录和文件权限的建议。
这是我的情况:
Debian 服务器与这些用户:组
userme:userme
用于SSHwww-data:www-data
对于阿帕奇/PHPftpuser:ftpgroup
对于纯 ftpd
文件系统 :
-[/srv/data_disk]
-[Websites]
-[site1.tld]
-...
-[site2.tld]
-...
-[Webapps]
-[App1]
-...
-[App2]
-...
-config1.php
-config1.php
解释:
- 中的文件和目录
siteX.tld
将由 ftpuser 上传。 - 有一个“上传”子目录,可以在
siteX.tld
其中创建目录和写入文件。www-data
- Ftpuser 应该能够删除由
www-data
. AppX
目录是通过userme
ssh创建的- 它们应该被读取
www-data
(使用一个特殊的目录,apache 应该能够在其中创建/删除文件) ftpuser
并且可以通过只读模式访问(用于远程更新目的)
我想做的(但我需要确认这是一个很好的做法)是:
ftpuser
ftpgroup
=> ANDwww-data
组成员www-data
=>www-data
组 ANDftpgroup
ANDuserme
组的成员userme
=> 组成员userme
ANDwww-data
组
然后我将chmod
如下:
-[/srv/data_disk] => userme:userme 700
-[Websites]
-[site1.tld] => ftpuser:ftpgroup 750
-...
=> ftp uploaded dirs/files = ftpuser:ftpgroup 750
=> apache uploaded dirs/files = www-data:www-data 770
-[Webapps] => userme:userme 750
-[App1] => userme:userme 755
-...
=> ssh uploaded dirs/files = userme:userme 755
=> apache created files = www-data:www-data 775
您听起来安全吗? ftpusers 已被 chroot,因此 apache...