Ubuntu

當需要寫入和執行權限時,我應該給apache上的文件夾什麼權限

  • April 17, 2014

我正在嘗試啟動並執行一些內容管理系統。但我對它們有安全顧慮

1)請參閱以下連結 http://www.dokeos.com/doc/installation_guide.html第 2 節說以下目錄需要對每個人都是可讀、可寫和可執行的:

  • dokeos/main/inc/conf/
  • dokeos/主/上傳/使用者/
  • dokeos/main/default_course_document/
  • dokeos/存檔/
  • dokeos/課程/
  • dokeos/家/

我對讓每個目錄都可讀、可寫和可執行的想法不太滿意。

  1. http://doc.claroline.net/en/index.php/Install_general_information

文件夾權利部分說

“如果您不想為整個文件夾設置寫訪問權限(出於安全原因建議這樣做),請授予 Web 伺服器使用者對這些文件夾的寫訪問權限:”

這是推薦的做法嗎?

3)另外一個 LMS(學習管理系統)在安裝時要求為每個文件夾提供一些可寫和可執行的文件夾,這裡是一個連結 http://atutor.ca/atutor/docs/installation.php 安裝時我收到一條消息

“The directory you specify must be created if it does not already exist  

並且可由網路伺服器寫入。在 Unix 機器上發出命令 chmod a+rwx content,另外路徑可能不包含任何符號連結。chmod a+rwx /var/www/atutor/content”

  1. 另一個 LMS docebolms 要求給予寫權限
files/doceboCore/photo
files/common/users
files/doceboLms/course
files/doceboLms/forum
files/doceboLms/item
files/doceboLms/message
files/doceboLms/project
files/doceboLms/scorm
files/doceboLms/test

我檢查了它的文件 http://www.docebo.org/doceboCms/index.php?mn=docs&op=docsπ=5_4&folder=7 但沒有那麼有用。

正如這些學習管理系統所說,我完全不相信授予讀取、寫入和執行權限的想法。讓我知道你們要說什麼?在這種情況下,最佳做法是什麼?

您的擔心是對的,太多的應用程序供應商訴諸於告訴您需要向每個使用者授予完全權限以避免問題。他們這樣做是為了盡量減少支持電話,而不是最大限度地提高安全性。

Web 伺服器帳戶需要對某些目錄的寫入權限才能儲存上傳或生成的文件,這確實是有道理的。並且在 Unix 中需要對目錄執行訪問,以便使用者列舉目錄的內容,因此這也是必要的。

最終,您想要的是執行 Web 伺服器程序的使用者帳戶(很可能www-data如果您在 Ubuntu 上使用打包的 Web 伺服器)擁有有問題的文件夾,然後是 755 的標準權限(rwxr-xr- x) 就足夠了,或者如果您與其他不受信任的使用者在共享系統上,您需要 700 (rwx——)。

因此,在您的第一個範例中,假設這些目錄已經存在,您需要這樣做:

$ sudo chown -R www-data:www-data dokeos/main/inc/conf/ dokeos/main/upload/users/ dokeos/main/default_course_document/ dokeos/archive/ dokeos/courses/ dokeos/home/
$ sudo chmod 755 dokeos/main/inc/conf/ dokeos/main/upload/users/ dokeos/main/default_course_document/ dokeos/archive/ dokeos/courses/ dokeos/home/

同樣,如果您在共享系統上,您可能希望在第二行將“755”替換為“700”。如果您知道這www-data不是執行您的 Web 伺服器的使用者,請將該項目替換為正確的值。您也可以在第二個系統的目錄上執行相同的兩個命令。在這兩種情況下,可能都需要寫入權限,但僅限於執行 Web 伺服器的單個使用者,而不是所有人

祝你好運。

引用自:https://serverfault.com/questions/230806