Разработка решений для сегментации сети
Функции Azure для сегментации
При работе с Azure вам доступно множество вариантов сегментации.
- Подписка. Высокоуровневая конструкция, которая обеспечивает разделение между сущностями на платформе. Этот подход позволяет определить границы между крупными организациями в компании. При этом связь между ресурсами в разных подписках должна быть явно подготовлена.
- Виртуальная сеть. Создается в подписке в частном адресном пространстве. Виртуальные сети обеспечивают автономность ресурсов на уровне сети. При этом трафик между двумя виртуальными сетями запрещен. Как и для подписок, обмен данными между виртуальными сетями необходимо явным образом настроить.
- Группы безопасности сети (NSG). Механизмы управления доступом для контроля трафика между ресурсами в виртуальной сети, а также внешними сетями, такими как Интернет и другие виртуальные сети. Группы безопасности сети могут детализировать вашу стратегию сегментации путем создания периметров для подсети, виртуальной машины или группы виртуальных машин. Сведения о возможных операциях с подсетями в Azure см. в статье Подсети (виртуальные сети Azure).
- Группы безопасности приложений (ASG). Похожи на группы безопасности сети, но в контексте приложения. Этот подход позволяет группировать набор виртуальных машин с использованием тега приложения и определять правила трафика, которые затем применяются к каждой базовой виртуальной машине.
- Брандмауэр Azure. Облачный собственный брандмауэр с отслеживанием состояния как услуга, который можно развернуть в виртуальной сети или в центрах Azure Виртуальная глобальная сеть для фильтрации трафика между облачными ресурсами, Интернетом и локальной средой. Вы создаете правила или политики с помощью Брандмауэра Azure или диспетчера Брандмауэра Azure, которые разрешают или запрещают трафик с определенными характеристиками на уровнях 3–7 сетевой модели. Вы также можете отфильтровать трафик, проходящий в Интернет, с помощью Брандмауэр Azure и третьих сторон путем направления некоторых или всех трафика через сторонних поставщиков безопасности для расширенной фильтрации и защиты пользователей.
Шаблоны сегментации
Ниже приведены некоторые распространенные шаблоны для сегментирования рабочей нагрузки в Azure с точки зрения сети. Каждый шаблон обеспечивает различные типы изоляции и возможности подключения. Выберите шаблон, удовлетворяющий потребности вашей организации.
Шаблон 1. Отдельная виртуальная сеть
Все компоненты рабочей нагрузки находятся в одной виртуальной сети. Этот шаблон подходит для работы в одном регионе, так как виртуальная сеть не может охватывать несколько регионов.
Распространенные способы защиты сегментов, таких как подсети или группы приложений, — использование групп NSG и ASG. Кроме того, вы можете реализовать сегментацию и обеспечить ее защиту с помощью виртуального сетевого модуля (NVA) из Azure Marketplace или Брандмауэра Azure.
На этом изображении в Подсети 1 выполняется рабочая нагрузка базы данных. В Подсети 2 выполняются рабочие нагрузки Интернета. Вы можете настроить группы безопасности сети, которые позволяют Подсети 1 взаимодействовать только с Подсетью 2, а Подсети 2 — только с Интернетом.
Рассмотрим вариант использования, в котором несколько рабочих нагрузок размещены в отдельных подсетях. Можно разместить элементы управления, которые будут позволять одной рабочей нагрузке взаимодействовать с серверной частью другой рабочей нагрузки.
Шаблон 2. Несколько виртуальных сетей, обменивающихся данными путем пиринга
Ресурсы распределяются или реплицируются в нескольких виртуальных сетях. Виртуальные сети могут обмениваться данными путем пиринга. Этот шаблон подходит, если нужно сгруппировать приложения в отдельные виртуальные сети или требуется несколько регионов Azure. Одно из преимуществ — встроенная сегментация, так как нужно явным образом установить пиринг между виртуальными сетями. Пиринг между виртуальными сетями не является транзитивным. Вы можете дополнительно выполнять сегментацию в виртуальной сети, используя группы NSG и ASG, как показано в шаблоне 1.
Шаблон 3. Несколько виртуальных сетей в звездообразной модели
Виртуальную сеть следует назначить центральной в заданном регионе для всех других виртуальных сетей, которые назначаются периферийными в этом регионе. Центральная и периферийные сети соединяются путем пиринга. Весь трафик проходит через центр, который может служить шлюзом к другим центрам в разных регионах. В этом шаблоне элементы управления безопасностью настраиваются в центрах, чтобы они могли выполнять сегментацию и управлять трафиком между другими виртуальными сетями с поддержкой масштабирования. Одно из преимуществ этого подхода — то, что при увеличении топологии сети затраты на повышение уровня безопасности не увеличиваются (за исключением случаев, когда реализуется расширение на новые регионы).
В качестве нативного варианта рекомендуется использовать Брандмауэр Azure. Этот вариант работает как для виртуальных сетей, так и для подписок. Он позволяет управлять потоками трафика с помощью элементов управления уровней 3–7. Вы можете определить правила обмена данными и согласованно применить их. Далее приводятся некоторые примеры.
- Виртуальная сеть 1 не может обмениваться данными с Виртуальной сетью 2, но может обмениваться данными с Виртуальной сетью 3.
- Виртуальная сеть 1 не может получить доступ к общедоступному Интернету, за исключением *.github.com.
Предварительная версия Диспетчера брандмауэра Azure позволяет вам централизованно управлять политиками в нескольких Брандмауэрах Azure и задействовать команды DevOps для дальнейшей настройки локальных политик.
Сравнение шаблонов
Рекомендации | Шаблон 1 | Шаблон 2 | Шаблон 3 |
---|---|---|---|
Подключение и маршрутизация: как взаимодействуют друг с другом сегменты | Системная маршрутизация по умолчанию обеспечивает возможность подключения для любой рабочей нагрузки в любой подсети. | Аналогично шаблону 1. | По умолчанию возможность подключения между периферийными сетями отсутствует. Для подключения в центре должен быть маршрутизатор уровня 3, например Брандмауэр Azure. |
Фильтрация трафика на уровне сети | Трафик по умолчанию разрешен. Для фильтрации трафика используется NSG и ASG. | Аналогично шаблону 1. | По умолчанию весь трафик между периферийными виртуальными сетями запрещен. Откройте выбранные пути, чтобы разрешить трафик через конфигурацию Брандмауэра Azure. |
Централизованное ведение журнала | Для виртуальной сети используются журналы NSG и ASG. | Объедините журналы NSG и ASG для всех виртуальных сетей. | Брандмауэр Azure регистрирует весь принятый и отклоненный трафик, отправленный через центр. Просмотрите журналы в Azure Monitor. |
Непреднамеренные открытые общедоступные конечные точки | DevOps может случайно открыть общедоступную конечную точку из-за неверных правил NSG или ASG. | Аналогично шаблону 1. | Случайное открытие общедоступной конечной точки в периферийной сети не позволит получить доступ, так как возвращаемый пакет будет удален через брандмауэр с отслеживанием состояния (асимметричная маршрутизация). |
Защита на уровне приложения | NSG или ASG предоставляет только поддержку на уровне сети. | Аналогично шаблону 1. | Брандмауэр Azure поддерживает фильтрацию FQDN для протоколов HTTP/S и MSSQL, как для исходящего трафика, так и между виртуальными сетями. |