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


Реализация шаблона для безопасного входящего трафика сети

Входящий трафик сети инкапсулирует несколько шаблонов проектирования, включая шаблоны глобальной маршрутизации, глобального разгрузки и мониторинга конечных точек работоспособности. Реализацию шаблона в этой статье можно использовать в качестве шлюза для любой рабочей нагрузки HTTP или HTTPS, требующей высокой доступности или надежности, обеспечивая безопасную глобальную маршрутизацию для рабочих нагрузок в разных регионах с низкой задержкой отработки отказа.

Видео: реализация безопасного входящего трафика сети

Требования к шаблону

В этой статье описаны три требования, необходимые для реализации шаблона для безопасного входящего трафика сети: глобальная маршрутизация, отработка отказа с низкой задержкой и устранение атак на границе.

Глобальная маршрутизация

Шаблон безопасного входящего трафика сети инкапсулирует глобальный шаблон маршрутизации. Таким образом, реализация может направлять запросы на рабочие нагрузки в разных регионах.

Схема, на которой показан маршрутивируемый HTTPS-запрос на две рабочие нагрузки в разных регионах.

Отработка отказа с низкой задержкой

Реализация должна иметь возможность определять здоровые и неработоспособные рабочие нагрузки и соответствующим образом настраивать маршрутизацию в соответствии с учетом времени. Задержка должна поддерживать настройку маршрутизации в течение нескольких минут.

Схема, на которой показан запрос HTTPS, который не направляется в неработоспособную рабочую нагрузку.

Устранение атак на границе

Устранение атак на пограничном сервере требует "безопасной сети" части реализации. Рабочие нагрузки или платформы как услуга (PaaS) не должны быть доступны через Интернет. Интернет-трафик должен быть только в состоянии маршрутизировать через шлюз. Шлюз должен иметь возможность устранять эксплойты.

Схема, на которой показан HTTPS-запрос с инструкцией SQL в строке запроса, не остановленной на краю.

Шаблоны

Это решение реализует следующие шаблоны проектирования:

  • Шаблон маршрутизации шлюза: маршрутизация запросов к нескольким службам или экземплярам служб, которые могут находиться в разных регионах.
  • Шаблон разгрузки шлюза: выгрузка функций, таких как устранение атак, на прокси-сервер шлюза.
  • Шаблон мониторинга конечных точек работоспособности: предоставление конечных точек, которые проверяют работоспособность рабочей нагрузки.

Проект

Схема, показывающая запрос, который проходит через Azure Front Door Premium на региональные метки.

На схеме показан запрос HTTPS, поступающий в поле Azure Front Door Premium, в котором в нем есть брандмауэр веб-приложения. Это иллюстрирует интеграцию между Azure Front Door Premium и Azure Брандмауэр веб-приложений. На схеме показан запрос, который проходит через Приватный канал до двух меток в разных регионах. Каждая метка имеет статический веб-сайт и внутреннюю подсистему балансировки нагрузки. Запросы передаются через Приватный канал статическим веб-сайтам и подсистемам балансировки нагрузки в обоих метках.

Эта реализация содержит следующие сведения:

  • Она использует учетные записи Хранилище BLOB-объектов Azure для имитации статических веб-рабочих нагрузок, работающих в двух регионах. Эта реализация не включает рабочие нагрузки, выполняемые за внутренней подсистемой балансировки нагрузки (ILB). На схеме показана подсистема балансировки нагрузки для иллюстрации того, что эта реализация будет работать для частных рабочих нагрузок, работающих за ILB.
  • Он использует уровень Azure Front Door Premium в качестве глобального шлюза.
  • Экземпляр Azure Front Door имеет глобальную политику брандмауэра веб-приложений (WAF), настроенную с помощью управляемых правил, которые помогают защититься от распространенных эксплойтов.
  • Учетные записи хранения не предоставляются через Интернет.
  • Уровень Azure Front Door Premium обращается к учетным записям хранения через Приватный канал Azure.
  • Экземпляр Azure Front Door имеет следующую конфигурацию высокого уровня:
    • Конечная точка с одним маршрутом, указывающим на одну группу источников. Группа источников — это коллекция источников или серверной части.
    • Группа источников имеет источник, настроенный для указания каждой учетной записи хранения.
    • Каждый источник запрашивает Приватный канал доступ к учетной записи хранения.
    • У группы источников есть пробы работоспособности, настроенные для доступа к HTML-странице в учетных записях хранения. HTML-страница выступает в качестве конечной точки работоспособности для статических рабочих нагрузок. Если пробы могут успешно получить доступ к источнику в трех из последних четырех попыток, источник считается здоровым.

Компоненты

