<-
Apache > HTTP サーバ > ドキュメンテーション > バージョン 2.2 > モジュール

Please note

This document refers to the 2.2 version of Apache httpd, which is no longer maintained. The active release is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

Apache モジュール mod_log_forensic

翻訳済み言語:  en  |  ja  |  tr 

この日本語訳はすでに古くなっている 可能性があります。 最近更新された内容を見るには英語版をご覧下さい。
説明:サーバに送られたリクエストの forensic ロギング
ステータス:Extension
モジュール識別子:log_forensic_module
ソースファイル:mod_log_forensic.c
互換性:mod_unique_id はバージョン 2.1 からは必須では なくなった

概要

このモジュールはクライアントリクエストの forensic ロギングを 行ないます。ログ収集はリクエストの処理の前と後に行なわれますので、 forensic ログは各リクエストに対して二行ログ収集します。 Forensic ロガーは非常に厳密です。これは以下のことを意味します:

Forensic ログの出力を検査するためには、 配布物の support ディレクトリにある check_forensic スクリプトが役に立つでしょう。

トピック

ディレクティブ

参照

top

Forensic ログフォーマット

各リクエストは2回ログ収集されます。最初はリクエストが処理される (つまり、ヘッダを受け取った後) です。2度目のログは リクエストが処理された、通常のログ収集と同じときに 行なわれます。

各リクエストを識別するために、リクエストには 一意なリクエスト ID が割り当てられます。この forensic ID は フォーマット文字列 %{forensic-id}n を使うことで 通常の transfer ログにログ収集することもできます。 mod_unique_id を使っている場合は、それが生成する ID が使われます。

最初の行は forensic 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, etc...

最初のプラス文字がこのログは最初のログであることを示します。 二番目の行はマイナス文字と ID のみです:

-yQtJf8CoAB4AAFNXBIEAAAAA

check_forensic スクリプトは引数としてログファイルの名前を 取ります。+/- の ID の組を調べ、完了していない リクエストがある場合は警告を発します。

top

セキュリティの問題

ログファイルが保存されるディレクトリがサーバを起動したユーザ 以外で書き込み可能になっているときにセキュリティが破られる可能性が あることについての詳細はセキュリティのこつを 参照してください。

top

ForensicLog ディレクティブ

説明:Forensic ログのファイル名を設定する
構文:ForensicLog filename|pipe
コンテキスト:サーバ設定ファイル, バーチャルホスト
ステータス:Extension
モジュール:mod_log_forensic

ForensicLog ディレクティブは forensic 解析のための サーバへのリクエストをログ収集に使います。 各ログエントリには、普通の CustomLog ディレクティブを使ってリクエストと関連付けることの できる 一意な ID が割り当てられます。mod_log_forensicforensic-id というトークンを作成し、フォーマット文字列 %{forensic-id}n を使うことでそのトークンを transfer ログに 追加することができます。

引数はログが書き出される位置を指定し、以下の 2種類の値のどちらかを 取ることができます:

filename
ServerRoot からの 相対ファイル名
pipe
パイプ文字 "|" と、その後にログ情報を標準入力から 受け取るプログラム。プログラム名は ServerRoot からの相対パスとしても 指定できます。

セキュリティ:

プログラムを使う場合、そのプログラムは httpd を起動したユーザで 実行されます。つまり、サーバが root で実行された場合は root で 実行されるということです。プログラムが安全であるか、より権限の少ない ユーザに切り替えるようになっていることを確かめてください。

Unix 以外のプラットフォームでファイル名を入力するときは、 プラットフォームがバックスラッシュの使用を許可している場合でも、 スラッシュのみが使われるように気をつけてください。 普通は設定ファイルすべてにおいて、スラッシュの方を使用するように してください。

翻訳済み言語:  en  |  ja  |  tr 

top

コメント

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.