モジュール設定

Next-Gen WAF モジュールの設定機能を提供しています。次の属性はデフォルトで設定されていますが、さまざまな環境をサポートするために変更が必要な場合があります。ほとんどの場合、モジュール設定を変更する必要はありません。サポートが必要な場合、またはモジュール設定の変更に関する質問がある場合は、サポートにお問い合わせください。

Apache

Apache で Next-Gen WAF モジュール設定を変更するには、Apache 設定ファイルにディレクティブを追加する必要があります (例 : CentOS の場合は httpd.conf、Debian または Ubuntu の場合は apache.conf または apache2.conf)。ディレクティブは、Next-Gen WAF モジュールがロードされた後に設定する必要があることに注意してください。

リリース 1.6.0, 以降、以下のディレクティブが以前のディレクティブの代わりに使用されます。これらのディレクティブは、以前のディレクティブの名称にプリフィックス SigSci を加えて名前を変更したものです。

Name説明デフォルト値
SigSciAgentTimeoutエージェントソケットのタイムアウト時間 (ミリ秒)。100
SigSciAgentPostLenPOST ボディの最大サイズ (バイト)。100000
SigSciAgentInspectionモジュールを有効または無効にします。オン
SigSciAgentPortエージェントがリッスンするローカルポート (TCP を使用する場合)。SigSciAgentPort が設定されている場合、SigSciAgentHost は IP またはホスト名でなければなりません。Unix : なし、Windows : 9999
SigSciAgentHostホストまたは IP アドレス。それ以外の場合は、SigSciAgentHost を使用してドメインソケットファイルを指定します (例 : /foo/bar.sock)。Unix:/var/run/sigsci.sock、Windows:127.0.0.1
SigSciEnableFixupsSignal Sciences の修正をポストリードリクエスト処理よりも優先するよう切り替え、リクエストの変更前に確認できるようにします。オフ
SigSciRunBeforeModulesListNext-Gen WAF モジュールは、指定されたモジュールのリストの前に実行されます (例 : mod_example.c mod_something.c)。なし
SigSciRunAfterModulesListNext-Gen WAFモジュールは、指定されたモジュールのリストの後に実行されます (例 : mod_example.c mod_something.c)。なし
SigSciExpectedContentTypesサポートするカスタムコンテンツタイプのスペース区切りリスト。なし
SigSciExtendContentTypes拡張コンテンツ検査を有効にします。false

注意 : SigSciRunBeforeModulesList および SigSciRunAfterModulesList ディレクティブは、現在 ARM64 ベースの Linux ディストリビューションではサポートされていません。

SigSciプリフィックスを持つ新しいディレクティブにより、以下のディレクティブは非推奨となります。ただし後方互換性があるため、以下のディレクティブも引き続き動作します。

Name説明
AgentTimeoutエージェントソケットのタイムアウト (ミリ秒単位)。デフォルト : 100
AgentPostLenPOST ボディの最大サイズ (バイト)。デフォルト : 100000
AgentInspectionモジュールを有効化または無効化します。デフォルト : On
AgentPortTCP 使用時にエージェントがリッスンするローカルポート。デフォルト : none。AgentPort が設定されている場合、AgentHost は IP またはホスト名でなければならない点に注意してください。
AgentHostホストまたは IP アドレス。それ以外の場合は、AgentHost を使用してドメインソケットファイルを指定します。/foo/bar.sock

次のディレクティブは非推奨であり、無視されます。

Name説明
SigSciAltResponseCodesブロックする代替コードを指定することは非推奨です。代わりに、300 - 599の範囲内のレスポンスコードをブロックします。

条件付き検査の例

Next-Gen WAF Apache モジュールでは、モジュールをグローバルに有効または無効にすることで、VirtualHost ごとに条件付き検査を実行できます。これは、特定のリクエスト条件 (例 : パス) に基づいて、検査を実行するか、しないかを設定する場合に便利です。

モジュールをグローバルに有効または無効にするには、SigSciAgentInspectionSigSciEnableFixups の両方のディレクティブを Apache のグローバル設定 (httpd.conf、apache2.conf) に追加します。例えば以下のように、Next-Gen WAF Apache モジュールをグローバルに無効にしつつ、特定の VirtualHost 検査を有効にします。

重要 : SigSciAgentInspection が場所ディレクティブ内で条件付きで動作するには、SigSciEnableFixups をオンにする必要があります。

SigSciAgentInspection Off
SigSciEnableFixups On

対応する各 VirtualHost 内に、適切な SigSciAgentInspection ディレクティブ値を追加します。例えば、VirtualHostexample.com のリクエストを処理する検査のみを有効にするには、次のようにします。

<VirtualHost *:80>
DocumentRoot "/www/example1"
ServerName example.com
ServerAlias www.example.com
SigSciAgentInspection On
</VirtualHost>

