我安裝了一個基本的 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 等資料夾的安全
- 保持安裝最新
- 保持伺服器軟體最新
- 定期進行日誌審查
- 有備份
- 能夠快速重建