Поделиться через


Defender для архитектуры контейнеров

Defender для контейнеров разработан по-разному для каждой среды Kubernetes независимо от того, работают ли они в:

  • Служба Azure Kubernetes (AKS). Это управляемая служба Майкрософт для разработки и развертывания контейнерных приложений, а также управления ими.

  • Служба Amazon Elastic Kubernetes (EKS) в подключенной учетной записи Amazon Web Services (AWS) — это управляемая служба Amazon для запуска Kubernetes на AWS без установки, обработки и обслуживания собственного уровня управления и узлов Kubernetes.

  • Google Kubernetes Engine (GKE) в подключенном проекте Google Cloud Platform (GCP) — это управляемая среда Google для развертывания, администрирования и масштабирования приложений с помощью инфраструктуры GCP.

  • Неуправляемое распределение Kubernetes (с использованием Kubernetes с поддержкой Azure Arc) — это сертифицированные кластеры Kubernetes Cloud Native Computing Foundation (CNCF), которые размещены в локальной среде или в IaaS.

Примечание.

Поддержка Defender для контейнеров кластеров Kubernetes с поддержкой Arc (AWS EKS и GCP GKE) — это предварительная версия функции.

Чтобы защитить контейнеры Kubernetes, Defender для контейнеров получает и анализирует:

  • журналы аудита и события безопасности с сервера API;
  • сведения о конфигурации кластера с уровня управления;
  • конфигурация рабочей нагрузки из Политики Azure;
  • сигналы и события безопасности с уровня узла.

Дополнительные сведения о реализации, таких как поддерживаемые операционные системы, доступность компонентов, исходящий прокси-сервер, см. в разделе "Доступность компонентов Defender для контейнеров".

Архитектура для каждой среды Kubernetes

Схема архитектуры Defender для облака и кластеров AKS

Если Defender для облака защищает кластер, размещенный в Служба Azure Kubernetes, сбор данных журнала аудита без агента и автоматически собирается через инфраструктуру Azure без дополнительных затрат или рекомендаций по настройке. Это необходимые компоненты для получения полной защиты, предоставляемой Microsoft Defender для контейнеров:

  • Датчик Defender: DaemonSet, развернутый на каждом узле, собирает сигналы от узлов с помощью технологии eBPF и обеспечивает защиту среды выполнения. Датчик регистрируется в рабочей области Log Analytics и используется в качестве конвейера данных. Но данные журнала аудита не хранятся в рабочей области Log Analytics. Датчик Defender развертывается в качестве профиля безопасности AKS.
  • Политика Azure для Kubernetes: модуль pod, расширяющий шлюз с открытым исходным кодом версии 3 и регистрируемый в качестве веб-перехватчика в Kubernetes контроль допуска, что позволяет применять масштабируемые принудительное применение и защищать кластеры централизованно, согласованно. Политика Azure для pod Kubernetes развертывается как надстройка AKS. Он установлен только на одном узле в кластере. Дополнительные сведения см. в статье "Защита рабочих нагрузок Kubernetes" и "Общие сведения о Политика Azure для кластеров Kubernetes".

Схема общей архитектуры взаимодействия между Microsoft Defender для контейнеров, Службой Azure Kubernetes и Политикой Azure.

Сведения о компоненте датчика Defender

Имя pod Пространство имен Вид Краткое описание Возможности Ограничения ресурсов Требуемый исходящий трафик
microsoft-defender-collector-ds-* kube-system DaemonSet Набор контейнеров, которые фокусируются на сборе данных инвентаризации и событий безопасности из среды Kubernetes. SYS_ADMIN,
SYS_RESOURCE,
SYS_PTRACE
память: 296Mi

ЦП: 360 млн
No
microsoft-defender-collector-misc-* kube-system Развертывание Набор контейнеров, которые фокусируются на сборе из среды Kubernetes данных инвентаризации и событий безопасности, которые не ограничены определенным узлом. Н/П память: 64Mi

cpu: 60m
No
microsoft-defender-publisher-ds-* kube-system DaemonSet Опубликуйте собранные данные в серверной службе Microsoft Defender для контейнеров, в которой будут обрабатываться и анализироваться данные. Н/П память: 200Mi

cpu: 60m
Https 443

Подробнее о предварительных требованиях к исходящему доступу

* Ограничения ресурсов не настраивается; Дополнительные сведения об ограничениях ресурсов Kubernetes.

Как работает обнаружение без агента для Kubernetes в Azure?

Процесс обнаружения основан на моментальных снимках, сделанных через интервалы:

Схема архитектуры разрешений.

Если включить обнаружение без агента для расширения Kubernetes, происходит следующий процесс:

  • Создание.

    • Если расширение включено из CSPM Defender, Defender для облака создает удостоверение в клиентских средахCloudPosture/securityOperator/DefenderCSPMSecurityOperator.
    • Если расширение включено из Defender для контейнеров, Defender для облака создает удостоверение в клиентских средахCloudPosture/securityOperator/DefenderForContainersSecurityOperator.
  • Назначение: Defender для облака назначает встроенную роль с именем "Оператор без агента Kubernetes" для этого удостоверения в области подписки. Роль содержит следующие разрешения:

    • AKS read (Microsoft.ContainerService/managedClusters/read)
    • Доверенный доступ AKS со следующими разрешениями:
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/write
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/read
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/delete

    Дополнительные сведения об доверенном доступе AKS.

  • Обнаружение. Использование назначаемого системой удостоверения Defender для облака выполняет обнаружение кластеров AKS в вашей среде с помощью вызовов API к серверу API AKS.

  • Привязка. При обнаружении кластера AKS Defender для облака выполняет операцию привязки AKS, создав между ClusterRoleBinding созданным удостоверением и kubernetes ClusterRole aks:trustedaccessrole:defender-containers:microsoft-defender-operator. Отображается ClusterRole через API и предоставляет Defender для облака разрешение на чтение плоскости данных внутри кластера.

Примечание.

Скопированный моментальный снимок остается в том же регионе, что и кластер.

Следующие шаги

В этой обзорной статье вы получили сведения об архитектуре безопасности контейнеров, которые предоставляет Microsoft Defender для облака. Сведения о включении плана см. в следующих статьях: