Linux

.htaccess 安全性

  • October 27, 2010

在我的 .htaccess 文件中,我一直試圖弄清楚是否應該使用:

選項 無

這當然會禁用所有額外的選項,但我一直在閱讀關於使用“選項無”的混合意見,因為有些人聲稱需要 +FollowSymlinks 以獲得更好的安全性和性能,而有些人聲稱 FollowSymlinks 是一個很大的安全風險。

我應該使用“選項無”以獲得更好的安全性嗎?

謝謝!

考慮到安全性,請考慮一起禁用 .htaccess,除非在您的站點內有必要。( AllowOverride None ) 然後,您可以在 Apache 的配置中全域設置您的選項。

也就是說,符號連結不一定是壞事,但您必須清楚地了解您的 Apache 實現。對於非 chroot 的 Apache 而言,符號連結無疑會帶來將文件暴露在文件根目錄之外的重大風險。

Options None提供更高的安全性,因為這樣就沒有機會通過符號連結獲得文件根目錄之外的訪問權限。

它可能對性能產生邊際影響。我必須檢查,但通過禁止符號連結,apache 可能必須首先lstat確定每個文件是否是符號連結。

你能引用這些聲稱允許符號連結會更好的安全性和性能的來源嗎?

編輯:但是,請注意,不允許符號連結不是防彈的。apache 手冊說“省略此選項不應被視為安全限制,因為符號連結測試受制於競爭條件。” 即,在lstat說它不是連結的時間和 apache 讀取它的時間之間,有人可以將它變成一個連結。

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