適切な Apache サービスを再起動した後、モジュールは、設定で適用されたモジュールを有効または無効にするディレクティブごとに、適切な値 (有効の場合は 1、無効の場合は 0) で次の出力を Apache エラーログに記録します。

[Fri Dec 12 11:56:31.329363 2025] [signalsciences:notice] [pid 3439:tid 123749635139456] SigSci: config: agent inspection flag: 0
[Fri Dec 12 11:56:31.329363 2025] [signalsciences:notice] [pid 3439:tid 123749635139456] SigSci: config: agent inspection flag: 1

NGINX の動的モジュール

NGINX 動的モジュールのインストールと設定の手順については、「NGINX 動的モジュールをインストールする」を参照してください。

NGINX Luaモジュール

重要 : 可能な場合は、よりパフォーマンスの高い NGINX 動的モジュールを使用することを強くお勧めします。NGINX Lua モジュールは OpenResty を利用しているため、インストールにおける依存関係が増えています。

NGINX の Next-Gen WAF Lua モジュールを変更するには、デフォルトでは /opt/sigsci/nginx/sigsci.conf にある Next-Gen WAF Lua スクリプトを変更します。

Name説明
agenthostSignalSciences エージェントがリッスンしている Unix ドメインソケットの IP アドレスまたはパス。デフォルト : unix:/var/run/sigsci.sock
agentportTCP 使用時にエージェントがリッスンするローカルポート。デフォルト : 12345
timeoutエージェントソケットのタイムアウト (ミリ秒単位)。デフォルト : 100
maxpostPOST ボディの最大サイズ (バイト)。デフォルト : 100000

設定例

sigsci.agenthost = "unix:/var/run/sigsci.sock"
sigsci.agentport = 12345
sigsci.timeout = 100
sigsci.maxpost = 1000000

HAProxy

通常、HAProxy モジュールを動作させるために追加の設定変更は不要です。ただし、必要に応じてデフォルト設定をオーバーライドすることは可能です。その場合は、これらの設定ディレクティブを記述する override.lua ファイルを作成し、HAProxy 設定ファイル (/usr/local/etc/haproxy/haproxy.cfg) の global セクションで、このオーバーライド設定ファイルを読み込むようにします。

設定例

global
...
lua-load /path/to/override.lua
...

オーバーライドディレクティブ

これらのディレクティブは、オーバーライド設定ファイルで使用できます。

Name説明
sigsci.agenthostSignalSciences エージェントがリッスンしている Unix ドメインソケットの IP アドレスまたはパス。デフォルト : /var/run/sigsci.sock (Unix ドメインソケット)
sigsci.agentportTCP 使用時にエージェントがリッスンするローカルポート。デフォルト : nil
sigsci.log_debug詳細なログ記録を有効にします。デフォルト : false
sigsci.log_network_errorsソケット接続エラーのログ記録を有効にします。デフォルト : false
sigsci.timeoutエージェントソケットのタイムアウト (秒単位)。デフォルト : 1 (0 はオフを意味します)。
sigsci.maxpostPOST ボディの最大サイズ (バイト)。デフォルト : 100000
sigsci.extra_blocking_resp_hdrユーザーは 406 レスポンスに追加するレスポンスヘッダーを指定できます。デフォルトは "" です。
sigsci.expected_content_typesサポートするカスタムコンテンツタイプのリスト
sigsci.extend_content_types拡張コンテンツ検査を有効にします。デフォルト値は falseです。

オーバーライド設定の例

sigsci.agenthost = "192.0.2.243"
sigsci.agentport = 9090
sigsci.extra_blocking_resp_hdr = "Access-Control-Allow-Origin: https://example.com"

IIS

IIS モジュールの設定は、MSI インストーラー、v2.0.0以降の SigsciCtl.exe ユーティリティ、IIS Manager UI、PowerShell、または appcmd.exe ユーティリティを使用して設定できます。IIS モジュール設定の詳細については、「設定方法」を参照してください。

Nameデフォルト値説明
agentHost127.0.0.1
agentPort737
Debugfalseモジュールデバッグを有効にします。イベント閲覧者に送信します。
ReuseConnectionsfalseハードウェアの同時実行性に基づき、ソケットの最大数を持つソケットプールを使用します。
MaxPostSize100000
AnomalySize524288
AnomalyDurationMillis1000
TimeoutMillis200エージェントソケットのタイムアウト時間 (ミリ秒)。
ExpectedContentTypesサポートするカスタムコンテンツタイプのスペース区切りリスト。
ExtendContentTypesfalseこれを true に設定すると、拡張コンテンツ検査が有効になります。

言語モジュール

設定の詳細については、言語固有モジュールのページを参照してください。