Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Smart Web Security
  • Начало работы
    • Все практические руководства
    • Базовая настройка SWS
    • Создание L7-балансировщика с профилем безопасности через Ingress-контроллер Application Load Balancer
    • Защита API Gateway при помощи Smart Web Security
    • Экстренная защита сервисов в Application Load Balancer от DDoS на уровне L7
    • Централизованная публикация в интернете и защита приложений от DDoS
    • Создание распределенной инфраструктуры с защищенным доступом
    • Развертывание веб-приложения на серверах BareMetal с L7-балансировщиком и защитой Smart Web Security
    • Обзор
    • Профили безопасности
    • WAF
    • ARL (лимит на запросы)
    • Правила
    • Условия
    • Списки
    • Защита доменов
    • Логирование
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений

В этой статье:

  • Схема размещения ресурсов в Yandex Cloud
  • Подготовьте облако к работе
  • Необходимые платные ресурсы
  • Создайте каталог безопасности
  • Создайте каталог без сети
  • Назначьте роли на каталог
  • Создайте виртуальную сеть и подсети
  • Создайте каталоги для веб-приложений
  • Подключите каталоги веб-приложений к внутренним подсетям балансировщика
  • Настройте группы безопасности
  • Создайте группы безопасности для ВМ веб-приложений
  • Создайте группу безопасности для L7-балансировщика
  • Создайте группы безопасности для управляющей ВМ
  • Настройте профиль безопасности
  • Создайте ресурсы
  • Создайте ВМ для управления веб-приложениями
  • Создайте ВМ для веб-приложений
  • Настройте балансировщик
  • Запустите визард
  • Настройте целевую группу
  • Настройте группы бэкендов
  • Настройте HTTP-роутер
  • Настройте L7-балансировщик
  • Подключите ресурсы второго каталога
  • Проверьте инфраструктуру
  • Запустите тестовые веб-сервисы на ВМ веб-приложений
  • Посмотрите проверки состояний
  • Проверьте доступность веб-приложений
  • Проверьте работу профиля безопасности
  • Как удалить созданные ресурсы
  1. Практические руководства
  2. Создание распределенной инфраструктуры с защищенным доступом

Создание распределенной инфраструктуры с защищенным доступом

Статья создана
Yandex Cloud
Обновлена 12 ноября 2025 г.
  • Схема размещения ресурсов в Yandex Cloud
  • Подготовьте облако к работе
    • Необходимые платные ресурсы
  • Создайте каталог безопасности
    • Создайте каталог без сети
    • Назначьте роли на каталог
  • Создайте виртуальную сеть и подсети
  • Создайте каталоги для веб-приложений
  • Подключите каталоги веб-приложений к внутренним подсетям балансировщика
  • Настройте группы безопасности
    • Создайте группы безопасности для ВМ веб-приложений
    • Создайте группу безопасности для L7-балансировщика
    • Создайте группы безопасности для управляющей ВМ
  • Настройте профиль безопасности
  • Создайте ресурсы
    • Создайте ВМ для управления веб-приложениями
    • Создайте ВМ для веб-приложений
  • Настройте балансировщик
    • Запустите визард
    • Настройте целевую группу
    • Настройте группы бэкендов
    • Настройте HTTP-роутер
    • Настройте L7-балансировщик
    • Подключите ресурсы второго каталога
  • Проверьте инфраструктуру
    • Запустите тестовые веб-сервисы на ВМ веб-приложений
    • Посмотрите проверки состояний
    • Проверьте доступность веб-приложений
    • Проверьте работу профиля безопасности
  • Как удалить созданные ресурсы

В этом руководстве вы создадите инфраструктуру для организации защищенного доступа к веб-приложениям, размещенным в разных каталогах Yandex Cloud. Для контроля трафика все запросы к веб-приложениям будут приниматься на общий IP-адрес и проверяться правилами профиля безопасности Yandex Smart Web Security.

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

Это руководство — частный сценарий руководства Централизованная публикация в интернете и защита от DDoS-атак приложений в разных каталогах. В руководстве приведен пример сценария создания всей инфраструктуры с нуля.

