次の方法で共有


Helm を使用して Defender for Containers センサーをインストールする

この記事では、Helm を使用して、AKS、EKS、GKE クラスターに Microsoft Defender for Containers センサーをインストールして構成する方法について説明します。 前提条件、Defender for Containers の有効化、さまざまな環境に対する詳細な展開手順について説明します。

Defender for Containers では、自動プロビジョニングや Helm ベースのインストールなど、センサーをデプロイするための複数のデプロイ モデルがサポートされています。 Helm ベースのデプロイでは、センサーのバージョン管理とアップグレードのタイミングをより詳細に制御できますが、運用上の責任が変わります。 Helm ベースのデプロイを使用する場合は、次の点を考慮してください。

  • センサーのアップグレード: Helm ベースのデプロイを使用して、センサーのアップグレードとアップグレードのタイミングを管理します。 自動プロビジョニングは、Microsoft が管理するロールアウト スケジュールに従います。

  • 自動インストール フロー: Helm を使用してセンサーをデプロイする場合は、既存のデプロイとの競合を回避するために、Azure portal で自動インストール プロンプトと推奨事項をスキップします。

一般的な前提条件

Defender センサー のネットワーク要件の説明に従って、Defender for Containers センサーのすべての前提条件を実装します。

センサーの Helm チャートをインストールする

デプロイの種類に応じて、関連する手順に従って、Helm を使用して Defender for Containers センサーをインストールします。

[前提条件]

AKS 自動のみ: AKS Automatic に対して次のコマンドを実行します。

# Update Azure CLI to the latest version 
az upgrade 
  
# If you don't have the AKS preview extension installed yet 
az extension add --name aks-preview 
  
# Update the AKS extension specifically 
az extension update --name aks-preview

AKS と AKS オートマティック:

  • Helm バージョン 3.8 以降 (使用可能なバージョンでは OCI がサポートされています)

  • Azure CLI を インストール し、ターゲット クラスターのリソース グループ所有者ロールを持つアカウントに ログイン する必要があります。

  • ターゲット クラスターの Azure リソース ID

    AKS クラスターの Azure リソース ID の一覧を生成するには、 <SUBSCRIPTION_ID><RESOURCE_GROUP>で次のコマンドを使用します。

    az aks list \
    --subscription <SUBSCRIPTION_ID> \
    --resource-group <RESOURCE_GROUP> \
    --query "[].id" \
    -o tsv
    
  • 環境にポリシーの割り当てがあり、一般公開バージョンの Sensor がデプロイされる可能性があります。 インストールを続行する前に、競合するポリシーを確認して削除することをお勧めします。

    ポリシー割り当て ID が 64def556-fbad-4622-930e-72d1d5589bf5

    サブスクリプションのポリシー定義の一覧を確認し、このポリシー割り当てを検索して削除します。

    または、次のコマンドを使用して delete_conflicting_policies.sh スクリプトを実行します。

    delete_conflicting_policies.sh <CLUSTER_AZURE_RESOURCE_ID>
    

    このコマンドは、一般公開 (GA) バージョンの Defender for Containers を設定するためのリソース グループとサブスクリプション レベルのポリシーを削除します。 これは、構成しているクラスター以外のクラスターに影響する可能性があります。

Installation

install_defender_sensor_aks.sh スクリプトを使用して Defender for Containers センサーをインストールし、既存の展開を削除します。

次のコマンドを使用してスクリプトを実行します。

install_defender_sensor_aks.sh --resource-id <CLUSTER_AZURE_RESOURCE_ID> [--version <VERSION>] [--namespace <NAMESPACE>]

プレースホルダー テキストの <CLUSTER_AZURE_RESOURCE_ID> と省略可能なパラメーターを独自の値に置き換えます。

  • <CLUSTER_AZURE_RESOURCE_ID>を AKS クラスターの Azure リソース ID に置き換えます。

  • <VERSION>を次のように置き換えます。

    • latest 最新バージョンの場合は〘。
    • 特定のセマンティックバージョン。
  • AKS 自動クラスターの場合は、 <NAMESPACE>kube-systemに置き換えます。 標準の AKS クラスターの場合は、 --namespace パラメーターを指定しないでください。 既定の名前空間は mdcです。

このスクリプトは、新しい kubeconfig コンテキストを設定し、Azure アカウントに Log Analytics ワークスペースを作成する場合があります。

インストールの確認

インストール時に使用した名前空間を使用して、インストールが成功したことを確認します。

標準の AKS、EKS、GKE の場合:

helm list --namespace mdc

AKS 自動の場合:

helm list --namespace kube-system

STATUS フィールドが展開済みと表示された場合、インストールは成功します。

ゲートデプロイのセキュリティ規則を構成する

Kubernetes のゲートデプロイは、 kube-system 名前空間で Helm を使用してセンサーがインストールされている場合にのみ、AKS 自動クラスターでサポートされます。 このシナリオでは、アドオンの展開はサポートされていません。

Von Bedeutung

サブスクリプションサポートの警告: ルールを作成すると、選択したサブスクリプションが not supported for Gated deploymentとして表示されることがあります。 この状態は、ダッシュボードの自動インストールではなく、Helm を使用して Defender for Containers コンポーネントをインストールしたために発生します。

Kubernetes クラスターにデプロイできる内容を制御するセキュリティ規則を定義します。 これらの規則は、セキュリティ基準に基づいてコンテナー イメージをブロックまたは監査するのに役立ちます。たとえば、脆弱性が多すぎるイメージなどです。

  1. Azure portal にサインインします。

  2. Defender for Cloud>Environment の設定に移動します。

  3. [セキュリティ規則] を選択します

  4. [Gated deployment]>[Vulnerability assessment] を選択します。

  5. 編集するルールを選択するか、[ + ルールの追加] を選択して新しいルールを作成します。

既存の推奨事項を処理する

Von Bedeutung

Helm を使用してセンサーを設定した場合は、既存の推奨事項を 無視 します。

デプロイの種類に応じて、関連する推奨事項を選択して、Azure portal で既存の推奨事項を表示します。

既存の Helm ベースのデプロイをアップグレードする

Helm ベースのデプロイでは、センサーのアップグレードを管理します。 Defender for Cloud では、自動的には適用されません。

次のコマンドを実行して、既存の Helm ベースのデプロイを更新します。

helm upgrade microsoft-defender-for-containers \
oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers \
--version <version> \
--reuse-values