Правила и исключения Cilium CNI при создании профиля среды выполнения

02 марта 2026

ID 302287

Блокирование сетевых соединений в контейнерах

Если вы применяете Cilium CNI, при определении варианта блокирования сетевых соединений в контейнерах кроме CIDR и FQDN необходимо указывать правила Cilium CNI.

Правила для CIDR и FQDN для Cilium CNI применяются только для указания внешних по отношению к Kubernetes ресурсов. Для указания внутренних ресурсов Kubernetes вместо CIDR и FQDN необходимо использовать метки ресурсов.

Правила указываются вместе со значениями CIDR и FQDN через запятую следующим образом:

entity:<ENTITY_NAME> -OR- endpoint:<NAMESPACE> -OR- service:<NAMESPACE>{|<LABEL_1_KEY>=<LABEL_2_VALUE>{,<LABEL_N_KEY>=LABEL_N_VALUE}}

где:

  • <ENTITY_NAME> – название объектов, которые имеют доступ к выбранным конечным точкам сети (англ. Endpoints) и доступны для них. Варианты значений, которые могут указываться в качестве названий объектов, представлены в документации Cilium.
  • <NAMESPACE> – действительное название пространства имен.
  • <LABEL_1_KEY>=<LABEL1_VALUE> – пара "ключ-значение" метки пространства имен (например, env=staging). Этот параметр не является обязательным и указывается при необходимости.

    Параметр =<LABEL1_VALUE> также не является обязательным, поскольку метка может состоять только из ключа (значение ключа не приводится). В таком случае параметр указывается следующим образом: <LABEL_1_KEY>.

  • <LABEL_N_KEY>=LABEL_N_VALUE – список меток пространства имен, в котором метки перечисляются через запятую (например, app=test,component=api-v2,k8s-app=kube-dns). Этот параметр также не является обязательным и указывается при необходимости.

Такой формат определения правил и исключений используется только для Cilium CNI. Если вы используете его для других CNI, решение проигнорирует неверно указанные параметры.

Применение сетевых политик, содержащих DNS-имена

Для определения политик доступа к конечным точкам сети, на которых не применяется Cilium CNI, могут использоваться сетевые политики, содержащие DNS-имена. В них указываются доменные имена, поддерживающие запросы по DNS. Используя DNS-прокси, Cilium CNI может определить связь таких доменных имен с IP-адресами на основе получаемых от конечных точек сети DNS-ответов. Информация об IP-адресе получается с помощью правил matchName или matchPattern из всех DNS-ответов, доступных на узле.

Применение содержащих DNS-имена сетевых политик возможно только при наличии флага --enable-l7-proxy=true в конфигурации Cilium CNI. Если этот параметр не указан, решение не сможет применять политики, содержащие DNS-имена, а в данных о действиях по мониторингу и анализу сетевой активности будет отображаться ошибка подключения.

При использовании Cilium CNI также необходимо учитывать правила определения значений переменных при развертывании агентов node-agent.

Применение правил, основанных на CIDR

В профиле среды выполнения в исключениях для входящих и исходящих сетевых соединений в Kaspersky Security для контейнеров указывается IP-адрес или диапазон IP-адресов источников соединений в нотациях CIDR4 и CIDR6. Cilium CNI рассматривает CIDR как адрес источника соединения, который находится вне кластера. Если соединение осуществляется между подами в кластере, такие соединения так же считаются внешними по отношению к кластеру.

Для определения адресов объектов внутри кластера в Cilium CNI необходимо использовать метки подов (например, fromCIDR и toCIDR).

Объединение потоков трафика

Если под в кластере отправляет запрос внешнему для кластера ресурсу и получает от этого ресурса ответ, Cilium CNI считает исходящие и входящие потоки трафика одним соединением (TrafficDirection = Egress). Все пакеты данных, которыми будут обмениваться стороны соединения, будут классифицироваться как исходящие.

Если в применимом профиле среды выполнения разрешены исходящие соединения и запрещены входящие соединения, Cilium CNI разрешает входящий трафик в ответ на отправленный запрос.

Агрегация сетевых событий

Если за короткий период в Cilium CNI происходит несколько одинаковых событий, Cilium применяет правило агрегации и объединяет эти события в одно.

По умолчанию период агрегации одинаковых событий составляет пять секунд. Вы можете изменить период агрегации в конфигурации Cilium CNI, указав нужное значение для параметра monitor-aggregation-interval.

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!