Linux

將使用者權限限制為單個文件夾,同時 apache 使用者也可以訪問

  • April 8, 2011

我有一個在 Linux 下的 Apache 上執行的網站,位於 /var/www 目錄中。

該站點在 /var/www-store 的 web 目錄根目錄之外有一些文件,這些文件由 apache 使用者 www-data 寫入和讀取。

我需要另一個使用者對此文件儲存 /var/www-store/sync 的子目錄具有讀寫訪問權限,但出於安全原因,我不希望他們能夠訪問(讀取或寫入)此文件之外的任何文件目錄或文件系統上的任何其他位置。

此外,該使用者寫入的文件需要 apache 使用者可寫入,反之亦然。

有人可以幫助我在此使用者和這些目錄上設置權限以提供上面詳述的安全性。

您可以在目錄上設置組所有權,它是您想要與使用者共享的文件,而不是文件系統上的其他任何地方?

chown -R apache:[user-name-here] /var/www-store/sync/*

這將遞歸地設置目錄上的組所有權。apache將是所有者,您的使用者將是組所有者,因此您需要確保可以讀取和寫入目錄和文件:

chmod ug+rw /var/www-store/sync/*

上面的行將允許使用者和組所有者讀取和寫入目錄。

然後,您需要確保父目錄也沒有為所有使用者設置讀取或寫入權限。這也可以使用chmod

chmod o-rw /var/www-store/

請注意,上面的行不是遞歸的,否則會影響之前設置的 permissinso。這應該是你所需要的,如果不是,它至少會讓你開始。**免責聲明:**我實際上還沒有嘗試過,所以我不能肯定地說它會起作用,但如果沒有chmodchown應該讓你成為其中的一部分。如果您出於安全原因這樣做,您可能還想在另一個目錄上徹底測試它,可能最好專門製作一個用於測試。

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