アーキテクチャー


Red Hat Advanced Cluster Security for Kubernetes 4.7

システムアーキテクチャー

Red Hat OpenShift Documentation Team

概要

Red Hat Advanced Cluster Security for Kubernetes アーキテクチャーの概要および詳細を説明します。

第1章 Red Hat Advanced Cluster Security for Kubernetes アーキテクチャー

ここでは、Red Hat Advanced Cluster Security for Kubernetes のアーキテクチャーと概念を説明します。

1.1. Red Hat Advanced Cluster Security for Kubernetes アーキテクチャーの概要

Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、大規模なデプロイメントに対応した分散アーキテクチャーを使用しており、基盤となる OpenShift Container Platform ノードまたは Kubernetes ノードへの影響を最小限に抑えるように最適化されています。

RHACS アーキテクチャー

次の図は、StackRox Scanner と Scanner V4 コンポーネントを含むアーキテクチャーを示しています。Scanner V4 のインストールは任意ですが、インストールするとさらなる利点が得られます。

Red Hat Advanced Cluster Security for Kubernetes の Kubernetes 向けアーキテクチャー

OpenShift Container Platform または Kubernetes クラスターにコンテナーセットとして RHACS をインストールします。RHACS には次のサービスが含まれています。

  • 1 つのクラスターにインストールする Central サービス
  • RHACS の保護対象の各クラスターにインストールするセキュアクラスターサービス

これらの主要サービスに加え、RHACS は他の外部コンポーネントとも対話して、クラスターのセキュリティーを強化します。

インストールの相違点

Operator を使用して OpenShift Container Platform に RHACS をインストールすると、RHACS はすべてのセキュアクラスターに Scanner の軽量バージョンをインストールします。この軽量版のスキャナーにより、統合された OpenShift イメージレジストリー内のイメージのスキャンが可能になります。default 値を使用した Helm インストールの手法で、OpenShift Container Platform または Kubernetes に RHACS をインストールすると、Scanner の軽量バージョンはインストールされません。Helm を使用してセキュアなクラスターに軽量 Scanner をインストールするには、scanner.disable=false パラメーターを設定する必要があります。roxctl インストール方法を使用して、軽量 Scanner をインストールすることはできません。

1.2. Central サービス

Central サービスは 1 つのクラスターにインストールします。このサービスには次のコンポーネントが含まれています。

  • Central: RHACS アプリケーション管理インターフェイスおよびサービスです。API 対話とユーザーインターフェイス (RHACS ポータル) アクセスを処理します。同じ Central インスタンスを使用して、複数の OpenShift Container Platform または Kubernetes クラスターを保護できます。
  • Central DB: Central DB は RHACS のデータベースで、すべてのデータ永続性を処理します。現在、PostgreSQL 13 をベースにしています。
  • Scanner V4: バージョン 4.4 以降、RHACS にはコンテナーイメージをスキャンするための Scanner V4 脆弱性スキャナーが含まれています。Scanner V4 は、Clair スキャナーにも利用されている ClairCore 上に構築されています。Scanner V4 は、言語および OS 固有のイメージコンポーネントのスキャンをサポートしています。バージョン 4.4 では、Scanner V4 によってノードおよびプラットフォームのスキャン機能がサポートされるまで、これらの機能を提供するために、この Scanner を StackRox Scanner と組み合わせて使用する必要があります。Scanner V4 には、Indexer、Matcher、および DB コンポーネントが含まれています。

    • Scanner V4 Indexer: Scanner V4 Indexer は、以前はイメージ分析と呼ばれていたイメージのインデックス作成を実行します。Indexer は、イメージとレジストリーの認証情報を指定されると、レジストリーからイメージを取得します。ベースオペレーティングシステムを検索し、システムが存在する場合はそのパッケージを検索します。指定されたイメージの結果を含むインデックスレポートを保存および出力します。
    • Scanner V4 Matcher: Scanner V4 Matcher は、脆弱性の照合を実行します。Central サービスの Scanner V4 Indexer がイメージにインデックスを作成した場合、Matcher はその Indexer からインデックスレポートを取得し、そのレポートを Scanner V4 データベースに保存されている脆弱性と照合します。セキュアクラスターサービスの Scanner V4 Indexer がインデックス作成を実行した場合、Matcher はその Indexer から送信されたインデックスレポートを使用して、脆弱性と照合します。また、Matcher は脆弱性データを取得し、Scanner V4 データベースを最新の脆弱性データで更新します。Scanner V4 Matcher は、イメージの最終結果を含む脆弱性レポートを出力します。
    • Scanner V4 DB: このデータベースには、すべての脆弱性データとインデックスレポートを含む、Scanner V4 の情報が保存されます。Central がインストールされているクラスター上の Scanner V4 DB には、永続ボリューム要求 (PVC) が必要です。
  • StackRox Scanner: StackRox Scanner は、RHACS のデフォルトのスキャナーです。バージョン 4.4 で、新しいスキャナーである Scanner V4 が追加されました。StackRox Scanner は、Clair v2 オープンソーススキャナーのフォークから生まれました。RHCOS のノードスキャンとプラットフォームスキャンには、このスキャナーを引き続き使用する必要があります。
  • Scanner-DB: このデータベースには、StackRox Scanner のデータが含まれています。

