この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。

概要

NeuVector 5.xは、Rancherと統合されたオープンソースのコンテナ中心のセキュリティプラットフォームです。NeuVectorは、実行時に重要なアプリケーションとデータのためのリアルタイムのコンプライアンス、可視性、および保護を提供します。NeuVectorは、ファイアウォール、コンテナプロセス/ファイルシステムの監視、CISベンチマークによるセキュリティ監査、および脆弱性スキャンを提供します。Rancherのセキュリティに関する詳細情報は、セキュリティドキュメントをご覧ください。

NeuVectorは、*Apps*またはRancher UIの*Cluster Tools*ボタンを通じてインストールできるHelmチャートを介して有効にできます。Helmチャートがインストールされると、ユーザーは簡単に Rancher内でNeuVectorクラスターをデプロイおよび管理することができます

RancherでSUSE Securityをインストールする

Harvester Helmチャートは、ユーザーが直接ナビゲートしてNeuVectorクラスターをデプロイおよび管理できるRancher内のNeuVector UIへのアクセスを管理するために使用されます。

Appsを通じてNeuVectorチャートにナビゲートしてインストールするには:

  1. *☰ > クラスター管理*をクリックします。

  2. Clustersページで、NeuVectorをデプロイしたいクラスターに移動し、*Explore*をクリックします。

  3. Apps  Chartsに移動し、チャートリポジトリから*NeuVector*をインストールします。

  4. 異なるクラスタータイプには異なるコンテナランタイムが必要です。Helmチャートの値を設定する際は、*コンテナランタイム*セクションに移動し、クラスタータイプに応じてランタイムを選択してください。最後に、再度*Install*をクリックします。

いくつかの例は以下の通りです:

  • K3sおよびRKE2: k3scontainerd

  • AKS: v1.19以降の場合は`containerd`

  • EKS: v1.22以前の場合は`docker`;v1.23以降の場合は`containerd`

  • GKE: containerd(詳細は Google docsを参照してください)

インストール中に選択できるコンテナランタイムエンジンは1つだけです。

NeuVectorチャートをCluster Toolsを通じてナビゲートしてインストールするには:

  1. *☰ > クラスター管理*をクリックします。

  2. Clustersページで、NeuVectorをデプロイしたいクラスターに移動し、*Explore*をクリックします。

  3. 左のナビゲーションバーの下部にある*Cluster Tools*をクリックします。

  4. 上記のステップ4を繰り返して、適切なコンテナランタイムを選択し、再度*インストール*をクリックします。

Rancher UIからSUSE Securityにアクセスする

  1. NeuVectorがインストールされているクラスターのクラスターエクスプローラーに移動します。左のナビゲーションバーで*NeuVector*をクリックします。

  2. 外部リンクをクリックしてNeuVector UIに移動します。リンクが選択されると、ユーザーはNeuVector UIにアクセスするために`END USER LICENSE AGREEMENT`を受け入れる必要があります。

Rancher UIからSUSE Securityをアンインストールする

アプリからアンインストールするには:

  1. *☰ > クラスター管理*をクリックします。

  2. *アプリ*の下で、*インストール済みアプリ*をクリックします。

  3. `cattle-neuvector-system`の下で、NeuVectorアプリ(必要に応じて関連するCRDも)を選択し、*削除*をクリックします。

Cluster Toolsからアンインストールするには:

  1. *☰ > クラスター管理*をクリックします。

  2. 画面の左下にある*Cluster Tools*をクリックし、次にNeuVectorチャートの下にあるゴミ箱アイコンをクリックします。必要に応じて`Delete the CRD associated with this app`を選択し、次に*削除*をクリックします。

GitHubリポジトリ。

NeuVectorプロジェクトは こちらで利用可能です。

マニュアル

NeuVectorのマニュアルは こちらにあります。

アーキテクチャ

NeuVectorのセキュリティソリューションには、4種類のセキュリティコンテナが含まれています:コントローラー、エンフォーサー、マネージャー、スキャナー。コントローラー、エンフォーサー、マネージャーの機能をすべて1つのコンテナに統合する特別なコンテナであるAll-in-Oneも提供され、主にDockerネイティブデプロイメント用です。Updaterもあり、実行するとCVEデータベースが更新されます。

  • *コントローラ:*NeuVector Enforcerコンテナを管理し、管理コンソール用のREST APIを提供します。

  • *Enforcer:*セキュリティポリシーを強制します。

  • *マネージャー:*NeuVectorプラットフォームを管理するためのWeb UIおよびCLIコンソールを提供します。

  • *All-in-One:*コントローラー、エンフォーサー、マネージャーを含みます。

  • *スキャナー:*イメージ、コンテナ、ノードの脆弱性およびコンプライアンススキャンを実行します。

  • *アップデーター:*NeuVectorのCVEデータベースを更新します(実行時);スキャナーポッドを再デプロイします。

