Развертывание и настройка Брандмауэра Azure уровня "Премиум"

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

  • Проверка TLS — расшифровывает исходящий трафик, обрабатывает данные, затем шифрует эти данные и отправляет их в пункт назначения.
  • IDPS — система обнаружения и предотвращения сетевых вторжений позволяет отслеживать активность в сети в отношении вредоносных действий, записывать в журнал сведения о таких действиях, сообщать о них и при необходимости пытаться блокировать их.
  • Фильтрация URL-адресов . расширяет возможности фильтрации по полному доменному имени брандмауэра Azure, чтобы учесть весь URL-адрес. Например, www.contoso.com/a/c вместо www.contoso.com.
  • Веб-категории — администраторы могут разрешать или запрещать доступ пользователей к веб-сайтам определенных категорий, таким как веб-сайты азартных игр, социальных сетей и др.

Дополнительные сведения см. на странице Функции Брандмауэра Azure уровня "Премиум".

Вы будете использовать шаблон для развертывания тестовой среды, которая содержит центральную виртуальную сеть (10.0.0.0/16) с тремя подсетями:

  • рабочей подсетью (10.0.10.0/24);
  • подсетью Бастиона Azure (10.0.20.0/24);
  • подсетью брандмауэра (10.0.100.0/24).

В этой тестовой среде для простоты используется одна центральная виртуальная сеть. В производственных целях наиболее распространена звездообразная топология с одноранговыми виртуальными сетями.

Central VNet topology

Рабочая виртуальная машина — это клиент, направляющий запросы HTTP/S через брандмауэр.

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

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

Развертывание инфраструктуры

Шаблон развертывает полную среду тестирования для Брандмауэра Azure уровня "Премиум" с системой IDPS, проверкой TLS, фильтрацией URL-адресов и веб-категориями.

  • Новый Брандмауэр Azure уровня "Премиум" и политика брандмауэра с предварительно определенными параметрами для упрощения проверки основных возможностей (IDPS, проверка TLS, фильтрация URL-адресов и веб-категории).
  • Развертывает все зависимости, в том числе Key Vault и Управляемое удостоверение. В рабочей среде эти ресурсы могут быть уже созданы и не нужны в том же шаблоне.
  • Создает самозаверяющий корневой ЦС и развертывает его на созданном Key Vault
  • Создает производный промежуточный ЦС и развертывает его на тестовой виртуальной машине Windows (WorkerVM).
  • Узел Бастиона (BastionHost) также развертывается, и его можно использовать для подключения к тестовой машине Windows (WorkerVM).

Deploy to Azure

тестирование брандмауэра.

Теперь вы можете протестировать IDPS, проверку TLS, веб-фильтрацию и веб-категории.

Добавление параметров диагностики брандмауэра

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

  1. Выберите брандмауэр с именем DemoFirewall и в разделе Мониторинг выберите Параметры диагностики.
  2. Выберите Добавить параметр диагностики.
  3. В качестве имени параметра диагностики введите fw-diag.
  4. В разделе Журнал выберите AzureFirewallApplicationRule и AzureFirewallNetworkRule.
  5. В области Сведения о месте назначения выберите Send to Log Analytics workspace (Отправить в рабочую область Log Analytics).
  6. Щелкните Сохранить.

Тесты IDPS

Чтобы протестировать IDPS, вам потребуется развернуть собственный внутренний веб-сервер с соответствующим сертификатом сервера. Дополнительные сведения о требованиях в отношении сертификатов, используемых в Брандмауэре Azure уровня "Премиум", см. в статье Сертификаты Брандмауэра Azure уровня "Премиум".

Для управления различными заголовками HTTP и моделирования вредоносного трафика можно использовать curl.

Чтобы проверить поставщиков удостоверений для трафика HTTP, выполните следующие действия.

  1. На виртуальной машине WorkerVM откройте окно командной строки от имени администратора.

  2. В командной строке введите следующую команду:

    curl -A "BlackSun" <your web server address>

  3. Вы увидите ответ веб-сервера.

  4. Перейдите к журналам сетевых правил Брандмауэра на портале Azure, чтобы найти предупреждение, похожее на следующее сообщение:

    Alert message

    Примечание

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

  5. Добавьте правило подписи для подписи 2008983:

    1. Выберите DemoFirewallPolicy и в разделе Параметры щелкните IDPS.
    2. Перейдите на вкладку Правила подписи.
    3. В разделе Идентификатор подписи в открытом текстовом поле введите 2008983.
    4. В разделе Режим выберите Запретить.
    5. Щелкните Сохранить.
    6. Дождитесь завершения развертывания, прежде чем продолжить.
  6. В WorkerVM выполните команду curl еще раз:

    curl -A "BlackSun" <your web server address>

    Так как HTTP-запрос теперь блокируется брандмауэром, после истечения времени ожидания подключения вы увидите следующе:

    read tcp 10.0.100.5:55734->10.0.20.10:80: read: connection reset by peer

  7. Перейдите к журналам мониторинга на портале Azure и найдите сообщение для заблокированного запроса.

Тестирование IDPS для HTTPS-трафика

Повторите эти тесты curl, используя протокол HTTPS вместо HTTP. Пример:

curl --ssl-no-revoke -A "BlackSun" <your web server address>

Вы должны увидеть те же результаты, что и в тестах для HTTP.

Проверка TLS с фильтрацией URL-адресов

Чтобы выполнить проверку TLS с помощью фильтрации URL-адресов, следуйте инструкциям ниже.

  1. Измените правила применения политики брандмауэра и добавьте в коллекцию правил AllowWeb новое правило, AllowURL. Настройте целевой URL-адрес www.nytimes.com/section/world , исходный IP-адрес * , www.nytimes.com/section/worldтипа назначения, выберите *и протоколы http, HTTPS.

  2. После завершения развертывания откройте браузер на WorkerVM, перейдите по адресу https://www.nytimes.com/section/world и убедитесь, что ответ HTML отображается в браузере надлежащим образом.

  3. На портале Azure в журналах мониторинга правил приложений можно просмотреть URL-адрес полностью:

    Alert message showing the URL

Некоторые HTML-страницы могут выглядеть неполными, так как они ссылаются на другие URL-адреса, которые запрещены. Чтобы решить эту проблему, можно использовать следующий подход:

  • Если HTML-страница содержит ссылки на другие домены, эти домены можно добавить в новое правило приложения, разрешающее доступ к этим полным доменным именам.

  • Если HTML-страница содержит ссылки на относительные URL-адреса, можно изменить правило и добавить в URL-адрес звездочку. Например: targetURLs=www.nytimes.com/section/world*

    Кроме того, новый URL-адрес можно добавить в правило. Пример:

    www.nytimes.com/section/world, www.nytimes.com/section/world/*

Тестирование веб-категорий

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

  1. На портале откройте группу ресурсов и выберите DemoFirewallPolicy.

  2. Выберите Правила приложения, а затем включите Добавить коллекцию правил.

  3. В качестве именивведите женералвеб, Priority103, Группа коллекции правил SELECT дефаултаппликатионрулеколлектионграуп.

  4. В разделе правила для имени типа алловспортс, Source , протоколhttp, HTTPS, выберите Проверка TLS, тип назначения выберите веб-категории, назначение выберите Спорт.

  5. Выберите Добавить.

    Sports web category

  6. После завершения развертывания перейдите по адресу воркервм и откройте веб-браузер и перейдите к .

    Вы должны увидеть веб-страницу лиги NFL, а в журнале правил приложений будет указано, что правило Веб-категория: Спорт сработало и запрос был разрешен.

Дальнейшие действия