Apache HTTP Server 版本 2.4
說明 | 向伺服器發出要求的鑑識記錄 |
---|---|
狀態 | 延伸 |
模組識別碼 | log_forensic_module |
原始檔 | mod_log_forensic.c |
相容性 | mod_unique_id 自 2.1 版後不再需要 |
此模組提供用戶端要求的鑑識記錄。此項記錄會在處理要求之前和之後完成,因此鑑識記錄會包含每個要求的兩行記錄。鑑識記錄器十分嚴格,代表
CoreDumpDirectory
組態)。發佈套件的支援目錄中可以找到 check_forensic
這個腳本,這份腳本有助於評估鑑識記錄輸出。
每個要求都會記錄兩次。第一次是在要求被進一步處理時 (也就是在收到標頭之後) 之前 。第二次記錄條目則是在要求處理完成時寫入,而且是在正常記錄發生的同時。
為了識別每個要求,會指派一個唯一的請求 ID。此鑑識 ID 可以使用 %{forensic-id}n
格式字串,交叉記錄在正常的傳輸記錄中。如果您使用的是 mod_unique_id
,則會使用它所產生的 ID。
第一行記載法醫 ID、要求行和所有收到的標頭,以直線符號 (|
) 分隔。範例行如下所示(全部在同一行)
+yQtJf8CoAB4AAFNXBIEAAAAA|GET /manual/de/images/down.gif HTTP/1.1|Host:localhost%3a8080|User-Agent:Mozilla/5.0 (X11; U; Linux i686; en-US; rv%3a1.6) Gecko/20040216 Firefox/0.8|Accept:image/png, 等...
開頭的加號表示這是此要求的第一行日誌。第二行只包含減號和 ID
-yQtJf8CoAB4AAFNXBIEAAAAA
check_forensic
指令碼將日誌檔的名稱作為參數。它尋找這些 +
/-
ID 配對,如果未完成要求,將會抱怨。
請參閱 安全性提示 文件,瞭解如果日誌檔所儲存的目錄可供啟動伺服器的使用者以外的人員寫入,為什麼您的安全性可能會受到危害的詳細資訊。
日誌檔案可能包含敏感資料,例如 Authorization:
標頭的內容(可能包含密碼),因此除了啟動伺服器的使用者以外,其他人不應可讀取這些內容。
說明 | 設定法醫日誌檔的文件名稱 |
---|---|
語法 | ForensicLog filename|pipe |
內容 | 伺服器設定、虛擬主機 |
狀態 | 延伸 |
模組 | mod_log_forensic |
ForensicLog
指令用於記錄對伺服器的要求,以便進行法醫分析。每個日誌項目分配一個唯一 ID,可使用一般
指令將其與要求關聯。CustomLog
建立一個稱為 mod_log_forensic
forensic-id
的權杖,可以使用 %{forensic-id}n
格式字串將其加入傳輸日誌。
指定日誌將寫入之位置的參數可以採用下列兩種值類型之一
ServerRoot
的檔名。|
,後接一個程式路徑,以接收其標準輸入上的日誌資訊。程式名稱可以相對於 ServerRoot
指令指定。如果使用程式,則程式會以啟動
的使用者身分執行。如果伺服器由 root 啟動,則使用者身分會是 root;請確保程式安全或切換至權限較低的使用者。httpd
在非 Unix 平台上輸入檔案路徑時,應注意確保只使用正斜線,即使該平台允許使用反斜線。一般來說,在所有組態檔中始終使用正斜線會是一個好主意。