安全 - 主文件夹中的 Apache 网站文件夹

安全 - 主文件夹中的 Apache 网站文件夹

更改DocumentRoot用户Home目录中某个文件夹的路径是否安全?

或者最好保持原样并在您的用户和 Apache 服务器之间使用共享组,如您在以下解决方案中看到的那样:处理 /var/www 中 Apache 2 用户 www-data 权限的最佳方法是什么?

我读过一两篇文章,我的解决方案如下:

  1. 仅为 Apache创建一个新的user和一个新的(理想情况下,限制该用户的 shell 访问)group

  2. httpd.conf用户和组指令更改为新创建的usergroup

  3. Home在您的目录中为您的网站创建新文件夹,例如Websites\Project1\public_html

  4. public_html将 的所有权更改为user先前创建的group

  5. 设置chmod 2775(使用 SETGID)文件夹和chmod 664文件(如果需要,则递归)

  6. umask 0002

  7. group最后,在第一步中将自己添加到created

答案1

最好的方法(我的观点)是使用不同的 apache 用户(www-data、apache)并使用以下方法:

  1. 创建一个包含您网站子目录的 FTP 位置。将此位置 chroot。为了便于跟踪,如果用户超过 1 个,我会使用不同的用户。

  2. 设置一个 cronjob(/etc/crontab,由 apache 用户执行),并附上脚本,每隔几分钟扫描目录以查找新内容。如果发现新内容,则让其对 ftp 端找到的文件的 apache 端文件(文件名中包含用户名和时间戳的压缩 tar 文件)进行备份。

  3. 让 cronjob 复制文件。您可以用一封确认邮件来完成此操作,确认此操作是由“用户”完成的,并包含一些diff差异。

如果出现问题,你可以

  1. 追踪是谁干的。
  2. 这个人做了什么。
  3. 撤销他所做的事。

不要使用 documentroot 进行开发。1 个拼写错误就可能导致网站瘫痪,然后必须有人找到这个拼写错误并进行修复。

相关内容