注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
agent worker および direct connection runtime に加えて、agent proxy runtime を使用して、Foundry 内のサービスがインターネット経由ではアクセスできないネットワーク内のシステムにアクセスするためのネットワークパスを提供できます。Agent proxy を使用すると、Foundry 内のアプリケーションはインターネット経由でソースに接続しているかのように動作し、ダウンタイムを防ぐために交互のメンテナンスウィンドウを許可する複数のエージェントで構成できます。以下のガイドに従って、agent proxy を設定および管理してください。
Agent proxy を使用するには、agent を設定する必要がありますが、追加の設定は不要です。同じエージェントは、特定のソースに割り当てる際の選択に基づいて、agent worker および agent proxy の両方として使用できます。
Data Connection で新しいソースを作成する際に、agent proxy runtime オプションを選択します。これは現在、REST API ソースタイプの設定時にのみ利用可能です。
Agent proxy runtime が必要なリソースにのみアクセスできるようにするため、多くのセキュリティ制御が利用可能です。
セキュリティ制御は、必須 で無効にできないものと、オプション でデフォルトでは有効になっていないものがあります。
以下のセキュリティ制御の構成が利用可能です:
セキュリティ制御 | 必須か? | 説明 |
---|---|---|
ソース構成の強制 | はい | Agent proxy を使用するソースに設定されたホスト名およびポートにトラフィックが常に制限されます。 |
エージェント許可リスト (Foundry) | オプション | Foundry に保存され、エージェントに送信されるトラフィックの上流で強制される許可リストを構成できます。この制御は、Foundry 内のエージェントリソースの所有者のみが変更できます。 |
エージェント許可リスト (ローカルファイル) | オプション | エージェントホストに保存され、ネットワーク内で実行されるエージェントプロセスによって強制される許可リストを構成できます。この制御は、エージェントホストへの SSH アクセスでのみ変更でき、エージェントソフトウェアによって強制されます。 |
エージェントホストファイアウォール | オプション | エージェントが到達できるターゲットシステムとの通信ができるようにするために、ホストレベルのファイアウォール制御を設定することを強くお勧めします。この制御は Foundry とは完全に独立しており、追加のセキュリティ層を提供します。 |
ソースに定義された URL のホスト名およびポートは、agent proxy に接続する際にそのホスト名およびポートにのみアクセスを制限します。他のホスト名やポートに接続しようとすると、プロキシから HTTP 403(未許可)応答コードが返されます。
この制御により、ソースが設定されている接続に制限することで、コード内で接続をインポートおよび使用する際の不正な接続を防止します。
このセキュリティ制御のみを使用する場合、特定のソースにエージェントを割り当てることができるユーザーは、エージェントホストから到達可能な任意のシステムに接続する権限を持つ信頼されたユーザーであることを確認してください。
エージェントが特定の IP アドレスまたは CIDR ブロックのセットにのみ通信できるようにするために、Foundry 内で許可リストを構成して、エージェントの接続性を制限できます。エージェントが割り当てられているソースに関係なく、この許可リストは適用されます。
これを構成するには、Agent settings に移動し、Advanced オプションを Manage Configuration セクションで切り替えます。YAML ファイルに、security
ブロックと同じインデントレベルで agentProxyConfiguration
ブロックを追加します。
エージェントが接続を許可されているポート付きの CIDR ブロックのリストを追加します。たとえば:
Copied!1 2 3 4 5 6 7
agentProxyConfiguration: allowListedCidrs: - cidrBlock: '192.168.1.1/32' # 特定のIPアドレス(192.168.1.1)を許可する port: 7000 # 開始ポート endPort: 9000 # 終了ポート - cidrBlock: '192.168.2.2/24' # サブネット(192.168.2.0/24)を許可する port: 443 # ポート番号
Foundryのエージェント許可リストで使用される同じ構成を、エージェントホスト自体のファイルに設定することもできます。これにより、Foundryのユーザーが構成を編集することを防ぎます。
この手順に従ってください。
agentProxyConfig
という名前のフォルダーを作成します ( magritte-bootvisor-<version>
と同じフォルダー)。agentProxyConfig
フォルダーに agentProxyConfig.yml
という名前のファイルを作成します。agentProxyConfig.yml
ファイルと agentProxyConfig
フォルダーは 必ず rootユーザーで作成し、エージェントがこのファイルやフォルダーに書き込みできないようにファイル権限を設定する必要があります。 agentProxyConfig.yml
ファイルが存在し、書き込み可能であったり、親ディレクトリのいずれかがエージェントによって書き込み可能であった場合、エージェントはエージェントプロキシ機能を実行しません。たとえば:
Copied!1 2 3 4 5 6
allowListedCidrs: - cidrBlock: '192.168.1.1/32' # 特定のIPアドレス(192.168.1.1)を指定 port: 7000 # 開始ポート endPort: 9000 # 終了ポート - cidrBlock: '192.168.2.2/24' # サブネット(192.168.2.2/24)を指定 port: 443 # 単一ポート
ネットワークトラフィックを監視し、厳密に必要な宛先のみに制限するために、エージェントホストでファイアウォールを設定することを強く推奨します。利用可能なファイアウォールや監視オプションは、エージェントを実行している Linux ディストリビューションや、組織のセキュリティベストプラクティスに依存します。