NeuVectorセキュリティコンテナ
Figure 1. NeuVectorセキュリティコンテナ
NeuVectorアーキテクチャ
Figure 2. NeuVectorアーキテクチャ

NeuVectorのアーキテクチャについて詳しくは、 こちらをご覧ください。

CPUおよびメモリの割り当て

以下は、デフォルトのデプロイメントにおけるNeuVectorチャートインストールのための最小推奨コンピューティングリソースです。リソース制限は設定されていないことに注意してください。

コンテナ CPU - リクエスト メモリ - リクエスト

コントローラ

3(コントローラーごとに1GB 1vCPUが必要)

*

Enforcer

すべてのノードで(500MB .5vCPU)

1GB

マネージャ

1(500MB .5vCPU)

*

Scanner (スキャナ)

3 (100MB .5vCPU)

*

  • コントローラー、マネージャー、スキャナーコンテナを合わせて、合計1GBのメモリが必要です。

強化されたクラスターサポート - CalicoおよびCanal

RKE2

  • NeuVectorのコンポーネントであるコントローラーとエンフォーサーは、PSPがtrueに設定されている場合にデプロイ可能です。

NeuVectorチャートバージョン100.0.0+up2.2.0にのみ適用されます:

  • マネージャー、スキャナー、アップデーターコンポーネントには、以下に示すように追加の設定が必要です。

    kubectl patch deploy neuvector-manager-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
    kubectl patch deploy neuvector-scanner-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
    kubectl patch cronjob neuvector-updater-pod -n cattle-neuvector-system --patch '{"spec":{"jobTemplate":{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}}}'

    強化されたクラスター環境のために、追加の設定を行う必要があります。

    以下に示すように、RKE2およびK3sの強化されたクラスターの両方で設定を更新する必要があります。
    1. *☰ > クラスター管理*をクリックします。

    2. 作成したクラスターに移動し、*探索*をクリックします。

    3. 左のナビゲーションバーで*アプリ*をクリックします。

    4. NeuVectorバージョン`100.0.1+up2.2.2`をインストール(またはアップグレード)します。

      1. 編集オプション > *その他の設定*の下で、ボックスにチェックを入れて*ポッドセキュリティポリシー*を有効にします。zero`より大きい値を`Manager runAsUser IDScanner runAsUser ID、および`Updater runAsUser ID`に入力する必要があることに注意してください。

        RKE2およびK3s強化クラスターのためにPSPを有効にする
    5. 右下の*インストール*をクリックして完了します。

SELinux対応クラスターサポート - CalicoおよびCanal

RKE2クラスターでSELinuxを有効にするには、以下の手順に従ってください。

  • NeuVectorのコンポーネントであるコントローラーとエンフォーサーは、PSPがtrueに設定されている場合にデプロイ可能です。

NeuVectorチャートバージョン100.0.0+up2.2.0にのみ適用されます:

  • マネージャー、スキャナー、アップデーターコンポーネントには、以下に示すように追加の設定が必要です。

kubectl patch deploy neuvector-manager-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
kubectl patch deploy neuvector-scanner-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
kubectl patch cronjob neuvector-updater-pod -n cattle-neuvector-system --patch '{"spec":{"jobTemplate":{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}}}'

エアギャップ環境におけるクラスターサポート

  • すべてのNeuVectorコンポーネントは、追加の設定なしでエアギャップ環境のクラスターにデプロイ可能です。

サポートの制限

  • 現在、管理者とクラスター所有者のみがサポートされています。

  • Fleetのマルチクラスター展開はサポートされていません。

  • NeuVectorはWindowsクラスターではサポートされていません。

その他の制限

  • 現在、NeuVectorパートナーチャートが既に存在する場合、NeuVector機能チャートのインストールが失敗します。この問題を回避するために、NeuVectorパートナーチャートをアンインストールし、NeuVector機能チャートを再インストールしてください。

  • コントローラーが準備できていないとき、NeuVectorのUIはRancherのUIからアクセスできないことがあります。この間、コントローラーは再起動を試み、コントローラーがアクティブになるまでに数分かかります。

  • NeuVectorチャートをインストールする際、異なるクラスタータイプに対してコンテナランタイムは自動的に検出されません。これを回避するために、コンテナランタイムを手動で指定することができます。