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


Интеграция среды службы приложений с внутренней системой балансировки нагрузки (ILB) со шлюзом приложений Azure

Среда службы приложений — это развернутая служба приложений Azure в подсети виртуальной сети Azure клиента. Ее можно развернуть с использованием внешней или внутренней конечной точки для доступа к приложениям. Развертывание Среда службы приложений с внутренней конечной точкой называется внутренней подсистемой балансировки нагрузки (ILB) Среда службы приложений.

Брандмауэры веб-приложения защищают веб-приложения, проверяя входящий трафик Интернета и блокируя атаки с использованием кода SQL и межсайтовых скриптов, передачи вредоносных программ, атаки DDoS на приложения и другие атаки. Устройство WAF можно получить из Azure Marketplace или использовать Шлюз приложений Azure.

Шлюз приложений Azure — это виртуальное устройство, которое обеспечивает балансировку нагрузки уровня 7, разгрузку TLS и защиту брандмауэра веб-приложений (WAF). Он может ожидать передачи данных через общедоступный IP-адрес и направлять трафик к конечной точке приложения. Ниже описано, как интегрировать шлюз приложений с настроенным WAF с приложением в среде службы приложений ILB.

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

Снимок экрана: схема интеграции высокого уровня

В этом пошаговом руководстве описаны следующие операции.

  • Создание шлюза приложений Azure.
  • Настройка шлюза приложения для указания на приложение в среде службы приложений с внутренней подсистемой балансировки нагрузки.
  • Изменение общедоступного имени узла DNS, указывающего на шлюз приложений.

Необходимые компоненты

Чтобы интегрировать шлюз приложений в среду службы приложений с внутренней подсистемой балансировки нагрузки, требуется:

  • Среда службы приложений с подсистемой балансировки нагрузки.
  • Частная зона DNS для Среда службы приложений балансировки нагрузки.
  • Приложение, выполняющееся в среде службы приложений с внутренней подсистемой балансировки нагрузки.
  • Общедоступное DNS-имя шлюза приложений.
  • Если необходимо использовать шифрование TLS для шлюза приложений, требуется действительный общедоступный сертификат, используемый для привязки к шлюзу приложений.

Среда службы приложений подсистемы балансировки нагрузки

Дополнительные сведения о создании Среда службы приложений балансировки нагрузки см. в статье "Создание Среда службы приложений" в портал Azure и создании Среда службы приложений с помощью шаблона Azure Resource Manager.

  • После создания Среда службы приложений балансировки нагрузки домен <YourAseName>.appserviceenvironment.netпо умолчанию .

    Снимок экрана: обзор Среда службы приложений балансировки нагрузки.

  • Внутренний балансировщик нагрузки подготавливается для входящего доступа. Вы можете проверить входящий адрес в IP-адресах в разделе "Параметры Среда службы приложений". Вы можете создать частную зону DNS, сопоставленную с этим IP-адресом позже.

    Снимок экрана: получение входящего адреса из Среда службы приложений параметров IP-адресов Среда службы приложений.

Частная зона DNS

Для внутреннего разрешения имен требуется Частная зона DNS. Создайте его с помощью имени Среда службы приложений с помощью наборов записей, показанных в следующей таблице (инструкции см. в кратком руководстве. Создание частной зоны DNS Azure с помощью портал Azure).

Имя. Тип значение
* а Среда службы приложений входящий адрес
@ а Среда службы приложений входящий адрес
@ SOA Среда службы приложений DNS-имя
*.scm а Среда службы приложений входящий адрес

Служба приложений на Среда службы приложений балансировки нагрузки

Необходимо создать план Служба приложений и приложение в Среда службы приложений подсистемы балансировки нагрузки. При создании приложения на портале выберите Среда службы приложений ILB в качестве региона.

Общедоступное DNS-имя для шлюза приложений

Для подключения к шлюзу приложений из Интернета требуется имя домена с маршрутизацией. В этом случае я использовал маршрутизируемое доменное имя asabuludemo.com и планирую подключиться к службе приложений с этим доменным именем app.asabuludemo.com. IP-адрес, сопоставленный с этим доменом приложения, необходимо задать для Шлюз приложений общедоступный IP-адрес после создания шлюза приложений. Если общедоступный домен сопоставлен со шлюзом приложений, настраивать личный домен в службе приложений не требуется. Вы можете приобрести пользовательское доменное имя в доменах службы приложений.

