Guardian@JUMPERZ.NET :設定 :各設定ファイルについて :

control

前へ 次へ

controlはGuardian@JUMPERZ.NETの主要なパラメータを記述するファイルです。全ての行は「パラメータ名=パラメータの値」のような形式となります。controlの設定例を以下に示します。

targetHost=www.your.server
targetPort=80
replaceHostField=false
logFileName=log/guardian.log
sessionLogDirName=log/guardian
limitRequestHeader=true
limitResponseHeader=false
threadCount=20
requestHeaderTimeOut=10
requestBodyTimeOut=3600
maxConnectCount=20
urlDecodingCharset=US-ASCII
commandInterval=1
maxQueueCount=0


targetHostには保護対象のウェブサーバーのホスト名、あるいはIPアドレスを指定します。

targetPortにはウェブサーバーのポート番号を指定します。

replaceHostFieldはHTTPリクエスト中のHostフィールドの値をターゲットのウェブサーバーのホスト名で書き換えるかどうかを指定します。主にテストの際に使用します。この項目の値はtrueもしくはfalseとなります。通常この項目はfalseであるべきです。

logFileNameにはアクセスログを記録するファイル名を指定します。この項目をコメントアウトした場合、アクセスログは標準出力にのみ出力されます。

sessionLogDirNameにはリクエスト及びレスポンスのログを保存するディレクトリを指定します。「log」項目がyesであるルールが発動した場合、この項目で指定したディレクトリ以下にリクエストやレスポンスが保存されます。

limitRequestHeaderはリクエストヘッダーの項目を制限するかどうかを指定します。この項目の値はtrueもしくはfalseとなります。この値がtrueの場合、ウェブサーバーにはallowedRequestHeaderファイルで指定された項目以外は送られません。

limitResponseHeaderはレスポンスヘッダーの項目を制限するかどうかを指定します。この項目の値はtrueもしくはfalseとなります。この値がtrueの場合、クライアントにはallowedResponseHeaderファイルで指定された項目以外は送られません。

threadCountにはGuardian@JUMPERZ.NETが使用するスレッドの数を指定します。1つのHTTPセッションについて1つのスレッドが使用されます。あなたのウェブサーバーのトラフィックに応じて増減させる必要があります。20かそれ以上の値を設定すべきです。スレッドの最大同時利用数はログファイルにmaxThreadCountとして出力されるので、その値を参考にするとよいでしょう。

requestHeaderTimeOutにはTCPの接続処理が完了してからHTTPリクエストヘッダーの受信が完了するまでの時間のタイムアウト値を指定します。この時間を過ぎてもHTTPリクエストヘッダーの受信が完了していない場合にはTCP接続が切断されます。主にTCP Connect Flooding攻撃を防ぐために使用します。単位は秒です。

requestBodyTimeOutにはボディを持つHTTPリクエストについて、HTTPリクエストヘッダーの受信が完了してからHTTPリクエストボディの受信が完了するまでの時間のタイムアウト値を指定します。主にTCP Connect Flooding攻撃を防ぐために使用します。大きなHTTPリクエストボディを受け付けるウェブアプリケーションを動作させている環境では、この値は充分大きなものにする必要があります。単位は秒です。

maxConnectCountには同一のIPアドレスから行われるTCP接続の最大同時許容値を指定します。この値を超える数のTCP接続はコネクション確立後すぐに切断されます。主にTCP Connect Flooding攻撃を防ぐために使用します。

urlDecodingCharsetはルールがマッチングを行う際のURLデコードに使用する文字コードを指定します。使用されているウェブアプリケーションに合わせて、US-ASCIIやUTF-8のような値が指定されるべきです。%u エンコーディングが行われたリクエストは自動的にUnicodeによるURLエンコーディングが行われていると判断されるため、この項目でUnicode を指定する必要はありません。

commandIntervalはシステムコマンドを実行するルール(「command」の値が「none」ではないもの)が同時に複数発動した際などの、それぞれのコマンドを実行する間隔です。単位は秒です。Alert Floodingを防ぐために使用します。

maxQueueCountはルールによって実行されるシステムコマンドが溜まるキューの許容量です。システムコマンドを実行するルールが短時間に大量に発動した場合、このキューに大量のコマンドが溜まることになります。このときこの許容量をオーバーすると、実行する予定だったシステムコマンドは全てログに記録され、実行されることなくクリアされます。Alert Floodingを防ぐために使用します。0は無限を意味します。


各設定ファイルについて に戻る