RHACS のスキャナーは、各イメージレイヤーを分析してベースオペレーティングシステムを特定し、プログラミング言語パッケージとオペレーティングシステムパッケージマネージャーによってインストールされたパッケージを識別します。スキャナーは、さまざまな脆弱性ソースからの既知の脆弱性とスキャン結果を照合します。さらに、StackRox Scanner が、ノードのオペレーティングシステムとプラットフォームの脆弱性を特定します。これらの機能は、今後のリリースで Scanner V4 に追加される予定です。

1.2.1. 脆弱性データソース

脆弱性のソースは、システムで使用されるスキャナーごとに異なります。RHACS には、StackRox Scanner と Scanner V4 の 2 つのスキャナーが含まれています。デフォルトのスキャナー StackRox Scanner は、リリース 4.6 以降で非推奨になりました。Scanner V4 がリリース 4.4 で導入され、こちらが推奨のイメージスキャナーです。

1.2.1.1. StackRox Scanner ソース

StackRox Scanner は、次の脆弱性ソースを使用します。

1.2.1.2. Scanner V4 ソース

Scanner V4 は次の脆弱性ソースを使用します。

Red Hat VEX

リリース 4.6 以降で使用されます。このソースは、脆弱性データを Vulnerability Exploitability eXchange (VEX) 形式で提供します。RHACS は VEX の利点を活用して、脆弱性データの初期読み込みに必要な時間と脆弱性データの保存に必要な領域を大幅に削減します。

RHACS バージョン 4.5 などの OVAL を使用する RHACS バージョンとバージョン 4.6 などの VEX を使用するバージョンでスキャンする場合は、RHACS でリストされる脆弱性の数が異なる場合があります。たとえば、RHACS では、ステータスが "under investigation" の脆弱性は表示されなくなりましたが、これらの脆弱性は OVAL データを使用する以前のバージョンには含まれていました。

OVAL、Common Security Advisory Framework バージョン 2.0 (CSAF)、VEX の使用に関する情報などの Red Hat セキュリティーデータの詳細は、The future of Red Hat security data を参照してください。

Red Hat CVE Map
これは、Red Hat Container Catalog に表示されるイメージの VEX データとともに使用されます。
OSV

これは、Go、Java、JavaScript、Python、Ruby などの言語関連の脆弱性に使用されます。このソースは、GitHub Security Advisory (GHSA) ID など、脆弱性の CVE ID 以外の脆弱性 ID を提供する場合があります。

注記

RHACS は、Apache License 2.0OSV.dev で利用可能な OSV データベースを使用します。

NVD

ベンダーが情報を提供していない場合に情報のギャップを埋めるなど、さまざまな目的で使用されます。たとえば、Alpine は、詳細、CVSS スコア、重大度、公開日を提供していません。

注記

この製品は、NVD API を使用していますが、NVD による承認や認定を受けていません。

追加の脆弱性ソース
Scanner V4 Indexer ソース

Scanner V4 Indexer は、次のファイルを使用して Red Hat コンテナーのインデックスを作成します。

  • repository-to-cpe.json: RPM リポジトリーを関連する CPE にマッピングします。これは、RHEL ベースのイメージの脆弱性を照合するために必要です。
  • container-name-repos-map.json : コンテナー名と、それぞれのリポジトリーを照合します。

1.3. セキュアクラスターサービス

Red Hat Advanced Cluster Security を使用して、保護する各クラスターにセキュアクラスターサービスをインストールします。セキュアクラスターサービスには、次のコンポーネントが含まれています。

  • Sensor: クラスターの分析と監視を行うサービスです。OpenShift Container Platform または Kubernetes API および Collector イベントをリッスンして、クラスターの現在の状態を報告します。RHACS ポリシーに基づき、デプロイタイムおよびランタイムの違反もトリガーします。さらに、ネットワークポリシーの適用、RHACS ポリシーの再処理の開始、Admission コントローラーとの対話など、すべてのクラスターの対話も担当します。
  • Admission Controller: ユーザーが RHACS のセキュリティーポリシーに違反するワークロードを作成するのを防ぎます。
  • Collector: クラスターノード上のコンテナーアクティビティーを分析および監視します。コンテナーのランタイムとネットワークアクティビティーの情報を収集し、収集したデータを Sensor に送信します。
  • StackRox Scanner: Kubernetes では、セキュアクラスターサービスに、オプションのコンポーネントとして Scanner-slim が含まれています。一方、OpenShift Container Platform では、OpenShift Container Platform 統合レジストリーと、必要に応じて他のレジストリー内のイメージをスキャンするために、RHACS によって各セキュアクラスターに Scanner-slim バージョンがインストールされます。
  • Scanner-DB: このデータベースには、StackRox Scanner のデータが含まれています。
  • Scanner V4: Scanner V4 が有効な場合、Scanner V4 のコンポーネントがセキュアクラスターにインストールされます。

    • Scanner V4 Indexer: Scanner V4 Indexer は、以前はイメージ分析と呼ばれていたイメージのインデックス作成を実行します。Indexer は、イメージとレジストリーの認証情報を指定されると、レジストリーからイメージを取得します。ベースオペレーティングシステムを検索し、システムが存在する場合はそのパッケージを検索します。指定されたイメージの結果を含むインデックスレポートを保存および出力します。
    • Scanner V4 DB: このコンポーネントは、Scanner V4 が有効な場合にインストールされます。このデータベースには、インデックスレポートを含む Scanner V4 の情報が格納されます。最適なパフォーマンスを得るには、Scanner V4 DB 用に永続ボリューム要求 (PVC) を設定してください。

      注記

      セキュアクラスターサービスが Central サービスと同じクラスターにインストールされ、同じ namespace にインストールされている場合、セキュアクラスターサービスは Scanner V4 コンポーネントをデプロイしません。代わりに、Central サービスに Scanner V4 のデプロイメントがすでに含まれているとみなします。

1.4. 外部コンポーネント

Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、以下の外部コンポーネントと対話します。

  • サードパーティーシステム: RHACS を、CI/CD パイプライン、イベント管理 (SIEM) システム、ロギング、電子メールなどの他のシステムと統合できます。
  • roxctl: roxctl は、RHACS でコマンドを実行するためのコマンドラインインターフェイス (CLI) です。
  • イメージレジストリー: RHACS をさまざまなイメージレジストリーと統合し、RHACS を使用してイメージをスキャンおよび表示できます。RHACS は、セキュアクラスターで検出されたイメージプルシークレットを使用して、アクティブなイメージのレジストリー統合を自動的に設定します。ただし、非アクティブなイメージをスキャンするには、レジストリー統合を手動で設定する必要があります。
  • definitions.stackrox.io: RHACS は、definitions.stackrox.io エンドポイントでさまざまな脆弱性フィードからのデータを集約し、この情報を Central に渡します。フィードには、一般的な National Vulnerability Database (NVD) データと、Alpine、Debian、Ubuntu などのディストリビューション固有のデータが含まれます。
  • collector-modules.stackrox.io: Central は、collector-modules.stackrox.io にアクセスして、サポートされているカーネルモジュールを取得し、これらのモジュールを Collector に渡します。

1.5. サービス間の対話

このセクションでは、RHACS サービスがどのように対話するかを説明します。

表1.1 RHACS と Scanner V4
コンポーネント方向コンポーネント説明

Central

Scanner V4 Indexer

Central は、特定のイメージをダウンロードしてインデックス作成 (分析) するように Indexer に要求します。このプロセスにより、インデックスレポートが作成されます。Scanner V4 Indexer は、インデックス作成プロセスを支援するマッピングファイルを Central に要求します。

Central

Scanner V4 Matcher

