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

クラスター スキャンを実行するためのカスタム ベンチマーク バージョンの作成

各ベンチマーク バージョンは、 kube-bench ツールによって実行されるコンプライアンス テストを定義する一連のテスト構成ファイルを定義します。 rancher-compliance アプリケーションは、コンプライアンス ベンチマーク アプリケーション メニューにリストされているいくつかのデフォルトのベンチマーク バージョンをインストールします。

ただし、一部の Kubernetes クラスターのセットアップでは、ベンチマーク テストのカスタム設定が必要な場合があります。たとえば、Kubernetes の設定ファイルや証明書へのパスが、アップストリームの CIS ベンチマークがそれらを探す標準の場所とは異なる場合があります。

ただし、次の場合にはカスタム構成または修正が必要になることがあります:

  • 非標準のファイルの場所:Kubernetes のバイナリ、構成、または証明書のパスがアップストリーム ベンチマークのデフォルトから逸脱している場合。

    例:従来の Kubernetes とは異なり、K3s はコントロール プレーン コンポーネントを単一のバイナリにバンドルします。したがって、--anonymous-auth フラグの存在と構成は、journalctl の K3s のログで確認する必要があり、kube-apiserver プロセス チェック (ps) では確認しないでください。

  • 代替リスク軽減策:セットアップがチェックを満たさないが、正当な理由で同等に効果的な補償コントロールがある場合。または、単にその設計のためにチェック要件に関心がない場合。

    例:デフォルトでは、K3sはapiサーバーをk3sプロセス内に埋め込んでいます。API サーバー ポッドの仕様ファイルがないため、後者のファイル権限を確認する必要はありません。

1.カスタム ベンチマーク バージョンの ConfigMap を準備する

カスタム ベンチマーク バージョンを作成するには、まずベンチマーク バージョンの設定ファイルを含む ConfigMap を作成し、スキャンを実行したい Kubernetes クラスターにアップロードする必要があります。

カスタム ベンチマーク バージョンの ConfigMap を準備するには、foo という名前のカスタム ベンチマーク バージョンを追加したいと仮定します。

  1. foo という名前のディレクトリを作成し、このディレクトリ内に kube-bench ツールが探すすべての設定 YAML ファイルを配置します。たとえば、ここに一般的な CIS 1.5 ベンチマーク バージョン https://github.com/aquasecurity/kube-bench/tree/master/cfg/cis-1.5 の設定 YAML ファイルがあります。

  2. テストすべきすべてのコンポーネントを含む完全な config.yaml ファイルを配置します。

  3. `target_mapping`の`config.yaml`セクションにベンチマークバージョン名を追加します。

     target_mapping:
       "foo":
         - "master"
         - "node"
         - "controlplane"
         - "etcd"
         - "policies"
  4. このディレクトリをConfigMapを作成してKubernetesクラスターにアップロードします。

     kubectl create configmap -n <namespace> foo --from-file=<path to directory foo>

2.クラスターページで、カスタム ベンチマーク バージョンを追加したいクラスターに移動し、探索をクリックします。

  1. 左上隅で、*☰ > クラスター管理*をクリックします。

  2. *クラスター*ページで、カスタムベンチマークを追加したいクラスターに移動し、*探索*をクリックします。

  3. 左のナビゲーションバーで*コンプライアンス > ベンチマークバージョン*をクリックします。

  4. 作成]をクリックします。

  5. *名前*とカスタムベンチマークバージョンの説明を入力します。

  6. ベンチマークバージョンが適用されるクラスターのプロバイダーを選択します。

  7. ドロップダウンからアップロードしたConfigMapを選択します。

  8. 適用可能な最小および最大Kubernetesバージョンの制限を追加します。

  9. 作成]をクリックします。

3.カスタム ベンチマーク バージョンの新しいプロファイルを作成します。

カスタム ベンチマーク バージョンを使用してスキャンを実行するには、このベンチマーク バージョンを指す新しいプロファイルを追加する必要があります。

  1. 左上隅で、*☰ > クラスター管理*をクリックします。

  2. *クラスター*ページで、カスタムベンチマークを追加したいクラスターに移動し、*探索*をクリックします。

  3. 左のナビゲーションバーで*コンプライアンス > スキャン*をクリックします。

  4. 作成]をクリックします。

  5. *名前*と説明を入力します。この例では、`foo-profile`と名付けます。

  6. ドロップダウンからベンチマークバージョンを選択します。

  7. 作成]をクリックします。

4.カスタム ベンチマーク バージョンを使用してスキャンを実行します。

カスタム ベンチマーク バージョン`foo`を指すプロファイルが作成されると、新しいスキャンを作成してベンチマーク バージョンのカスタムテスト設定を実行できます。

スキャンを実行するには、

  1. 左上隅で、*☰ > クラスター管理*をクリックします。

  2. *クラスター*ページで、カスタムベンチマークを追加したいクラスターに移動し、*探索*をクリックします。

  3. 左のナビゲーションバーでCISベンチマーク  スキャンをクリックします。

  4. 作成]をクリックします。

  5. 新しいクラスターのスキャンプロファイルを選択します。

  6. 作成]をクリックします。

*結果:*スキャン結果を含むレポートが生成されます。結果を表示するには、表示されるスキャンの名前をクリックします。