Network Security в Kubernetes | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Разработчик на Spring Framework
-5%
iOS Developer. Professional
-8%
Golang Developer. Professional
-6%
Базы данных
-12%
Agile Project Manager
-5%
C# ASP.NET Core разработчик
-6%
Android Developer. Basic
-10%
React.js Developer
-4%
MS SQL Server Developer
-8%
Scala-разработчик
-8%
Java Developer. Basic
-8%
Алгоритмы и структуры данных
-9%
Разработчик IoT
-13%
PostgreSQL
-8%
Подготовка к сертификации Oracle Java Programmer (OCAJP) Python Developer. Professional Разработчик программных роботов (RPA) на базе UiPath и PIX Unity Game Developer. Basic Разработчик голосовых ассистентов и чат-ботов Node.js Developer Интенсив «Оптимизация в Java» Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes iOS Developer. Basic Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool"
Инфраструктура
DevOps практики и инструменты
-12%
Базы данных
-12%
Network engineer. Basic
-10%
Network engineer
-4%
Инфраструктурная платформа на основе Kubernetes
-6%
Экспресс-курс по управлению миграциями (DBVC)
-10%
Мониторинг и логирование: Zabbix, Prometheus, ELK
-10%
Administrator Linux. Professional
-6%
Разработчик IoT
-13%
Основы Windows Server Cloud Solution Architecture Разработчик голосовых ассистентов и чат-ботов VOIP инженер Супер-практикум по работе с протоколом BGP NoSQL Супер-практикум по использованию и настройке GIT Супер-интенсив «СУБД в высоконагруженных системах» Экспресс-курс «IaC Ansible»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Network Security в Kubernetes

Kuber_Deep_29.4-5020-006472.png

Продолжаем серию статей о безопасности в Kubernetes. В этот раз поговорим про сетевую безопасность — Network Security. Это всем известная «боль», так как в Kubernetes существует ряд проблем с сетевой безопасностью: — по умолчанию трафик между подами разрешён; — внутренние адреса подов постоянно меняются; — трафик не шифрован.

Настраивать внешние правила сложно, одно из решений — Dynamic Network Policies, который позволяет это сделать либо традиционным для админов образом с указанием явных масок, либо через лейблы:

1-20219-bb6109.png

Плохо лишь то, что Network Policies поддерживаются не везде:

2-20219-5bc580.png

Если будете выбирать между Weave и Calico, учтите, что шифрование в Weave даёт очень большой оверхед, и это, разумеется, минус. Что касается Calico, то он очень стабилен и позволяет настраивать не только входящие, но и исходящие сетевые политики.

Микроменеджмент сетевой безопасности

Бывают и другие уровни сетевой безопасности. Например, параноидальная сетевая безопасность, которая не настраивается сетевыми политиками. В таком случае надо использовать Service Mesh. Однако на сегодняшний день по нему можно сказать следующее: 1. (Всё ещё) очень сложно. 2. (Всё ещё) не всегда стабильно.

Следующий подвид безопасности — безопасность на уровне Ingress. Это как раз та безопасность приложений, когда на приложение в Kubernetes идёт трафик и вам его нужно разграничить и как-то фильтровать. Ingress-контроллеры, например, в Nginx, поддерживают white-листы для доступа к особо чувствительным админкам, чтобы запретить доступ к админке с неавторизованных источников. Это можно делать, но нужна поддержка proxy-протокола в облачных балансерах. Также стоит добавить, что для парочки клиентов есть крутое решение — Web application firewall, который интегрируется в Nginx Ingress Controller — бесплатный ModSecurity, позволяющий фильтровать достаточно большое количество атак (ModSecurity понимает очень много паттернов).

Читайте также:

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться