Traefik プラグインのインストール
- English
- 日本語
Traefik は、Fastly の Next-Gen WAF と組み合わせて使えるオープンソースのアプリケーションプロキシです。Fastly の Traefik プラグインは、公式のGolang モジュールを基にしています。
前提条件
Traefik プラグインを使用するには、Next-Gen WAF エージェント (旧 Signal Sciences エージェント) を実行している必要があります。Traefik プラグインは、通常 Unix ソケットを介してエージェントと通信し、検査用のリクエストデータを送ります。
Traefik プラグインの設定
プラグインの設定には2つのステップがあります。まず、Traefik の静的設定にプラグインをロードし、次に動的設定でミドルウェアとして有効化します。
静的設定
以下に示すように、プラグインを静的設定ファイル (例 : traefik.yml) に追加するか、コマンドライン引数で指定します。これは、Traefik にプラグインを読み込むよう指示します。
# traefik.ymlexperimental: plugins: sigsciwaf: moduleName: "github.com/signalsciences/sigsci-traefik-plugin" version: "v1.0.0"動的設定
次に、動的設定ファイル (例 : dynamic.yml) でミドルウェアを設定します。ここで、プラグインの動作をカスタマイズできます。詳細については、次のセクションの設定オプションのリストを参照してください。
123456789101112131415161718# dynamic.ymlhttp: routers: my-router: rule: "Host(`example.com`)" service: "my-service" middlewares: - "sigsci-waf" # Enable the middleware for this router
middlewares: sigsci-waf: plugin: sigsciwaf: # All configuration options are optional and have sensible defaults. # See the options list below for more details. agentNetwork: "unix" agentAddress: "/var/run/sigsci.sock" timeout: "100ms"設定
これらのオプション設定は、動的設定でご利用になれます。
| Name | 種類 | 説明 | デフォルト |
maxContentLength | int64 | 検査対象とするリクエストボディの最大サイズ (バイト単位)。 | 100000 |
allowUnknownContentLength | bool | 長さが不明なリクエストボディ (例 : チャンクエンコーディング) の検査を可能にします。 | false |
anomalySize | int64 | 異常検査をトリガーするレスポンスサイズ (バイト単位)。 | 524288(512KB) |
anomalyDuration | string | 異常検査をトリガーするレスポンス時間 (例 : 「1秒」)。 | 1s |
serverIdentifier | string | このサーバーインスタンスのカスタム識別子です。 | traefik |