Минимальные роли, необходимые для выполнения руководства:

  • На облако:

    • resource-manager.admin — для создания каталогов и назначения ролей.
  • На каталоги:

    • vpc.admin — для создания ресурсов в Yandex Virtual Private Cloud.
    • smart-web-security.editor — для создания профиля безопасности.
    • compute.editor — для создания виртуальных машин.
    • alb.editor — для создания ресурсов в Yandex Application Load Balancer

Схема размещения ресурсов в Yandex CloudСхема размещения ресурсов в Yandex Cloud

На схеме обозначены следующие ресурсы:

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

  • Каталог безопасности secured-entry-point — каталог, доступ к которому должны иметь только администраторы ресурсов компании и сотрудники службы информационной безопасности (СИБ). В этом каталоге будут располагаться:

    • ALB app-load-balancer — L7-балансировщик Yandex Application Load Balancer, через который веб-приложения публикуются в интернете.
    • SWS sws-profile — профиль безопасности Yandex Smart Web Security для защиты трафика на уровне приложений (L7).
    • Управляющая ВМ work-station — виртуальная машина Yandex Compute Cloud, с которой происходит подключение к ВМ в каталогах веб-приложений.
  • VPC alb-network — облачная сеть Yandex Virtual Private Cloud, которая объединяет подсети в разных каталогах:

    • alb-subnet-a, alb-subnet-b, alb-subnet-d — подсети с узлами ALB в трех зонах доступности.
    • subnet-service-1, subnet-service-2 — подсети с ресурсами веб-приложений.
  • Каталоги веб-приложений service-1 и service-2 с целевыми ресурсами веб-приложений — ВМ vm-service-1 и vm-service-2. Доступ к этим каталогам будут иметь команды, разрабатывающие веб-сервисы.

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

  1. Подготовьте облако к работе.
  2. Создайте каталог безопасности.
  3. Создайте виртуальную сеть и подсети.
  4. Создайте каталоги для веб-приложений.
  5. Подключите каталоги веб-приложений к внутренним подсетям балансировщика.
  6. Настройте группы безопасности.
  7. Настройте профиль безопасности.
  8. Создайте ресурсы.
  9. Настройте балансировщик.
  10. Проверьте инфраструктуру.

Если созданные ресурсы вам больше не нужны, удалите их.

Подготовьте облако к работеПодготовьте облако к работе

Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь.
  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его и привяжите к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака.

Подробнее об облаках и каталогах.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки инфраструктуры входит:

  • плата за постоянно работающие ВМ (см. тарифы Yandex Compute Cloud);
  • плата за использование Application Load Balancer (см. тарифы Yandex Application Load Balancer);
  • плата за использование публичных IP-адресов и исходящий трафик (см. тарифы Yandex Virtual Private Cloud);
  • плата за количество запросов в сервис Smart Web Security (см. тарифы Yandex Smart Web Security).

Создайте каталог безопасностиСоздайте каталог безопасности

В каталоге безопасности будут располагаться балансировщик нагрузки, облачная сеть, подсети и профиль безопасности.

Создайте каталог без сетиСоздайте каталог без сети

Консоль управления
  1. В консоли управления выберите облако и нажмите Создать каталог.
  2. Введите имя каталога, например, secured-entry-point.
  3. В поле Дополнительно отключите опцию Создать сеть по умолчанию. Сеть и подсети будут созданы на следующем шаге.
  4. Нажмите Создать.

Назначьте роли на каталогНазначьте роли на каталог

Предоставьте администраторам инфраструктуры и СИБ доступ к каталогу для управления сетью, балансировщиком и профилем безопасности.

Консоль управления
  1. В консоли управления перейдите в каталог secured-entry-point.

  2. Перейдите на вкладку Права доступа.

  3. Нажмите Настроить доступ.

  4. В открывшемся окне выберите раздел Пользовательские аккаунты.

  5. Выберите пользователя из списка или воспользуйтесь поиском по пользователям.

  6. Нажмите Добавить роль и выберите роль из списка или воспользуйтесь поиском. Минимально необходимые роли:

    • alb.editor — управление ресурсами сервиса Application Load Balancer.
    • vpc.user — подключение к сетевым ресурсам Virtual Private Cloud и их использование.
    • smart-web-security.editor — использование профилей безопасности Smart Web Security и управление ими.
    • compute.editor — возможность создавать, обновлять и удалять ВМ Compute Cloud.
  7. Нажмите Сохранить.

