Как начать работать с профилем ARL
ARL (Advanced Rate Limiter) — модуль для контроля и ограничения нагрузки на веб-приложения. Модуль позволяет установить лимит на количество HTTP-запросов за определенный промежуток времени. Все запросы свыше лимита будут блокироваться. Можно установить единый лимит на весь трафик, а также настраивать различные лимиты для сегментирования запросов по определенным параметрам. Запросы для лимитов можно считать по одному или объединять в группы по заданному признаку.
Создайте первый профиль ARL и подключите его к имеющемуся профилю безопасности Yandex Smart Web Security.
Если у вас еще не настроен профиль безопасности, создайте его и подключите к виртуальному хосту L7-балансировщика Yandex Application Load Balancer. Подробнее см. Как начать работать с профилем безопасности.
Чтобы начать работу с ARL:
Подготовьте облако к работе
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Создайте профиль ARL
-
В консоли управления
выберите каталог, в котором вы хотите создать профиль ARL. -
В списке сервисов выберите Smart Web Security.
-
Перейдите на вкладку
Профили ARL и нажмите кнопку Создать профиль ARL. -
Опишите сценарий использования функциональности ARL в своих проектах и нажмите кнопку Отправить заявку.
После одобрения заявки вы сможете перейти к созданию профиля ARL.
-
Введите имя профиля, например
test-arl-profile-1
. -
При необходимости добавьте описание профиля и метки.
-
Нажмите кнопку Создать.
Настройте правила
-
На открывшейся обзорной странице профиля ARL нажмите кнопку Добавить правило.
-
Введите имя правила, например
arl-rule-1
. -
В поле Приоритет задайте приоритет выполнения правила в рамках профиля ARL, например
1000
. -
(Опционально) Чтобы протестировать правило ARL, включите режим Только логирование (Dry run). В этом режиме запросы блокироваться не будут.
-
В блоке Условия на трафик выберите Весь трафик или При условии.
-
Чтобы задать условия на трафик, в списке Условия выберите один или несколько пунктов:
IP
— IP-адрес, диапазон адресов или регион IP-адресов;HTTP header
— строка в заголовке HTTP;HTTP body
— строка в теле HTTP-пакета;Request path
— путь запроса;Host
— домен, на который пришел запрос.HTTP method
— метод запроса;Cookie
— строка в заголовке cookie.
-
В блоке Подсчет запросов выберите, как считать запросы для применения лимита:
- Без группировки — подсчет каждого запроса в отдельности.
- По характеристикам — подсчет количества групп запросов, объединенных одной или несколькими характеристиками.
- Выберите характеристику для группировки:
Request path
— путь запроса;HTTP method
— метод запроса;IP-адрес
— IP-адрес, с которого пришел запрос;Регион
— регион, которому принадлежат IP-адреса запросов.Host
— домен, на который пришел запрос.HTTP cookie
— строка в заголовке cookie;HTTP header
— строка в заголовке HTTP;Query params
— строка в параметрах запроса.
- (Опционально) Включите опцию Учитывать регистр, чтобы характеристики с одинаковыми значениями, но в разном регистре попадали в разные группы.
- Выберите характеристику для группировки:
-
Укажите лимит запросов и выберите промежуток времени, например
1000
запросов за1
минуту. -
Нажмите копку Сохранить правило.
Подключите профиль ARL к профилю безопасности
- Перейдите на вкладку
Профили безопасности. - В списке выберите профиль безопасности, к которому вы хотите подключить профиль ARL, например
test-sp1
. - Нажмите кнопку Редактировать.
- В списке Профиль ARL выберите
test-arl-profile-1
, созданный ранее. - Нажмите кнопку Сохранить.