Central は、特定のイメージを既知の脆弱性と照合するように Scanner V4 Matcher に要求します。このプロセスにより、最終的なスキャン結果、つまり脆弱性レポートが生成されます。Scanner V4 Matcher は、Central から最新の脆弱性を要求します。

Sensor

Scanner V4 Indexer

Operator を使用してデプロイされた Red Hat OpenShift 環境の場合、またはスキャン委譲が使用されている場合、SecuredCluster のスキャンがデフォルトで有効になります。SecuredCluster のスキャンが有効になっている場合、Sensor は Scanner V4 にイメージのインデックス作成を要求します。Scanner V4 Indexer は、Central が同じ namespace に存在しない限り、インデックス作成プロセスを支援するマッピングファイルを Sensor に要求します。その場合は、代わりに Central と通信します。

Scanner V4 Indexer

Image Registries

Indexer は、レジストリーからイメージのメタデータを取得してイメージのレイヤーを確認し、以前にインデックス作成されていない各レイヤーをダウンロードします。

Scanner V4 Matcher

Scanner V4 Indexer

Scanner V4 Matcher は、イメージのインデックス作成の結果、つまりインデックスレポートを Indexer に要求します。次に、レポートを使用して関連する脆弱性を特定します。この対話は、イメージのインデックスが Central クラスターで作成された場合にのみ発生します。この対話は、セキュアクラスターでインデックス作成されたイメージの脆弱性を Scanner V4 が照合する場合には発生しません。

Scanner V4 Indexer

Scanner V4 DB

Indexer は、イメージレイヤーのダウンロードとインデックス作成が 1 回だけ行われるように、インデックス作成の結果に関連するデータを保存します。これにより、不必要なネットワークトラフィックやその他のリソースの使用が防止されます。

Scanner V4 Matcher

Scanner V4 DB

Scanner V4 Matcher は、すべての脆弱性データをデータベースに保存し、このデータを定期的に更新します。Scanner V4 インデクサーは、脆弱性照合プロセスの一環としてこのデータもクエリーします。

Sensor

Central

Central と Sensor 間の双方向通信です。Sensor は、Sensor バンドル設定の更新をダウンロードするために定期的に Central をポーリングします。また、セキュアクラスターで観察されたアクティビティーと観察されたポリシー違反のイベントも送信します。Central は Sensor と通信して、有効なポリシーに対してすべてのデプロイメントの再処理を強制します。

Collector

Sensor

Collector は Sensor と通信し、すべてのイベントをクラスターのそれぞれの Sensor に送信します。サポートされる OpenShift Container Platform クラスターでは、Collector はノードにインストールされているソフトウェアパッケージを分析し、それらを Sensor に送信して、後で脆弱性の有無をスキャンできるようにします。Collector は、不明ドライバーも Sensor に要求します。Sensor は、Collector にコンプライアンススキャン結果を要求します。さらに Sensor は、Central から外部の Classless Inter-Domain Routing 情報を受け取り、それを Collector にプッシュします。

Admission コントローラー

Sensor

Sensor は、適用するセキュリティーポリシーのリストを Admission コントローラーに送信します。Admission コントローラーは、セキュリティーポリシー違反アラートを Sensor に送信します。Admission コントローラーは、必要に応じて Sensor にイメージスキャンを要求することもできます。

Admission コントローラー

Central

これは一般的ではありません。ただし、Central エンドポイントが判明しており、かつ Sensor が使用できない場合、Admission コントローラーは Central と直接通信できます。

表1.2 RHACS と StackRox Scanner
コンポーネント方向対話先説明

Central

Scanner

Central と Scanner の間の双方向通信です。Central は Scanner にイメージスキャンを要求し、Scanner は Central に CVE データベースの更新を要求します。

Central

definitions.stackrox.io

Central は、definitions.stackrox.io エンドポイントに接続して、集約された脆弱性情報を受信します。

Central

collector-modules.stackrox.io

Central は、サポートされているカーネルモジュールを collector-modules.stackrox.io からダウンロードします。

Central

イメージレジストリー

Central はイメージレジストリーにクエリーを実行して、イメージメタデータを取得します。たとえば、RHACS ポータルで Dockerfile の手順を表示します。

Scanner

イメージレジストリー

Scanner はイメージレジストリーからイメージをプルして、脆弱性を特定します。

Sensor

Central