Создайте виртуальную сеть и подсетиСоздайте виртуальную сеть и подсети

В каталоге безопасности создайте сеть с подсетями для L7-балансировщика и каталогов веб-приложений. Это обеспечит сетевую связность между L7-балансировщиком и ресурсами веб-приложений.

Консоль управления
  1. Перейдите в созданный каталог secured-entry-point.

  2. В списке сервисов выберите Virtual Private Cloud.

  3. Справа сверху нажмите Создать сеть.

  4. В поле Имя введите alb-network.

  5. В поле Дополнительно отключите опцию Создать подсети.

  6. Нажмите Создать сеть.

  7. На панели слева выберите Подсети.

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

    1. Имя — subnet-service-1.
    2. Зона доступности — kz1-a.
    3. Сеть — alb-network.
    4. CIDR — 10.121.0.0/24.
    5. Нажмите Создать подсеть.
  9. Аналогично создайте подсеть с именем subnet-service-2 в зоне доступности kz1-b с диапазоном IP-адресов 10.122.0.0/24.

  10. Создайте подсети для L7-балансировщика в разных зонах доступности и с разными диапазонами адресов:

    • subnet-alb-a — kz1-a, 10.131.0.0/24.
    • subnet-alb-b — kz1-b, 10.132.0.0/24.
    • subnet-alb-d — kz1-d, 10.133.0.0/24.

Создайте каталоги для веб-приложенийСоздайте каталоги для веб-приложений

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

Консоль управления
  1. Выберите облако и нажмите Создать каталог.

  2. Введите имя каталога, например, service-1.

  3. В поле Дополнительно отключите опцию Создать сеть по умолчанию.

  4. Нажмите Создать.

  5. Аналогично создайте каталог service-2.

  6. Для ограничения доступа к каталогам назначьте роли пользователям в зависимости от ресурсов, которые будут размещены в каталоге. Минимально необходимые роли на каталоги service-1 и service-2:

    • vpc.user — подключение к сетевым ресурсам Virtual Private Cloud и их использование.
    • compute.editor — возможность создавать, обновлять и удалять ВМ.

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

Чтобы объединить ресурсы каталогов в общую сеть, переместите подсети виртуальной сети в каталоги веб-приложений.

Консоль управления
  1. В консоли управления перейдите в каталог secured-entry-point.
  2. В списке сервисов выберите Virtual Private Cloud.
  3. Выберите облачную сеть alb-network.
  4. Нажмите в строке подсети subnet-service-1 и выберите Переместить.
  5. В выпадающем списке выберите каталог service-1.
  6. Нажмите Переместить.
  7. Аналогично переместите подсеть subnet-service-2 в каталог service-2.

Настройте группы безопасностиНастройте группы безопасности

Группы безопасности позволяют настроить правила для входящего и исходящего трафика. В этом руководстве входящий трафик из интернета принимается L7-балансировщиком и маршрутизируется по внутренней сети на ВМ веб-приложений. Настройте группы безопасности в каждом из каталогов в соответствии с рекомендациями.

Создайте группы безопасности для ВМ веб-приложенийСоздайте группы безопасности для ВМ веб-приложений

Правила должны разрешать исходящий и входящий трафик от подсети балансировщика.

