这就是我所做的:
- CentOS 6.2 服务器
- 安装了 nginx
- 安装vsftpd
- 在 vsftpd.conf 我设置
chroot_local_user=YES
- 创建了一个新用户“bleh”
- 创建目录
/home/bleh/public_html/
- 在 virtual.conf 中我将 location / { root 设置为
/home/bleh/public_html/
- 最后做到了
chmod 755 /home/bleh/
这安全吗?这是可以接受的吗?
当我尝试以 root 身份使用时,遇到了各种权限问题/var/www/
。上面的工作完成了,服务器正在传递数据。
答案1
由于某些原因,这可能是很糟糕的安全性。
如果
/var
或/var/www
位于其自己的分区上,则可能已在安装时受到特殊限制。例如,它可能已使用noexec
或等选项安装nosuid
。/home
可能没有这些限制。在许多情况下,您托管网站的目录不应该是世界可读的。通常,您应该将内容设置为只有其所有者和群组可读。您的网络服务器应该以可以读取这些文件的用户身份运行。
将服务器数据与用户数据混合可能会导致敏感数据的意外托管。例如,您可能会意外托管用户
blah
的数据。