Рейт-лимиты¶
Рейт-лимиты – установка ограничений на трафик веб-приложения.
По кнопке Рейт-лимиты на трафик защищаемого веб-приложения можно наложить несколько ограничений.
Запросы, превысившие лимит запросов за секунду, будут блокироваться. (За эту настройку отвечает параметр Запросов в секунду.)
Запросы, превысившие лимит при разовом всплеске, будут сначала замедляться, а затем блокироваться. Либо такие запросы сразу будут блокироваться. (За эту настройку отвечают параметры Предел, Задержка).
При блокировке запроса выдается сообщение об ошибке. Период блокировки доступа к веб-приложению задается параметром Время в секундах ограничений F2B.
Размеры рейт-лимитов подбираются эмпирическим путем. Для этого удобно настроить Рейт-лимиты, задать Режим работы = Отладка, через некоторое время работы под нагрузкой (в это время лимиты будут фиксироваться в отчете, в таблице атак и на графиках, но запросы блокироваться не будут) сформировать отчет в разделе «Отчеты» и проверить по отчету превышение лимитов. При необходимости скорректировать Рейт-лимиты, еще раз проверить отчет. После подбора подходящих рейт-лимитов можно установить Режим работы = Блокировка, тогда при превышении лимитов будет происходить замедление и блокировка запросов.
Предварительно Администратор задает в конфигурационном файле Веб-сервера код ошибки, выдаваемой при блокировке запроса (подробнее Подключение веб-приложения).
По кнопке Рейт-лимиты открывается окно с настройкой защиты.

- задание рейт-лимита (подробнее Добавление рейт-лимита).
- редактирование рейт-лимита.
- удаление рейт-лимита.
- экспорт параметров в формате json.
- импорт параметров в формате json.
Ключ (Ключ конфигурации запроса) – объект применения лимитов, т.е. к каким группам запросов применяется лимитирование. Список значений.
Предусмотрена возможность задать не более 4 наборов рейт-лимитов: по одному набору ограничений на каждый ключ конфигурации запроса ($remote_addr и др.).
Ключи конфигурации запроса задаются в разделе «Кластеры» (подробнее Дополнение ключей конфигурации запроса).
Добавление рейт-лимита
Пиктограмма позволит задать лимиты для свойств запроса, открывается окно «Добавление рейт-лимита».

Запросов в секунду – ограничение на количество запросов в секунду. Как только количество запросов превысит данный лимит, запросы, поступившие в течение данной секунды, блокируются и клиенту выдается ошибка, заданная в поле Код ответа. Период блокировки доступа к веб-приложению задается параметром Время в секундах ограничений F2B. Целое число:
1 ≤ Запросов в секунду.
Предел – разрешённый разовый всплеск запросов. Как только количество запросов превысит данный лимит, запросы, поступившие в течение данных n миллисекунд, блокируются и клиенту выдается ошибка с параметром Код ответа. (Период блокировки доступа к веб-приложению задается параметром Время в секундах ограничений F2B.) Целое число:
0 ≤ Предел ≤ Запросов в секунду.
Задержка – порог замедления трафика при разовом всплеске запросов, т.е. запросы сверх данного лимита будут замедляться. При включенной опции задается целое число:
0 ≤ Задержка ≤ Предел.
Если опция отключена (что соответствует значению «-1»), все запросы сверх лимита (заданного параметром Запросов в секунду) сразу блокируются и клиенту выдается ошибка с параметром Код ответа, а параметр Предел игнорируется. Период блокировки доступа к веб-приложению задается параметром Время в секундах ограничений F2B.
Если опция включена и Задержка = 0, тогда все запросы замедляются, параметр Предел игнорируется.
Если опция включена и Задержка > 0, тогда, как только количество запросов превысит данный лимит, запросы этого всплеска будут замедляться. При этом, как только количество запросов превысит параметр Предел, запросы сразу блокируются и клиенту выдается ошибка с параметром Код ответа. Период блокировки доступа к веб-приложению задается параметром Время в секундах ограничений F2B.
Код ответа – код ошибки, которая будет выдаваться клиенту при блокировании подозрительного трафика (когда количество запросов превышает один из выше заданных лимитов). По умолчанию – 503. Целое число:
400 ≤ Код ответа.
Режим работы – два режима применения рейт-лимитов:
Отладка – лимиты только считаются, но не применяются (тестовой режим для проверки корректности установленных лимитов),
Блокировка – лимиты применяются (основной режим, ограничивающий подозрительный трафик).
Пример. Задание рейт-лимитов.
Ключ конфигурации запроса $remote_addr
Запросов в секунду 5
Burst 5
Задержка 0
Код ответа 429
Режим работы Отладка