Консоль управления
  1. В консоли управления выберите каталог service-1.

  2. В списке сервисов выберите Virtual Private Cloud.

  3. На панели слева выберите Группы безопасности.

  4. Справа сверху нажмите Создать группу безопасности.

  5. В поле Имя укажите service-1-security-group.

  6. В поле Сеть выберите сеть alb-network из каталога secured-entry-point.

  7. В блоке Правила создайте следующие правила по инструкции под таблицей:

    Направление
    трафика
    Описание Диапазон портов Протокол Источник /
    назначение
    CIDR блоки
    Входящий http 8000 TCP CIDR 10.131.0.0/24
    10.132.0.0/24
    10.133.0.0/24
    Входящий ssh 22 TCP CIDR 10.133.0.0/24
    Исходящий any 0-65535 Любой CIDR 10.131.0.0/24
    10.132.0.0/24
    10.133.0.0/24

    Чтобы создать правило:

    1. Перейдите на вкладку Входящий трафик или Исходящий трафик.
    2. Нажмите Добавить правило.
    3. Добавьте новое правило в соответствии с таблицей.
    4. Нажмите Сохранить.
  8. Нажмите Создать.

  9. Аналогично создайте группу безопасности service-2-security-group в каталоге service-2.

Создайте группу безопасности для L7-балансировщикаСоздайте группу безопасности для L7-балансировщика

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

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.

  2. В списке сервисов выберите Virtual Private Cloud.

  3. На панели слева выберите Группы безопасности.

  4. Справа сверху нажмите Создать группу безопасности.

  5. В поле Имя укажите alb-security-group.

  6. В поле Сеть выберите сеть alb-network.

  7. В блоке Правила создайте следующие правила по инструкции под таблицей:

    Направление
    трафика
    Описание Диапазон портов Протокол Источник /
    назначение
    CIDR блоки
    Входящий http 80 TCP CIDR 0.0.0.0/0
    Входящий healthchecks 30080 TCP Проверки состояния балансировщика —
    Исходящий http 8000 Любой CIDR 10.121.0.0/24
    10.122.0.0/24

    Чтобы создать правило:

    1. Перейдите на вкладку Входящий трафик или Исходящий трафик.
    2. Нажмите Добавить правило.
    3. Добавьте новое правило в соответствии с таблицей.
    4. Нажмите Сохранить.
  8. Нажмите Создать.

Создайте группы безопасности для управляющей ВМСоздайте группы безопасности для управляющей ВМ

Правила должны разрешать исходящий трафик от управляющей ВМ к порту 22 ВМ веб-приложений.

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.

  2. В списке сервисов выберите Virtual Private Cloud.

  3. На панели слева выберите Группы безопасности.

  4. Справа сверху нажмите Создать группу безопасности.

  5. В поле Имя укажите vm-security-group.

  6. В поле Сеть выберите сеть alb-network.

  7. В блоке Правила создайте следующие правила по инструкции под таблицей:

    Направление
    трафика
    Описание Диапазон портов Протокол Источник /
    назначение
    CIDR блоки
    Входящий ssh 22 TCP CIDR 0.0.0.0/0 *
    Исходящий ssh 22 TCP CIDR 10.121.0.0/24
    10.122.0.0/24

    * Рекомендуется вместо 0.0.0.0/0 указать CIDR блоки публичных IP-адресов, с которых вы хотите разрешить подключение к управляющей ВМ.

    Чтобы создать правило:

    1. Перейдите на вкладку Входящий трафик или Исходящий трафик.
    2. Нажмите Добавить правило.
    3. Добавьте новое правило в соответствии с таблицей.
    4. Нажмите Сохранить.
  8. Нажмите Создать.

Настройте профиль безопасностиНастройте профиль безопасности

Профиль безопасности содержит правила фильтрации трафика для защиты от информационных угроз на прикладном уровне L7 модели OSI.

Создайте профиль безопасности по преднастроенному шаблону:

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.
  2. В списке сервисов выберите Smart Web Security.
  3. На панели слева выберите Профили безопасности и нажмите Создать профиль.
  4. Выберите По преднастроенному шаблону.
  5. Введите имя профиля — sws-profile.
  6. В поле Действие для базового правила по умолчанию выберите Разрешить.
  7. Нажмите Создать профиль.

Создайте ресурсыСоздайте ресурсы

В качестве ресурсов будут использоваться виртуальные машины, по одной в каждом каталоге. ВМ в каталоге безопасности secured-entry-point необходима для доступа к виртуальным машинам веб-приложений по внутренней сети. В этом руководстве она называется управляющей ВМ.

Для ограничения внешнего трафика виртуальные машины веб-приложений не будут иметь внешний IP-адрес.

Создайте ВМ для управления веб-приложениямиСоздайте ВМ для управления веб-приложениями

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.

  2. В списке сервисов выберите Compute Cloud.

  3. На панели слева выберите Виртуальные машины.

  4. Нажмите Создать виртуальную машину.

  5. В блоке Образ загрузочного диска выберите операционную систему Ubuntu 24.04.

  6. В блоке Расположение выберите зону доступности kz1-d.

  7. В блоке Сетевые настройки:

    • В поле Подсеть убедитесь, что выбрана подсеть subnet-alb-d.
    • В поле Публичный IP-адрес оставьте значение Автоматически.
    • В поле Группы безопасности выберите группу безопасности vm-security-group.
  8. В блоке Доступ выберите вариант SSH-ключ.

  9. В поле Логин введите имя пользователя ВМ. Не используйте имена root, admin или другие, зарезервированные ОС.

  10. В поле SSH-ключ выберите SSH-ключ, сохраненный в вашем профиле пользователя организации.

    Чтобы добавить новый ключ:

    1. Нажмите Добавить ключ.

    2. Задайте имя SSH-ключа.

    3. Выберите вариант:

      • Ввести вручную — вставьте содержимое открытого SSH-ключа. Пару SSH-ключей необходимо создать самостоятельно.
      • Загрузить из файла — загрузите открытую часть SSH-ключа. Пару SSH-ключей необходимо создать самостоятельно.
      • Сгенерировать ключ — автоматическое создание пары SSH-ключей.
    4. Нажмите Добавить.

  11. В блоке Общая информация задайте имя ВМ work-station.

  12. Нажмите Создать ВМ.

Создайте ВМ для веб-приложенийСоздайте ВМ для веб-приложений

Аналогично создайте ВМ в каталогах service-1 и service-2, при этом:

  • Выберите зоны доступности kz1-a и kz1-b соответственно.
  • Убедитесь, что для ВМ выбраны подсети subnet-service-1 и subnet-service-2 соответственно.
  • В поле Публичный IP-адрес выберите опцию Без адреса.
  • В поле Группы безопасности выберите группы безопасности service-1-security-group и service-2-security-group.
  • Укажите имена ВМ vm-service-1 и vm-service-2.

Настройте балансировщикНастройте балансировщик

Создайте и настройте балансировщик с помощью визарда.

Важно

Визард позволяет создать и подключить только одну целевую группу и только одну группу бэкендов, то есть ресурсы из одного каталога. Ресурсы второго каталога нужно подключить вручную.

Запустите визардЗапустите визард

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.
  2. В списке сервисов выберите Application Load Balancer.
  3. Нажмите Создать L7-балансировщик и выберите Визард. Визард перейдет на страницу создания целевых групп.

Настройте целевую группуНастройте целевую группу

В целевые группы входят ВМ, созданные в каталогах веб-приложений. Целевые группы будут подключены к балансировщику через внутренние подсети.

Создайте целевую группу для каталога service-1:

Консоль управления
  1. Введите имя целевой группы: target-group-1.

  2. В списке целевых ресурсов будет указан только IP-адрес управляющей ВМ. Добавьте в список ресурсов новый целевой ресурс:

    1. Под списком ресурсов в блоке с кнопкой Добавить целевой ресурс укажите внутренний IP-адрес ВМ vm-service-1.
    2. Там же выберите подсеть subnet-service-1 в выпадающем списке с плейсхолдером Не выбрано. Чтобы найти нужную подсеть, включите опцию Во всех каталогах.
    3. Нажмите Добавить целевой ресурс.
    4. Активируйте новый целевой ресурс в списке ресурсов.
    5. Убедитесь, что ресурс управляющей ВМ деактивирован.
  3. Нажмите Создать и продолжить. Визард перейдет на страницу создания группы бэкендов.

Настройте группы бэкендовНастройте группы бэкендов

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