Веб-запрос

  • Azure Брандмауэр веб-приложений. Уровень "Премиум" Брандмауэр веб-приложений поддерживает управляемые корпорацией Майкрософт правила, которые помогают защититься от распространенных эксплойтов.
  • Приватный канал Azure. Частные конечные точки в Приватный канал Azure предоставляют службе Azure PaaS частный IP-адрес в виртуальной сети. Эта экспозиция позволяет обмену данными через магистральную сеть Майкрософт, а не через общедоступный Интернет.
  • Уровень "Премиум" Azure Front Door: Azure Front Door обеспечивает глобальную балансировку нагрузки уровня 7. Azure Front Door интегрируется с Брандмауэр веб-приложений. Уровень "Премиум" поддерживает следующее:
    • Приватный канал Azure. Поддержка Приватный канал позволяет Azure Front Door взаимодействовать со службами PaaS или рабочими нагрузками, работающими в частной виртуальной сети через магистральную сеть Майкрософт.
    • Наборы правил, управляемых корпорацией Майкрософт: уровень "Премиум" Azure Front Door поддерживает уровень "Премиум" Брандмауэр веб-приложений, который поддерживает управляемый набор правил в WAF.
  • служба хранилища Azure. Эта реализация использует учетные записи больших двоичных объектов служба хранилища для представления статического веб-сайта или рабочей нагрузки.
  • Внутренняя подсистема балансировки нагрузки. Эта реализация не использует внутреннюю подсистему балансировки нагрузки. На рисунке представлена частная рабочая нагрузка, выполняемая за этой подсистемой балансировки нагрузки. Маршрутизация в учетную запись хранения аналогична подсистемам балансировки нагрузки.

Операции

Защита ресурсов с точки зрения сети помогает защитить от эксплойтов, но также изолирует ресурсы от процессов или администраторов, которым может потребоваться доступ к этим ресурсам. Например, агент сборки в конвейере DevOps может потребоваться для доступа к учетной записи хранения для развертывания обновления в веб-приложении. Кроме того, администратору может потребоваться доступ к ресурсу для устранения неполадок.

Чтобы проиллюстрировать доступ к безопасному сетевому доступу в операционных целях, эта реализация развертывает виртуальную машину в виртуальной сети с Приватный канал доступом к учетным записям хранения. Эта реализация развертывает Бастион Azure, который администратор может использовать для подключения к виртуальной машине. В сценарии развертывания можно развернуть частный агент сборки в виртуальной сети, аналогично тому, как виртуальная машина была.

Ниже приведены сведения о компонентах для операций:

  • Azure виртуальная сеть. Эта реализация использует виртуальную сеть для хранения компонентов, необходимых для безопасного взаимодействия с учетной записью хранения через частную магистральную сеть Майкрософт.
  • Azure Виртуальные машины. Эта реализация использует виртуальную машину в качестве прыжка для подключения администраторов. Виртуальная машина развертывается в частной виртуальной сети.
  • Бастион Azure: Бастион Azure позволяет администратору безопасно подключаться к виртуальной машине jumpbox через Secure Shell (SSH), не требуя наличия общедоступного IP-адреса виртуальной машины.
  • Приватный канал конечная точка: частная конечная точка назначает частный IP-адрес из виртуальной сети и подключается к службе PaaS учетной записи хранения. Это подключение позволяет ресурсам в частной виртуальной сети взаимодействовать с учетной записью хранения по частному IP-адресу.
  • Частная зона Azure DNS. Частная зона Azure DNS — это служба DNS, используемая для разрешения имени Приватный канал узла учетной записи хранения Azure на частный IP-адрес частной конечной точки.

Поток веб-запросов

Схема, показывающая поток для веб-запроса.

На схеме показан пользователь, выполняющий веб-запрос к Azure Front Door. В поле Azure Front Door на схеме показано каждое из шагов потока маршрутизации Azure Front Door. Выделенный в потоке шаг, в котором вычисляются правила WAF, где сопоставляется маршрут Azure Front Door и выбрана группа источников, а также место, где источник выбирается из группы источников. Последний выделенный фрагмент заключается в том, что Azure Front Door подключается к учетной записи Хранилище BLOB-объектов Azure через Приватный канал.

  1. Пользователь выдает запрос HTTP или HTTPS к конечной точке Azure Front Door.

  2. Вычисляются правила WAF. Правила, которые соответствуют, всегда регистрируются. Если для режима политики WAF Azure Front Door установлен режим предотвращения , а соответствующее правило имеет действие, которое будет блокироваться в аномалии, запрос блокируется. В противном случае запрос продолжается или перенаправляется, или оцениваются последующие правила.

  3. Маршрут, настроенный в Azure Front Door, соответствует и выбрана правильная группа источников. В этом примере путь был к статичном содержимому на веб-сайте.

  4. Источник выбирается из группы источников.

    a. В этом примере пробы работоспособности считают веб-сайт неработоспособным, поэтому он исключен из возможных источников.
    b. Этот веб-сайт выбран.

  5. Запрос направляется в учетную запись хранения Azure через Приватный канал через магистральную сеть Майкрософт.

