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


Использование шлюза приложений Azure для защиты веб-приложений в решении Azure VMware

Шлюз приложений Azure — это подсистема балансировки нагрузки веб-трафика уровня 7, которая позволяет управлять трафиком в веб-приложениях, предлагаемых как в Решение Azure VMware версии 1.0, так и в версии 2.0. Обе версии протестированы с веб-приложениями, работающими в решении VMware для Azure.

и включают следующие возможности:

  • сходство сеансов на основе файлов cookie;
  • Маршрутизация на основе URL-адреса
  • Web Application Firewall (WAF)

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

В этой статье показано, как использовать шлюз приложений перед фермой веб-серверов для защиты веб-приложения, работающего в решении VMware для Azure.

Топология

На схеме показано, как Шлюз приложений используется для защиты виртуальных машин IaaS Azure, Масштабируемые наборы виртуальных машин Azure или локальных серверов. Шлюз приложений рассматривает виртуальные машины Azure VMware в качестве локальных серверов.

Diagram showing how Application Gateway protects Azure IaaS virtual machines (VMs), Azure Virtual Machine Scale Sets, or on-premises servers.

Внимание

Шлюз приложений Azure — это предпочтительный метод предоставления веб-приложений, работающих на Решение Azure VMware виртуальных машинах.

На схеме показан сценарий тестирования, используемый для проверки шлюза приложений с помощью веб-приложений решения Azure VMware.

Diagram showing the testing scenario used to validate the Application Gateway with Azure VMware Solution web applications.

Экземпляр шлюза приложений разворачивается в концентраторе в выделенной подсети с общедоступным IP-адресом Azure. Рекомендуется активировать защиту от атак DDoS Azure для виртуальной сети. Веб-сервер размещается в частном облаке решения Azure VMware на основе NSX T0 и шлюзов T1. Кроме того, решение VMware для Azure использует Global REACH ExpressRoute для подключения к концентратору и локальным системам.

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

  • Учетная запись Azure с активной подпиской.
  • Развернутое и работающее частное облако решения Azure VMware.

Развертывание и конфигурация

  1. В портале Azure найдите шлюз приложений и выберите создать шлюз приложений.

  2. Укажите основные сведения, как показано на следующем рисунке; затем нажмите кнопку "Далее" — интерфейсы>.

    Screenshot showing Create application gateway page in Azure portal.

  3. Выберите тип внешнего IP-адреса. Выберите существующий общедоступный IP-адрес или создайте его. По завершении выберите Далее: серверные компоненты>.

    Примечание.

    Для частных интерфейсов поддерживаются только номера SKU "Стандартный" и "брандмауэр веб-приложения" (WAF).

  4. Добавьте серверный пул виртуальных машин, работающих в инфраструктуре решения VMware в Azure. Укажите сведения о веб-серверах, которые работают в частном облаке решения Azure VMware, и нажмите кнопку Добавить. Затем выберите Далее: конфигурация >.

  5. На вкладке Конфигурация выберите Добавить правило маршрутизации.

  6. На вкладке Прослушиватель укажите сведения для прослушивателя. Если выбран вариант HTTPS, необходимо предоставить сертификат из PFX-файла или существующего сертификата Azure Key Vault.

  7. Перейдите на вкладку серверные целевые объекты и выберите созданный ранее серверный пул. В поле Параметры HTTP выберите Добавить новое.

  8. Настройте параметры для параметров HTTP. Выберите Добавить.

  9. Если необходимо настроить правила на основе пути, выберите Добавить несколько целевых объектов, чтобы создать правило на основе пути.

  10. Добавьте правило на основе пути и нажмите кнопку Добавить. Повторите, чтобы добавить дополнительные правила на основе пути.

  11. Завершив добавление правил на основе пути, нажмите кнопку "Добавить еще раз", а затем нажмите кнопку "Далее: теги>".

  12. Добавьте теги, а затем нажмите кнопку "Далее: проверка и создание>".

  13. Проверка выполняется в шлюзе приложений. В случае успеха нажмите кнопку Создать для развертывания.

Примеры конфигураций

Теперь настройте Шлюз приложений с виртуальными машинами Решение Azure VMware в качестве серверных пулов для следующих вариантов использования:

Размещение нескольких сайтов

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

Примечание.