Консоль управления
  1. Включите Расширенные настройки.

  2. Введите имя группы бэкендов: backend-group-1.

  3. Тип группы оставьте HTTP.

  4. Чтобы запросы одной пользовательской сессии обрабатывал один и тот же ресурс бэкенда, активируйте опцию Привязка сессий.

  5. В блоке Бэкенды:

    • Введите имя бэкенда: backend-1.
    • Оставьте тип бэкенда — Целевая группа.
    • Оставьте созданную ранее целевую группу: target-group-1.
    • Укажите TCP-порт вашего сервиса, который вы открыли в группе безопасности service-1-security-group. В этом руководстве это порт 8000.
  6. В блоке HTTP проверка состояния:

    • Укажите тот же порт, который вы указали выше — 8000.
    • В поле Путь оставьте значение без изменений, поскольку тестовый сервис не имеет специально выделенного эндпоинта для проверки состояния.
  7. Нажмите Создать и продолжить. Визард перейдет на страницу настройки HTTP-роутера.

Настройте HTTP-роутерНастройте HTTP-роутер

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

Консоль управления
  1. Введите имя роутера: alb-http-router.

  2. Включите Расширенные настройки.

  3. В блоке Виртуальные хосты:

    • В поле Имя введите имя хоста: alb-virtual-host.
    • Поле Authority оставьте пустым.
    • В поле Профиль безопасности выберите профиль sws-profile, созданный ранее.
  4. Задайте параметры маршрута:

    • Имя маршрута — app-1.
    • Путь — Начинается с и далее /app1.
    • Действие — Маршрутизация.
    • Группа бэкендов — оставьте созданную ранее группу.
    • Замена пути или начала — укажите путь /.
  5. Нажмите Создать и продолжить. Визард перейдет на страницу настройки балансировщика.

Настройте L7-балансировщикНастройте L7-балансировщик

Балансировщик нагрузки принимает запросы и распределяет их по ВМ из целевой группы в соответствии с правилами, указанными в HTTP-роутере. Для приема трафика балансировщик использует обработчики. Визард создаст обработчик автоматически. В качестве HTTP-роутера будет выбран роутер, созданный на предыдущем шаге.

Консоль управления
  1. Введите имя балансировщика: app-load-balancer.

  2. Включите Расширенные настройки.

  3. В блоке Сетевые настройки выберите созданную ранее сеть alb-network.

  4. Для Группы безопасности выберите Из списка и далее группу безопасности балансировщика alb-security-group.

  5. В блоке Размещение выберите ранее созданные подсети subnet-alb-a, subnet-alb-b и subnet-alb-d в соответствующих зонах доступности и включите прием трафика в этих подсетях.

  6. Настройте обработчик:

    • Введите имя обработчика: alb-listener.

    • В блоке Приём и обработка трафика укажите:

      • Тип обработчика — HTTP.
      • Протокол — HTTP.
      • HTTP-роутер — выберите созданный ранее роутер.
  7. Нажмите Создать.

Подключите ресурсы второго каталогаПодключите ресурсы второго каталога

При создании балансировщика с помощью визарда возможно подключить ресурсы только одного каталога. Поэтому целевую группу и группу бэкендов каталога service-2 необходимо создать и подключить вручную.

Консоль управления
  1. В консоли управления выберите каталог secured-entry-point.

  2. В списке сервисов выберите Application Load Balancer.

  3. На панели слева выберите Целевые группы.

  4. Нажмите Создать целевую группу.

  5. Создайте целевую группу для каталога service-2 по образцу целевой группы для каталога service-1. В качестве параметров целевого ресурса используйте:

    • Имя — target-group-2.
    • Внутренний IP-адрес ВМ — vm-service-2.
    • Подсеть — subnet-service-2.
  6. На панели слева выберите Группы бэкендов.

  7. Нажмите Создать группу бэкендов.

  8. Создайте группу бэкендов по образцу группы бэкендов для каталога service-1. В качестве параметров бэкенда используйте:

    • Имя группы бэкендов — backend-group-2.
    • Имя бэкенда — backend-2.
    • Целевая группа — target-group-2.
    • Путь — такой же, как у группы бэкендов backend-group-1.
    • Порт — TCP-порт вашего сервиса, который вы открыли в группе безопасности service-2-security-group. В этом руководстве — 8000.
  9. На панели слева выберите HTTP-роутеры.

  10. Выберите HTTP-роутер alb-http-router.

  11. В блоке Виртуальные хосты справа от alb-virtual-host нажмите → Редактировать.

  12. Внизу открывшегося окна нажмите Добавить маршрут.

  13. Задайте параметры маршрута:

    • Имя маршрута — app-2.
    • Путь — Начинается с и далее /app2.
    • Действие — Маршрутизация.
    • Группа бэкендов — backend-group-2.
    • Замена пути или начала — укажите путь /.
    • В поле Таймаут, с удалите значение и оставьте поле пустым.
  14. Нажмите Сохранить.

Проверьте инфраструктуруПроверьте инфраструктуру

  1. Запустите тестовые веб-сервисы на ВМ веб-приложений.
  2. Посмотрите проверки состояний.
  3. Проверьте доступность веб-приложений.
  4. Проверьте работу профиля безопасности.

Запустите тестовые веб-сервисы на ВМ веб-приложенийЗапустите тестовые веб-сервисы на ВМ веб-приложений

  1. Подключитесь к управляющей ВМ work-station в каталоге безопасности:

    ssh -l <имя_пользователя> <публичный_IP-адрес_ВМ>
    

    Если вы используете разные ключи для разных ВМ, укажите путь к нужному ключу в команде подключения, например:

    ssh -i ~/.ssh/<имя_ключа> -l <имя_пользователя> <публичный_IP-адрес_ВМ>
    

    Где:

    • <имя_ключа> — имя файла приватного SSH-ключа, использованного при создании ВМ.
    • <имя_пользователя> — логин, указанный при создании ВМ.
    • <публичный_IP-адрес_ВМ> — IP-адрес ВМ.

    Совет

    Команду подключения к ВМ можно скопировать на странице описания ВМ в блоке Доступ.

  2. С управляющей ВМ подключитесь к ВМ vm-service-1:

    1. Поместите файл с приватным SSH-ключом ВМ vm-service-1 в папку ~/.ssh управляющей ВМ.

    2. Подключитесь к ВМ vm-service-1:

      ssh -i ~/.ssh/<имя_ключа> -l <имя_пользователя> <внутренний_IP-адрес_ВМ>
      

      Где:

      • <имя_ключа> — имя файла приватного SSH-ключа, использованного при создании ВМ.
      • <имя_пользователя> — логин, указанный при создании ВМ.
      • <внутренний_IP-адрес_ВМ> — внутренний IP-адрес ВМ vm-service-1.
  3. Запустите тестовый веб-сервис с помощью команды:

    mkdir test-server; \
    echo 'HELLO!' > test-server/hello_3.txt; \
    echo 'TEST SERVER 1' > test-server/test_3.txt; \
    python3 -m http.server -d test-server 8000
    

    При запуске команды:

    • Будет создана папка test-server с двумя файлами: hello_1.txt и test_1.txt.
    • Запустится встроенный в Python тестовый веб-сервис на порту 8000.

    Результат:

    Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
    10.133.0.10 - - [30/May/2025 09:55:41] "GET / HTTP/1.1" 200 -
    10.133.0.15 - - [30/May/2025 09:55:41] "GET / HTTP/1.1" 200 -
    10.133.0.10 - - [30/May/2025 09:55:42] "GET / HTTP/1.1" 200 -
    10.133.0.15 - - [30/May/2025 09:55:42] "GET / HTTP/1.1" 200 -
    10.133.0.10 - - [30/May/2025 09:55:43] "GET / HTTP/1.1" 200 -
    10.133.0.15 - - [30/May/2025 09:55:43] "GET / HTTP/1.1" 200 -
    ...
    
  4. Откройте новое окно терминала и аналогично запустите тестовый сервис на ВМ vm-service-2. В команде запуска используйте другие имена файлов, чтобы ответы от веб-приложений отличались.

