Linux
執行 Web 應用程序時是否值得使用 chroot?
我的設置:
- 在生產中,我為每個 Web 應用程序分片使用一個虛擬伺服器。分片位於負載均衡器後面。
- 在後台,我們在單個虛擬伺服器上執行 Web 應用程序 + DB。後台僅受非測試使用者的身份驗證摘要保護。Web 應用程序直接公開。
Web 應用程序由Go net.http伺服器提供服務。執行程式碼僅由我們的團隊部署。我們不會向第三方使用者公開一個平台來執行他們的程式碼。
對於這兩種設置,都有一個專用的、非特權的使用者來執行這個應用程序。
執行 Web 應用程序時是否值得使用chroot ?
我應該使用任何其他安全調整嗎?
“是否值得”主要取決於您的優先級和您在伺服器上執行的應用程序類型。
例如,如果您執行的程式碼不是您自己放置的,例如您有客戶將程式碼上傳到您的伺服器,那麼使用 chroot 可能是一個好主意。或者,如果您執行可能存在安全漏洞的第三方應用程序並允許攻擊者在您的伺服器上執行程式碼,那麼將其放入 chroot 可能會更好(我自己也遇到過這樣的 PHPMyAdmin 案例)。此外,如果您的伺服器正在執行多個不同的應用程序,最好進行 chrooting。這樣,您可以確保如果其中一個應用程序被黑客入侵,攻擊者也不能影響/修改其他託管應用程序之一。
否則,如果您在此伺服器上沒有執行其他任何東西,則主應用程序之外的任何內容都無法從中竊取,並且您準備在它被黑客入侵時簡單地重新初始化它,也許不需要 chrooting。