В этой процедуре предполагается, что у вас несколько доменов, поэтому мы будем использовать примеры www.contoso.com и www.contoso2.com.

  1. В частном облаке создайте два разных пула виртуальных машин. Один представляет Contoso и второй contoso2.

    Screenshot showing summary of a web server's details in VMware vSphere Client.

    Мы использовали Windows Server 2016 с установленной ролью службы IIS (IIS). После установки виртуальных машин выполните следующие команды PowerShell, чтобы настроить службы IIS на каждой из виртуальных машин.

    Install-WindowsFeature -Name Web-Server
    Add-Content -Path C:\inetpub\wwwroot\Default.htm -Value $($env:computername)
    
  2. В существующем экземпляре шлюза приложений выберите серверные пулы в меню слева, щелкните Добавитьи введите сведения о новых пулах. Выберите Добавить в области справа.

    Screenshot of Backend pools page for adding backend pools.

  3. В разделе Listeners (прослушиватели) создайте новый прослушиватель для каждого веб-сайта. Введите сведения для каждого прослушивателя и нажмите кнопку Добавить.

  4. Слева выберите Параметры HTTP и нажмите кнопку Добавить в левой области. Введите сведения для создания нового параметра HTTP и нажмите кнопку Сохранить.

    Screenshot of HTTP settings page to create a new HTTP setting.

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

  6. Настройте соответствующий серверный пул и параметры HTTP. Выберите Добавить.

  7. Проверка подключения. Откройте предпочитаемый браузер и перейдите к разным веб-сайтам, размещенным в среде Решение Azure VMware.

    Screenshot of browser page showing successful test the connection.

Маршрутизация по URL-адресу

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

  1. В частном облаке создайте пул виртуальных машин для представления веб-фермы.

    Screenshot of page in VMware vSphere Client showing summary of another VM.

    Для иллюстрации этого руководства используется роль Windows Server 2016 с ролью IIS. После установки виртуальных машин выполните следующие команды PowerShell, чтобы настроить службы IIS для каждой виртуальной машины.

    На первой виртуальной машине contoso-web-01 будет размещен основной веб-сайт.

    Install-WindowsFeature -Name Web-Server
    Add-Content -Path C:\inetpub\wwwroot\Default.htm -Value $($env:computername)
    

    На второй виртуальной машине contoso-web-02 будет размещен сайт образов.

    Install-WindowsFeature -Name Web-Server
    New-Item -Path "C:\inetpub\wwwroot\" -Name "images" -ItemType "directory"
    Add-Content -Path C:\inetpub\wwwroot\images\test.htm -Value $($env:computername)
    

    На третьей виртуальной машине contoso-web-03 будет размещен сайт видео.

    Install-WindowsFeature -Name Web-Server
    New-Item -Path "C:\inetpub\wwwroot\" -Name "video" -ItemType "directory"
    Add-Content -Path C:\inetpub\wwwroot\video\test.htm -Value $($env:computername)
    
  2. Добавьте три новых серверных пула в существующий экземпляр шлюза приложений.

    1. Выберите Серверные пулы в меню слева.
    2. Выберите Добавить и введите сведения о первом пуле, contoso-Web.
    3. Добавьте одну виртуальную машину в качестве целевой.
    4. Выберите Добавить.
    5. Повторите эту процедуру для contoso-Images и contoso-Video, добавив одну уникальную виртуальную машину в качестве целевого объекта.

    Screenshot of Backend pools page showing the addition of three new backend pools.

  3. В разделе Прослушиватели создайте новый прослушиватель типа Basic с помощью порта 8080.

  4. В панели навигации слева выберите Параметры HTTP и нажмите кнопку Добавить в левой области. Введите сведения для создания нового параметра HTTP и нажмите кнопку Сохранить.

    Screenshot of Add HTTP setting page showing HTTP settings configuration.

  5. Создайте правила в разделе Правила в меню слева и свяжите каждое из них с ранее созданным прослушивателем. Затем настройте основной внутренний пул и параметры HTTP и выберите Добавить.

    Screenshot of Add a routing rule page to configure routing rules to a backend target.

  6. Выполните проверку настройки. Получите доступ к шлюзу приложений на портал Azure и скопируйте общедоступный IP-адрес в разделе Обзор.

    1. Откройте новое окно браузера и перейдите на портал по адресу http://<app-gw-ip-address>:8080.

      Screenshot of browser page showing successful test of the configuration.

    2. Изменить URL-адрес на http://<app-gw-ip-address>:8080/images/test.htm.

      Screenshot of another successful test with the new URL.

    3. Изменить URL-адрес на http://<app-gw-ip-address>:8080/video/test.htm.

      Screenshot of successful test with the final URL.

Next Steps

Теперь, когда вы рассмотрели использование Шлюз приложений для защиты веб-приложения, работающего на Решение Azure VMware, ознакомьтесь со следующими сведениями: