5.5. 保全 Apache HTTP 伺服器
Apache HTTP 伺服器 是 Red Hat Enterprise Linux 中最穩定且最安全的服務之一,有相當多的選項與技術可以用來保全 Apache HTTP 伺服器 — 數量太多以致於無法在此詳加討論。
當您設定 Apache HTTP 伺服器 時,仔細閱讀應用程式的說明文件是很重要的,這包括了 Red Hat Enterprise Linux 參考手冊 一書中的 Apache HTTP 伺服器 章節與 Red Hat Enterprise Linux 系統管理手冊 一書中的 Apache HTTP 伺服器 設定 章節,以及位於 http://www.redhat.com/docs/manuals/stronghold/ 的 Stronghold 手冊。
以下為系統管理員應該要小心使用的設定選項清單。
5.5.1. FollowSymLinks
這個指令是預設啟用的,所以當您建立符號連結到網頁伺服器的 document root 時請小心。 例如,請勿提供 一個連結至 / 的符號連結。
5.5.2. Indexes 指令
這個指令是預設啟用的,不過也許較不建議啟用它。 如要防止訪客瀏覽伺服器上的檔案,請移除這個指令。
5.5.3. UserDir 指令
UserDir 指令是預設停用的,因為它可以確認系統上一個使用者帳號的存在,如要啟用 伺服器上使用者目錄的瀏覽,請使用下列的指令:
UserDir enabled
UserDir disabled root |
這些指令啟用除了 /root/ 之外的所有使用者目錄的瀏覽功能,如要增加使用者到停用 帳號的清單,請在 UserDir disabled 的那一行增加一個空白以分隔使用者的清單。
5.5.4. 請勿移除 IncludesNoExec 指令
預設情況下,伺服端包含的模組無法執行指令,不建議您更改這個設定,除非您有絕對的必要,因為它可能 使得一個攻擊者執行系統上的指令。
5.5.5. 限制執行檔目錄的權限設定
請確定在任何含有程式碼或 CGI 的目錄,只指定寫入的權限給 root 使用者,可以使用下列指令來完成這件工作:
chown root <directory_name>
chmod 755 <directory_name> |
也請您確定在將任何程式碼放入生產環境前,先檢驗它們在系統上的運作是您想要的。