Действительный открытый сертификат

Для улучшения безопасности привязывается сертификат TLS для шифрования сеанса. Чтобы привязать сертификат TLS к шлюзу приложений, требуется действительный общедоступный сертификат со следующими сведениями. С помощью сертификатов Служба приложений вы можете приобрести сертификат TLS и экспортировать его в .pfx формате.

Имя. Стоимость Описание
Общее имя <yourappname>.<yourdomainname>, например: app.asabuludemo.com
или *.<yourdomainname>, например: *.asabuludemo.com
Стандартный сертификат или групповой сертификат для шлюза приложений
Альтернативное имя субъекта <yourappname>.scm.<yourdomainname>, например: app.scm.asabuludemo.com
или *.scm.<yourdomainname>, например: *.scm.asabuludemo.com
Сеть SAN, которая позволяет подключаться к службе приложений KUDU. Это необязательный параметр, если вы не хотите публиковать службу службы приложений KUDU в Интернете.

Файл сертификата должен иметь закрытый ключ и сохранить его в .pfx формате. Сертификат импортируется в шлюз приложений позже.

Создание Шлюза приложений

Основные сведения о создании шлюза приложений см. в разделе Руководство. Создание шлюза приложений с брандмауэром веб-приложения с помощью портала Azure.

В этом руководстве мы используем портал Azure для создания шлюза приложений с Среда службы приложений ILB.

В портале Azure выберите Создать новый>Сеть>Шлюз приложений, чтобы создать шлюз приложений.

  1. Основные параметры

    В раскрывающемся списке Уровень можно выбрать Стандартный V2 или WAF V2, чтобы включить функцию WAF в шлюзе приложений.

  2. Параметр внешних интерфейсов

    Выберите тип IP-адреса внешнего интерфейса — Общедоступный, Частный или Оба. Если задано значение Частный или Оба, необходимо назначить статический IP-адрес в диапазоне подсети шлюза приложений. В этом случае мы установили общедоступный IP-адрес только для общедоступной конечной точки.

    • Общедоступный IP-адрес. Необходимо связать общедоступный IP-адрес для общего доступа к шлюзу приложений. Запишите этот IP-адрес, т. к. вам потребуется добавить запись в службу DNS позже.

      Снимок экрана: получение общедоступного IP-адреса из настроек клиентской части шлюза приложений.

  3. Параметр серверной части

    Введите имя пула серверной части и выберите Службы приложений или IP-адрес или полное доменное имя в поле Тип целевого объекта. В этом случае мы настроили Службы приложений и выбираем имя службы приложений из раскрывающегося списка целевых объектов.

    Снимок экрана: добавление имени серверного пула в параметрах серверной части.

  4. Параметр конфигурации

    В параметре конфигурации необходимо добавить правило маршрутизации, выбрав значок "Добавить правило маршрутизации".

    Снимок экрана: добавление правила маршрутизации в параметрах серверной части.

    Необходимо настроить Прослушиватель и Цели серверной части в правиле маршрутизации. Вы можете добавить прослушиватель HTTP для подтверждения развертывания концепции или добавить прослушиватель HTTPS для улучшения безопасности.

    • Для подключения к шлюзу приложений с протоколом HTTP можно создать прослушиватель со следующими параметрами:

      Параметр Стоимость Описание
      Имя правила Например: http-routingrule Имя маршрутизации
      Имя прослушивателя Например: http-listener Имя прослушивателя
      Интерфейсный IP-адрес Общедоступный Для доступа к Интернету задайте значение "Общедоступный".
      Протокол HTTP Не используйте шифрование TLS
      Порт 80 HTTP-порт по умолчанию
      Тип прослушивателя Несколько сайтов Разрешить прослушивание нескольких сайтов в шлюзе приложений
      Host type Несколько элементов / подстановочный знак Если для типа прослушивателя задано значение "Несколько сайтов", задайте для параметра имени веб-сайта значение "Несколько элементов" или "Подстановочный знак".
      Host name Например: app.asabuludemo.com Задайте для службы приложений имя маршрутизируемого домена.

      Снимок экрана: прослушиватель HTTP в правиле маршрутизации шлюза приложений.

    • Чтобы подключиться к шлюзу приложений с шифрованием TLS, можно создать прослушиватель со следующими параметрами:

      Параметр Стоимость Описание
      Имя правила Например: https-routingrule Имя маршрутизации
      Имя прослушивателя Например: https-listener Имя прослушивателя
      Интерфейсный IP-адрес Общедоступный Для доступа к Интернету задайте значение "Общедоступный".
      Протокол HTTPS Использование шифрования TLS
      Порт 443 HTTPS порт по умолчанию
      Параметры HTTPS Загрузить сертификат Загрузите сертификат, который содержит CN и закрытый ключ в формате .pfx.
      Тип прослушивателя Несколько сайтов Разрешить прослушивание нескольких сайтов в шлюзе приложений
      Host type Несколько элементов / подстановочный знак Если для типа прослушивателя задано значение "Несколько сайтов", задайте для параметра имени веб-сайта значение "Несколько элементов" или "Подстановочный знак".
      Host name Например: app.asabuludemo.com Задайте для службы приложений имя маршрутизируемого домена.

      Прослушиватель HTTPS правила маршрутизации шлюза приложений.

    • Необходимо настроить серверный пул и Параметр HTTP во Целях серверной части. Серверный пул был настроен на предыдущих шагах. Нажмите кнопку "Добавить новую ссылку", чтобы добавить параметр HTTP.

      Снимок экрана: добавление новой ссылки для добавления настройки H T T P.

    • Параметры HTTP, перечисленные в следующей таблице:

      Параметр Стоимость Описание
      Имя параметра HTTP Например: https-setting Имя параметра HTTP
      Протокол серверной части HTTPS Использование шифрования TLS
      Серверный порт 443 HTTPS порт по умолчанию
      Использовать сертификат хорошо известного центра сертификации Да Имя домена по умолчанию Среда службы приложений .appserviceenvironment.netбалансировки нагрузки. Сертификат этого домена выдан общедоступным доверенным корневым центром. В параметре "Доверенный корневой сертификат" можно настроить использование доверенного корневого сертификата, выданного хорошо известным ЦС.
      Переопределить новым именем узла Да Заголовок имени узла перезаписан при подключении к приложению на Среда службы приложений балансировки нагрузки
      Переопределение имени узла Выбор имени узла из целевого объекта серверной части При настройке внутреннего пула для службы приложений можно выбрать узел из целевого объекта серверной части.
      Создание настраиваемых проб No Использовать пробу по умолчанию

      Снимок экрана: диалоговое окно **Добавление настройки H T T P**.

