努力寻找在 Linux/Apache Web 服务器上设置权限的正确方法

努力寻找在 Linux/Apache Web 服务器上设置权限的正确方法

您的专业经验和帮助非常棒,在此深表感谢。

我已经运行 LAMP 服务器很长时间了,但我仍然在努力寻找为 FTP 和 WWW 协议活动设置文件和目录权限的最佳方法。

我的控制面板是 WHM/cPanel(并不是说它们有什么区别),并且开箱即用:

  • 文件归 WHM 中设置的用户帐户所有(例如“abc”)
  • 文件也有一个“abc”组设置
  • 文件权限创建为 644
  • 目录归“abc”所有
  • 目录有一个组设置为“abc”
  • 目录权限使用 0755 创建

再次,这些是默认权限设置。

现在 FTP 活动一切正常,但如果这些文件/目录设置中的任何一个造成了问题,尤其是安全问题,请通知我。

这就是我遇到的困难。我有一些 PHP 应用程序,允许访问者在某些选定目录中创建、编辑、重命名、删除等子目录和文件。PHP 在我的服务器上以“nobody”身份运行。

因此,为了让我的 PHP/Web 应用程序正常运行,我必须:

chown nobody *
chgrp nobody *
chmod 0777 *

这些特定和选定的子目录中的所有内容。

我知道这可能是一个巨大的安全问题(所以不要问我任何链接:),但我应该如何设置所有权限以允许我的 FTP 用户执行其操作,同时允许 PHP 应用程序执行其操作,同时“最小化”任何安全风险和暴露?我知道 Drupal、Joomla、WordPress 等大型 CMS 系统可以处理这个问题。

提前感谢您阅读本文并提供您的专家建议!

答案1

查看这篇文章从昨天开始。这是一种允许 FTP 和 Apache 访问相同文件的有效方法,无需处理组或“777”文件。

相关内容