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


Руководство. Быстрое масштабирование и защита веб-приложения с помощью Azure Front Door и Azure Брандмауэр веб-приложений (WAF)

Внимание

Azure Front Door (классическая версия) будет прекращена 31 марта 2027 г. Чтобы избежать нарушений работы служб, важно перенести профили Azure Front Door (классический) на уровень Azure Front Door standard или Premium к марту 2027 года. Дополнительные сведения см. в статье о прекращении использования Azure Front Door (classic).

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

Мы используем Azure CLI для этого руководства. Вы также можете использовать портал Azure, Azure PowerShell, Azure Resource Manager или REST API Azure.

Из этого руководства вы узнаете, как:

  • Создать Front Door.
  • создать политику Azure WAF;
  • Настройте набор правил для политики WAF.
  • связать политику WAF с Front Door;
  • настроить личный домен.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

Предварительные требования

  • В этом руководстве используется Azure CLI. Начало работы с Azure CLI.

    Совет

    Простой способ начать работу с Azure CLI — использовать Bash в Azure Cloud Shell.

  • Убедитесь, что front-door расширение добавлено в Azure CLI.

    az extension add --name front-door
    

Примечание.

Для получения дополнительной информации о командах, используемых в этом руководстве, см. справочник Azure CLI для Front Door.

Создание ресурса Azure Front Door

az network front-door create --backend-address <backend-address> --accepted-protocols <protocols> --name <name> --resource-group <resource-group>
  • --backend-address: полное доменное имя приложения, которое вы хотите защитить, например myapplication.contoso.com.
  • --accepted-protocols: протоколы, поддерживаемые Azure Front Door, например --accepted-protocols Http Https.
  • --name: имя вашего ресурса Azure Front Door.
  • --resource-group: группа ресурсов для этого ресурса Azure Front Door. Дополнительные сведения об управлении группами ресурсов.

Обратите внимание на значение hostName в ответе, так как оно потребуется вам позже. Dns-имя hostName ресурса Azure Front Door.

Создание профиля Azure WAF для Azure Front Door

az network front-door waf-policy create --name <name> --resource-group <resource-group> --disabled false --mode Prevention
  • --name: название новой политики Azure WAF.
  • --resource-group: группа ресурсов для этого WAF-ресурса.

Предыдущая команда создает политику WAF в режиме предотвращения.

Примечание.

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

Обратите внимание на значение ID из ответа, так как оно потребуется вам позже. Значение ID должно быть в следующем формате:

/subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/<WAF-policy-name>

Добавление управляемых наборов правил в политику WAF

Добавьте набор правил по умолчанию:

az network front-door waf-policy managed-rules add --policy-name <policy-name> --resource-group <resource-group> --type DefaultRuleSet --version 1.0

Добавьте набор правил защиты от ботов:

az network front-door waf-policy managed-rules add --policy-name <policy-name> --resource-group <resource-group> --type Microsoft_BotManagerRuleSet --version 1.0
  • --policy-name: имя вашего ресурса Azure WAF.
  • --resource-group: группа ресурсов для ресурса WAF.

Привязка политики WAF к ресурсу Azure Front Door

az network front-door update --name <name> --resource-group <resource-group> --set frontendEndpoints[0].webApplicationFirewallPolicyLink='{"id":"<ID>"}'
  • --name: имя вашего ресурса Azure Front Door.
  • --resource-group: группа ресурсов для ресурса Azure Front Door.
  • --set: обновите атрибут WebApplicationFirewallPolicyLink для frontendEndpoint, используя идентификатор новой политики WAF.

Примечание.

Если вы не используете личный домен, можно пропустить следующий раздел. Предоставьте вашим клиентам hostName, который вы получили при создании ресурса Azure Front Door.

Настройка личного домена для веб-приложения

Обновите записи DNS, чтобы направить личный домен на Azure Front Door hostName. Сведения о конкретных шагах см. в документации поставщика услуг DNS. Если вы используете Azure DNS, см. обновление записи DNS.

Для корневых доменов зоны (например, contoso.com) используйте Azure DNS и его тип записи псевдонима.

Обновите конфигурацию Azure Front Door, чтобы добавить личный домен.

Чтобы включить ПРОТОКОЛ HTTPS для личного домена, настройте сертификаты в Azure Front Door.

Блокировка веб-приложения

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

Очистка ресурсов

При отсутствии необходимости удалите группу ресурсов, политику Front Door и WAF:

az group delete --name <resource-group>
  • --name: имя группы ресурсов для всех ресурсов, используемых в этом руководстве.

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

Чтобы устранить неполадки с Front Door, см. следующую статью:.