如何阻止PHP存取目錄?

如何阻止PHP存取目錄?

我安裝了一個基本的 LAMP,我想確保 PHP 無法存取 /var/www 目錄以外的任何內容。我怎樣才能做到這一點?我所說的「存取」也指讀取檔案和目錄清單。

出於安全考慮,我提出這個要求。我在我的伺服器上運行 WordPress,如果有人獲得管理員帳戶,他可以編輯模板程式碼,透過該程式碼他可以存取系統中的任何位置。

謝謝你!

答案1

以下是確保 LAMP 設定安全的關鍵步驟:

  • 確保所有網站都使用自己的使用者運作。您可以使用 Apache mod_itk/mod_php 或 PHP-FPM(通常使用 Apache 或 Nginx)來實現此目的
  • 確保 root 擁有文件並且群組是 Web 伺服器使用者(反之亦然)
  • 確保檔案的存取權限為 640,目錄的存取權限為 750。僅 WordPress 上傳資料夾為 660/ 770。
  • 只有當您升級或安裝外掛程式時,才能變更 PHP 檔案的存取權限。
  • 確保 PHP 檔案不能在 images 資料夾中執行:

    <FilesMatch "/uploads/\.(asp|php|php5|pl)$">
        Deny from all
    </FilesMatch>
    

    這種技術在 Wordpress 上效果不太好,因為外掛程式會將 php 檔案安裝到該資料夾中。您可能最好保護 uploads/2017 等資料夾的安全

  • 保持安裝最新
  • 保持伺服器軟體最新
  • 定期進行日誌審查
  • 有備份
  • 能夠快速重建

相關內容