Посмотрите проверки состоянийПосмотрите проверки состояний

  1. Перейдите на страницу балансировщика app-load-balancer.
  2. Слева выберите Проверки состояния.
  3. Убедитесь, что целевые ресурсы имеют во всех подсетях балансировщика статусы HEALTHY.

Проверьте доступность веб-приложенийПроверьте доступность веб-приложений

Чтобы проверить доступность веб-приложений, в браузере перейдите по адресу:

http://<публичный_IP-адрес_балансировщика>/<префикс_маршрута>

Где:

  • <публичный_IP-адрес_балансировщика> — IP-адрес балансировщика app-load-balancer.
  • <префикс_маршрута> — префикс, указанный в поле Начинается с при настройке HTTP-роутера. В этом руководстве — app1 и app2.

Откроется страница со списком файлов в корневой папке соответствующего сервиса, например:

Directory listing for /
  hello_1.txt
  test_1.txt

Проверьте работу профиля безопасностиПроверьте работу профиля безопасности

  1. Проверьте разрешение трафика правилом Smart Protection:

    1. В браузере перейдите по адресу:

      http://<публичный_IP-адрес_балансировщика>/<префикс_маршрута>
      
    2. На другой вкладке браузера перейдите на страницу балансировщика app-load-balancer.

    3. Слева выберите Логи.

    4. В поле Запрос укажите фильтрующее выражение:

      json_payload.smartwebsecurity.matched_rule.rule_type = SMART_PROTECTION
      and json_payload.smartwebsecurity.matched_rule.verdict = ALLOW
      
    5. Нажмите Выполнить.

      В списке логов останутся записи об успешных GET-запросах.

  2. Добавьте запрещающее базовое правило:

    1. Перейдите на страницу профиля безопасности sws-profile.

    2. В блоке Правила безопасности нажмите Добавить правило.

    3. Введите имя правила: deny-rule.

    4. В поле Приоритет установите значение 1000.

    5. В блоке Тип правила: оставьте значение Базовое.

    6. Параметр Действие оставьте в положении Запретить.

    7. Параметр Трафик установите в положение При условии.

    8. Далее выберите:

      • Условия — IP.
      • Условия на IP — Совпадает или принадлежит диапазону.
      • IP совпадает или принадлежит диапазону — укажите IP-адрес устройства, с которого проводится тестирование веб-сервиса.
    9. Нажмите Добавить.

  3. Проверьте работу базового правила:

    1. В браузере перейдите по адресу:

      http://<публичный_IP-адрес_балансировщика>/<префикс_маршрута>
      
    2. На другой вкладке браузера перейдите на страницу балансировщика app-load-balancer.

    3. Слева выберите Логи.

    4. В поле Запрос укажите фильтрующее выражение:

      json_payload.smartwebsecurity.matched_rule.rule_type = RULE_CONDITION
      and json_payload.smartwebsecurity.matched_rule.verdict = DENY
      
    5. Нажмите Выполнить.

      В списке логов останутся записи о заблокированных правилом GET-запросах.

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы перестать платить за ресурсы, удалите каталоги, в которых была развернута инфраструктура.

Если вы разворачивали инфраструктуру в существующих каталогах:

  1. Удалите L7-балансировщик app-load-balancer.

  2. Удалите HTTP-роутер alb-http-router.

  3. Удалите группы бэкендов backend-group-1 и backend-group-2.

  4. Удалите целевые группы target-group-1 и target-group-2.

  5. Удалите ВМ:

    • work-station
    • vm-service-1
    • vm-service-2
  6. Удалите профиль безопасности sws-profile.

  7. Удалите группы безопасности:

    • alb-security-group
    • vm-security-group
    • service-1-security-group
    • service-2-security-group
  8. Удалите подсети:

    • subnet-service-1
    • subnet-service-2
    • subnet-alb-a
    • subnet-alb-b
    • subnet-alb-d
  9. Удалите облачную сеть alb-network.

Была ли статья полезна?

Предыдущая
Централизованная публикация в интернете и защита приложений от DDoS
Следующая
Обзор
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»