Генерация сетевых политик с помощью Alauda Container Security
Alauda Container Security позволяет автоматически генерировать сетевые политики Kubernetes на основе наблюдаемых сетевых потоков, помогая защитить коммуникацию подов и снизить поверхность атаки.
Содержание
OverviewКак сгенерировать сетевые политикиЗагрузка и применение политикОткат и удаление политикДополнительные замечанияOverview
Сетевые политики Kubernetes определяют, какие поды могут принимать или отправлять сетевой трафик. Ручное создание этих YAML-файлов может быть сложным. Alauda Container Security упрощает этот процесс, генерируя политики согласно следующим принципам:
-
Одна политика на Deployment: Alauda Container Security генерирует сетевую политику для каждого deployment в выбранном namespace, используя селектор подов deployment.
- Если у deployment уже есть сетевая политика, Alauda Container Security не перезапишет и не удалит её.
- Новые deployment не ограничены, пока вы не сгенерируете или не создадите для них новые политики.
- Если новому deployment требуется доступ к защищённому deployment, возможно, потребуется обновить политику.
-
Конвенция именования: Каждая политика называется
stackrox-generated-<deployment-name>и содержит идентифицирующую метку. -
Разрешение внешнего трафика: Alauda Container Security генерирует правило, разрешающее трафик с любого IP, если:
- Deployment получает подключения извне кластера в выбранный период, или
- Deployment открыт через node port или load balancer service.
-
Правила Ingress: Для каждого наблюдаемого входящего подключения:
- Если оно из того же namespace, Alauda Container Security использует селектор подов исходного deployment.
- Если из другого namespace, используется селектор namespace, а namespaces автоматически маркируются при необходимости.
Примечание: Если standalone pod не имеет меток, сгенерированная политика может разрешать трафик от/к всему namespace.
Как сгенерировать сетевые политики
Вы можете генерировать политики для кластеров, namespaces или конкретных deployment с помощью Network Graph в Alauda Container Security.
Чтобы сгенерировать сетевые политики, выполните следующие шаги:
- В портале Alauda Container Security перейдите в Network Graph.
- Выберите кластер и один или несколько namespaces.
- (Опционально) Выберите конкретные deployment или используйте Filter deployments для сужения области.
- Нажмите Network Policy Generator в заголовке.
- (Опционально) В информационной панели выберите Exclude ports & protocols для удаления ограничений по портам/протоколам.
- Нажмите Generate and simulate network policies. Выбранная область отображается в верхней части панели.
- (Опционально) Скопируйте или скачайте сгенерированный YAML-файл.
- (Опционально) Нажмите Compare, чтобы сравнить существующие и сгенерированные политики бок о бок.
- (Опционально) Используйте меню Actions для:
- Расшаривания YAML-файла с уведомителями (например, Slack, ServiceNow, вебхуки).
- Перестроения правил на основе активного трафика.
- Отката к ранее применённому YAML.
Примечание: Для некоторых namespaces (например, с существующими ingress-политиками или защищёнными namespaces) политики могут не генерироваться.
Загрузка и применение политик
После генерации политик вы можете скачать и применить их в вашем кластере с помощью CLI или автоматизированных инструментов.
Для применения политик:
Для удаления политик:
Внимание: Всегда тестируйте сетевые политики в среде разработки или тестирования перед применением в продакшене, так как они могут нарушить работу запущенных приложений.
Откат и удаление политик
-
Чтобы откатиться к предыдущей политике, используйте опцию Revert rules to previously applied YAML в портале Alauda Container Security.
-
Чтобы удалить все автоматически сгенерированные политики:
Дополнительные замечания
- Network Graph не визуализирует сгенерированные политики.
- Сгенерированные политики ограничивают только ingress-трафик; egress-политики не генерируются.