Дополнительные сведения об архитектуре маршрутизации Azure Front Door см. в обзоре архитектуры маршрутизации.

Рабочий поток

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

Схема состоит из трех частей. Первая часть показывает, Хранилище BLOB-объектов Azure выступая в качестве статического веб-сайта. Azure Front Door подключается через Приватный канал к учетной записи хранения. Вторая часть — это поле, представляющее виртуальную сеть. Виртуальная сеть содержит подсети и их содержимое. Эти подсети включают подсеть частной конечной точки, содержащую конечную точку Приватный канал с IP-адресом 10.0.2.5, подсетью прыжка с виртуальной машиной jumpbox и подсетью Бастиона Azure с бастионом Azure в ней. Третья часть — это администратор, который использует SSH для доступа к виртуальной машине jumpbox в виртуальной сети через Бастион Azure. Стрелка переходит от виртуальной машины к частной зоне Azure DNS. Последняя стрелка переходит от виртуальной машины к конечной точке приватного канала, а затем к учетной записи хранения.

  1. Администратор подключается к экземпляру Бастиона Azure, развернутом в виртуальной сети.

  2. Бастион Azure обеспечивает подключение SSH к виртуальной машине jumpbox.

  3. Администратор в прыжке пытается получить доступ к учетной записи хранения через Azure CLI. Конечная точка учетной записи для общедоступной Хранилище BLOB-объектов Azure учетной записи запрашивает DNS. storageaccountname.blob.core.windows.net

    Частная зона DNS в конечном итоге разрешается storageaccountname.privatelink.blob.core.windows.net. Он возвращает частный IP-адрес конечной точки Приватный канал, которая составляет 10.0.2.5 в этом примере.

  4. Частное подключение к учетной записи хранения устанавливается через конечную точку Приватный канал.

Рекомендации

При использовании этого решения следует учитывать следующие моменты.

Надежность

Надежность гарантирует, что ваше приложение может выполнять обязательства, которые вы выполняете вашим клиентам. Дополнительные сведения см. в разделе "Обзор основы надежности".

В этом сценарии рассматриваются следующие ключевые моменты надежности:

  • Глобальная маршрутизация с низкой задержкой через использование проб работоспособности обеспечивает надежность путем изоляции приложения от региональных сбоев.
  • Брандмауэр веб-приложений в Azure Front Door обеспечивает централизованную защиту для HTTP-запросов и HTTPS.

Безопасность

Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в разделе "Общие сведения о компоненте безопасности".

В этом сценарии рассматриваются следующие ключевые моменты безопасности:

Оптимизация затрат

Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в разделе Обзор критерия "Оптимизация затрат".

Хотя Azure Front Door Premium и Брандмауэр веб-приложений Premium предоставляют расширенные функции безопасности на уровне "Стандартный", для обоих есть дополнительные затраты. Ознакомьтесь со следующими ресурсами, чтобы узнать больше о ценах на Azure Front Door и Брандмауэр веб-приложений:

Эффективность работы

Оперативное превосходство охватывает процессы операций, которые развертывают приложение и продолжают работать в рабочей среде. Дополнительные сведения см. в разделе "Общие сведения о принципах эффективности работы".

Реализация границ безопасности сети повышает сложность операций и развертывания. Помните следующее:

  • Диапазоны IP-адресов для размещенных корпорацией Майкрософт агентов зависят от времени. Рассмотрите возможность реализации локальных агентов в виртуальной сети.
  • Реализуйте Бастион Azure для сценариев, в которых группам операций необходимо получить доступ к сетевым защищенным ресурсам.
  • Использование Брандмауэр веб-приложений в Azure Front Door для обеспечения централизованной защиты для HTTP-запросов и HTTPS является примером шаблона разгрузки шлюза. Ответственность за изучение запросов на эксплойты выгружается на Брандмауэр веб-приложений в Azure Front Door. Преимущество операционного превосходства заключается в том, что вам нужно управлять правилами только в одном месте.

Внимание

Пример безопасного входящего трафика сети позволяет развернуть все ресурсы, необходимые для подключения к прыжку через Бастион Azure, и подключиться к защищенной сети виртуальной машине.

Оптимизация производительности

Эффективность производительности — это возможность масштабирования рабочей нагрузки в соответствии с требованиями, которые пользователи размещают на нем. Дополнительные сведения см. в разделе "Общие сведения о принципах эффективности производительности".

Глобальная маршрутизация обеспечивает горизонтальное масштабирование путем развертывания дополнительных ресурсов в одном регионе или разных регионах.

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

  • Разверните эту реализацию, выполнив действия, описанные в примере защищенного входящего трафика сети.