Central と Sensor 間の双方向通信です。Sensor は、Sensor バンドル設定の更新をダウンロードするために定期的に Central をポーリングします。また、セキュアクラスターで観察されたアクティビティーと観察されたポリシー違反のイベントも送信します。Central は Sensor と通信して、有効なポリシーに対してすべてのデプロイメントの再処理を強制します。

Sensor

Scanner

Sensor は、セキュアクラスターにインストールされている軽量スキャナーと通信できます。この接続により、Central がレジストリーにアクセスできないシナリオでも、Sensor はセキュアクラスターから直接レジストリーにアクセスできるようになります。Scanner は Sensor から更新されたデータを要求し、Sensor はこれらの要求を Central に転送し、Central は要求されたデータを definitions.stackrox.io からダウンロードします。

Collector

Sensor

Collector は Sensor と通信し、すべてのイベントをクラスターのそれぞれの Sensor に送信します。サポートされる OpenShift Container Platform クラスターでは、Collector はノードにインストールされているソフトウェアパッケージを分析し、それらを Sensor に送信して、後で脆弱性の有無をスキャンできるようにします。Collector は、不明ドライバーも Sensor に要求します。Sensor は、Collector にコンプライアンススキャン結果を要求します。さらに Sensor は、Central から外部の Classless Inter-Domain Routing 情報を受け取り、それを Collector にプッシュします。

Admission コントローラー

Sensor

Sensor は、適用するセキュリティーポリシーのリストを Admission コントローラーに送信します。Admission コントローラーは、セキュリティーポリシー違反アラートを Sensor に送信します。Admission コントローラーは、必要に応じて Sensor にイメージスキャンを要求することもできます。

Admission コントローラー

Central

これは一般的ではありません。ただし、Central エンドポイントが判明しており、かつ Sensor が使用できない場合、Admission コントローラーは Central と直接通信できます。

1.6. RHACS 接続プロトコルとデフォルトポート

RHACS のコンポーネントは、さまざまなデフォルトポートおよび接続プロトコルを使用します。システムとファイアウォールの設定によっては、特定のポートでトラフィックを許可するようにファイアウォールを設定する必要がある場合があります。

次の表は、RHACS 内の一部の接続、および RHACS と外部コンポーネント間のデフォルトのポートとプロトコルを示しています。これは、受信および送信クラスタートラフィックを許可するようにファイアウォールを設定する場合に役立ちます。

ただし、シナリオによっては、より詳細な情報が必要になる場合があります。たとえば、ファイアウォールがクラスタールーターに統合されている場合は、1 つのクラスター内ではあるが、異なる IP ネットワーク上にある可能性がある接続用にポートを指定する必要が出てくる場合があります。このシナリオでは、OpenShift Container Platform および Kubernetes クラスターで RHACS ネットワークポリシー YAML ファイルを使用して、設定が必要な可能性がある接続とポートを決定できます。

表1.3 コンポーネント間の RHACS 接続
コンポーネントまたは外部エンティティー接続タイプポート関連情報

Central および Scanner V4 Indexer

gRPC

8443

 

セキュアなクラスター上の Central と Sensor

  • TCP/HTTPS
  • gRPC

443

Sensor と Central は主に、Sensor から Central のポート 443 に開始される双方向 gRPC ストリームを介して通信します。

Central とユーザー (CLI)

  • gRPC
  • HTTPS (--force-http1 オプションを含む)

443

--force-http1 オプションの詳細は、roxctl コマンドオプションを参照してください。

Central と脆弱性フィード

HTTPS

443

デフォルトで definitions.stackrox.io に接続します。

Collector から Sensor へ

gRPC

443

これは、Collector によって Sensor のポート 443 に開始される双方向 gRPC 接続です。

Collector (Compliance) から Sensor へ

gRPC

8444

ノードスキャンが OpenShift Container Platform リリース 4 で有効にされている場合、この接続は Collector Pod で実行されたことを準拠するために Sensor によって開始されます。

Scanner から Scanner-DB へ

TCP

5432

 

Scanner V4 Indexer から Central へ

HTTPS

443

 

Scanner V4 Indexer と Matcher から Scanner V4 DB へ

TCP

5432

 

Sensor と Admission Controller

gRPC

443

これは、Admission Controller によって Sensor のポート 443 に開始される双方向 gRPC ストリームです。これは、委譲されたスキャンシナリオまたは OpenShift Container Platform のセキュアなクラスターで発生します。

法律上の通知

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.