Настройка интеграции шлюза приложений с Среда службы приложений балансировки нагрузки

Чтобы получить доступ к ILB Среда службы приложений из шлюза приложений, необходимо проверить, является ли виртуальная сеть ссылкой на частную зону DNS. Если виртуальная сеть не связана с виртуальной сетью шлюза приложений, добавьте ссылку виртуальной сети, выполнив следующие действия.

  • Чтобы настроить подключение к виртуальной сети с помощью частной зоны DNS, перейдите в зону конфигурации частной зоны DNS. Выберите Соединения виртуальной сети>Добавить

Добавьте ссылку на виртуальную сеть в частную зону DNS.

  • Введите Имя ссылки и выберите соответствующую подписку и виртуальную сеть, в которой находится шлюз приложений.

Снимок экрана: ввод данных имени ссылки в настройках ссылки на виртуальную сеть в частной зоне DNS.

  • Состояние работоспособности серверной части можно проверить в параметре Работоспособность серверной части на плоскости шлюза приложений.

Снимок экрана подтверждения состояния работоспособности серверной части из соответствующего параметра.

Добавление общедоступной записи DNS

Необходимо настроить правильное сопоставление DNS при доступе к шлюзу приложений из Интернета.

  • Общедоступный IP-адрес шлюза приложений можно найти в Интерфейсных IP-конфигурациях на плоскости шлюза приложений.

IP-адрес интерфейса шлюза приложений можно найти в конфигурации IP интерфейса.

  • Используя службу Azure DNS в качестве примера, можно добавить набор записей, чтобы связать имя домена приложения с общедоступным IP-адресом шлюза приложений.

Снимок экрана: добавление набора записей для сопоставления имени домена приложения с общедоступным IP-адресом шлюза приложений.

Проверка подключения

  • На компьютере с доступом через Интернет можно проверить разрешение имен для имени домена приложения на общедоступный IP-адрес шлюза приложений.

проверка разрешения имени из командной строки.

  • На компьютере с доступом через Интернет проверьте веб-доступ из браузера.

Снимок экрана: открытие браузера, доступ в Интернет.