# F5

### Netacea F5プラグイン

F5ロードバランサーとの統合は、iRules LXモジュールに依存しています。

「**iRules**」は、F5環境におけるスクリプティングの総称です。一般的に、これはリクエストをF5を通じてどのようにロードバランシングするかを表現するために使用され、軽量なセキュリティツールも含まれます。コードブロックはリクエストのフェーズごとに分離されており、スクリプトは完全にF5固有の言語で記述できます。iRulesのドキュメントは[こちら](https://clouddocs.f5.com/api/irules/)で参照できます。

「**iRules LX**」は、より汎用的なスクリプト言語（JavaScriptなど）を使用できるようにするために追加されたiRulesの拡張機能です。ノードプロセス全体がサーバー上でF5統合と並行して実行され、リモートプロシージャコール（RPC）を介して関数を呼び出すことができます。ドキュメントは[こちら](https://clouddocs.f5.com/api/irules-lx/)で参照できます。

<figure><img src="https://2885909206-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKs3gGgxDF9S8O56fhTGU%2Fuploads%2Fgit-blob-0a48335d485b03714ef091e388941ec7c1974a78%2Fimage%20(13)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

F5統合の実装は、3つの主要な成果物で構成されています。Netaceaプラットフォームとのインターフェースとなる汎用モジュール、ILXServer（F5提供モジュール）を通じてRPCを提供するためのF5固有のラッパー、およびリクエスト処理ロジックとリモートメソッドへの呼び出しを処理するiRuleを実装しています。

### リクエストフロー

訪問者がNetacea/F5で保護されたサイトに初めてアクセスすると、プラグインはNetacea Protector APIサービスにクエリを送信します。訪問者が悪意のあるユーザーとして認識されている場合、プラグインは適切な緩和アクションを実行します。

ユーザーの有効性に関する情報を含むCookieがクライアントのデバイスに配置され、追加の識別に使用されるとともに、定期的に有効性が確認されます。\
\
プラグインは訪問者とセッションに関するログデータをNetacea Monitor Ingestサービスにストリーミングし、NetaceaのDetection Engineがユーザーが正当なアクターであるかどうかを確認するための追加分析を実行します。このアクションは非同期で行われるため、リクエストにレイテンシは追加されません。\
\
訪問者のアクティビティが悪意のあるものになった場合、Netacea Protector APIサービスが更新され、プラグインは適切な緩和を実行します。

以下の図と補足説明は、この実装におけるトラフィックフローを（概要レベルで）説明しています。\ <br>

<figure><img src="https://2885909206-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKs3gGgxDF9S8O56fhTGU%2Fuploads%2Fgit-blob-a63f79567595a5623d6b823713aee6b14b8bba99%2FGitbook_diagrams_F5.jpg?alt=media" alt=""><figcaption></figcaption></figure>

1. 訪問者がNetacea/F5で保護されたサイトをリクエストします。
2. Netacea F5プラグインがNetacea Protector APIサービスにクエリを送信し、訪問者が悪意のあるユーザーとして認識されているか、または安全であるかを確認します。
3. Webリクエストのコピーがログデータとして送信され、集合的な脅威インテリジェンス、機械学習、および行動分析を使用してリクエストが安全かどうかを判定します。
4. 分析結果が公開され、Netacea F5プラグインがそれを読み取り、このトラフィックに対してどの緩和戦略を使用すべきかを判断します。
5. リクエストが安全である場合、通常どおりオリジンに転送されます。
6. リクエストに緩和が必要な場合、適切なアクションが実行され、クライアントに提供されます。
