Implementar o Defender para Containers em clusters privados

Este artigo explica como implementar o Microsoft Defender for Containers em clusters Kubernetes privados usando gráficos de Helm ou uma extensão Kubernetes com Azure Arc. Clusters privados isolam ambientes Kubernetes da internet, o que significa que não há acesso direto ao servidor API Kubernetes. O Defender for Containers estende a deteção de ameaças e visibilidade de segurança a estes ambientes, para que possa manter a cobertura de proteção enquanto preserva os limites da rede de clusters privados. Antes de começares, revê os pré-requisitos.

Pré-requisitos

Antes de começar, verifique se os seguintes pré-requisitos são atendidos:

  • O Defender for Containers está ativado para o seu ambiente de destino.

  • Se estiver a implementar com Helm, certifique-se de que helm, curl e jq estão instalados e disponíveis no seu ambiente de linha de comandos.

    Para verificar se as ferramentas estão disponíveis, execute:

    helm version
    curl --version
    jq --version
    
  • Se estiver a implementar usando uma extensão Kubernetes habilitada para Azure Arc, certifique-se de que:

    • O seu cluster está ligado ao Azure Arc.
    • A interface de linha de comandos do Azure (CLI do Azure) está instalada e tem sessão iniciada.

Instalar componentes para clusters privados

Defender para Containers Helm Charts são publicadas em mcr.microsoft.com/azuredefender/microsoft-defender-for-containers. Clusters privados são suportados em versões gráficas 0.11.X. Use o Helm no Amazon EKS, o Helm no Google Kubernetes Engine, ou o separador Kubernetes com Azure Arc para instalar os componentes do seu ambiente.

Pode listar as versões publicadas executando o seguinte comando:

curl https://mcr.microsoft.com/v2/azuredefender/microsoft-defender-for-containers/tags/list

Para instalar o gráfico mais recente 0.11.X e ativar componentes privados do cluster:

helm install defender-k8s oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers \
  --create-namespace \
  --namespace mdc \
  --set global.cloudIdentifiers.AWS.accountId="<aws-account-id>" \
  --set global.cloudIdentifiers.AWS.region="<cluster-location>" \
  --set global.cloudIdentifiers.AWS.clusterName="<cluster-name>" \
  --set microsoft-defender-for-containers-sensor.inventoryCollector.enabled=true \
  --set microsoft-defender-for-containers-sensor.configController.enabled=true

Verificar a implantação

Para verificar o estado da implementação com base no Helm:

helm list --namespace mdc

Para verificar a implementação da extensão Azure Arc:

az k8s-extension show \
  --name microsoft.azuredefender.kubernetes \
  --cluster-type connectedClusters \
  --cluster-name $ARC_CLUSTER_NAME \
  --resource-group $ARC_RESOURCE_GROUP