Правила защиты
Как настроить собственные правила фильтрации для разных типов трафика.
|
Доступно только для режима защиты Антибот. Функционал подключается по запросу. Если внутри Пользовательских правил в UI вкладка «Правила защиты» неактивна, напишите в поддержку — откроем её для вас. По умолчанию можно создать максимум 20 правил защиты. Если вам нужно больше, напишите в поддержку — увеличим лимит. |
О группе правил
Описание
Правила защиты — группа правил, с помощью которой вы гибко настраиваете, как защита должна реагировать в конкретных ситуациях.
Например, можно настроить подобные правила:
-
если запрос к разделу
/adminпришёл не с вашего рабочего IP-адреса — заблокировать его; -
если запрос к
/signupотправил человек — пропустить его, а если вероятно человеком, вероятно ботом или ботом — выдать CAPTCHA; -
если запрос содержит параметр запроса
?view=all, но пришёл без вашей секретной cookie — заблокировать его; -
один IP может отправлять к
/api/reports/exportне больше 5 POST-запросов в минуту — запросы сверх лимита заблокировать.
|
Созданные вами правила имеют приоритет над индивидуальными настройками защиты, сделанными инженерами Servicepipe для вашего ресурса. |
Особенности
Правила проверяются по порядку
Каждому правилу вы назначаете позицию — порядковый номер, под которым оно будет стоять в общем списке правил. Порядок крайне важен. При фильтрации система защиты строго следует списку: сначала проверяет, попадает ли запрос под условия первого правила, если нет — проверяет условия второго, третьего и так далее. Как только найдёт подходящее правило, то выполнит его — а нижестоящие нет.
Пример
Вы создали три правила:
-
Запросы из Индии — блокировать.
-
Запросы из Казахстана — отдавать в ответ cookie-челлендж.
-
Запросы к
/login— отдавать в ответ JavaScript-челлендж.
Пришёл запрос из Казахстана к /login. Защита сначала проверяет, подходит ли он под первое правило. Ответ — нет. Потом проверяет второе правило. Ответ — да, подходит. Значит, клиенту будет отдан cookie-челлендж. Третье и последующие правила не проверяются.
В одном правиле можно задать разные действия для разных классов источника
Перед применением правила защита анализирует каждый запрос и присваивает его источнику один из классов: Человек, Вероятно человек, Вероятно бот или Бот. В рамках одного правила вы можете задать для каждого класса отдельную реакцию системы защиты.
Пример
Вы создали правило для запросов к /signup и настроили действия:
-
Бот— выдать CAPTCHA. -
Вероятно бот— выдать JS-челлендж. -
Вероятно человек— выдать JS-челлендж. -
Человек— пропустить.
Пришёл запрос к /signup. Проанализировав технические и поведенческие признаки источника запроса, защита присвоила ему класс Вероятно бот. Затем, следуя вашему пользовательскому правилу, в ответ на запрос выдала JS-челлендж.
Правила защиты работают вместе с другими группами правил
В панели управления доступно четыре группы правил:
-
правила защиты (про них вы сейчас читаете),
Их можно использовать вместе, чтобы точнее настроить фильтрацию для конкретных сценариев.
Пример
Для запросов к /reports/generate вы настроили:
-
Лимиты запросов — разрешить одному IP отправлять не больше 10 запросов за 5 минут.
-
Сбор JS score — выдавать JS-челлендж и рассчитывать bot score источника.
-
Классификацию ботов — считать источники с bot score 0.4 и выше ботами.
-
Правило защиты — запросы от людей пропускать, а ботам выдавать CAPTCHA.
Пришёл запрос к /reports/generate. Защита сначала проверяет, отправил ли этот IP больше 10 запросов за 5 минут. Если лимит превышен, IP временно блокируется. Если нет — система рассчитывает bot score и определяет класс источника. При bot score 0.4 или выше источник считается ботом и получает CAPTCHA.
Место в иерархии фильтрации
Наша защита фильтрует каждый запрос поэтапно: сначала с помощью одного механизма фильтрации, затем второго, третьего и так далее. В списке ниже вы увидите, на каком месте стоят Правила защиты:
Если два механизма фильтрации конфликтуют, применяется тот, который сработал первым. Например, чёрный список находится выше правил защиты. Поэтому запрос с IP-адреса из чёрного списка будет заблокирован, даже если в правиле защиты для него настроен пропуск.
Рекомендации
-
Обратите внимание: если не указать ни одного условия, правило будет распространяться на весь входящий трафик.
-
Размещайте точечные правила выше общих. Например, правило для пропуска партнёра по IP должно стоять выше правила, которое блокирует запросы из целой страны. Иначе, если IP партнёра относится к запрещённой стране, защита сначала применит блокировку и не дойдёт до разрешающего правила.
-
Правила защиты проверяются по списку сверху вниз, и применяется первое подходящее правило. Если вы меняете их порядок, проверьте результат в Логах запросов: отфильтруйте записи по ID правила и убедитесь, что оно срабатывает в нужный момент.
-
Не выдавайте JS-челлендж источникам, которые не могут выполнить JavaScript. Такая проверка подходит для браузерных страниц, но не подходит для API, webhooks, мобильных приложений и запросов, которые ожидают JSON, файл или изображение.
-
Используйте условие по статусу DDoS-атаки, если правило должно усиливать защиту только во время атаки.
-
Перед настройкой лимитов оцените по графикам в Логах запросов объём трафика, который подходит под условия правила. Учитывайте обычную частоту запросов и пиковые значения, чтобы лимит не мешал легитимному трафику.
Настройка
Открыть «Правила защиты»
Перейдите в раздел Защита приложений → Ресурсы. Напротив ресурса, для которого нужно настроить правило, нажмите на три точки (…) и выберите Пользовательские правила. Откроется раздел, где вы найдёте вкладку Правила защиты.
Создать правило защиты
-
Нажмите
+ Создать правило защиты. Откроется окно для создания правила, остальные шаги выполняйте в нём.Если система попросит выбрать тип правила, используйте
Обычное правило. Именно его настройка описана в этой статье.Правило защиты API — отдельный функционал для защиты API-эндпоинтов от прямых обращений в обход веб-сайта. Подробнее о его настройке читайте в статье Правило защиты API.
По умолчанию можно создать 20 правил защиты. Если нужно настроить больше, напишите в поддержку — мы увеличим лимит.
-
Задайте Позицию и Описание.
Позиция определяет порядок правила в очереди. Нумерация начинается с нуля.
По умолчанию новое правило падает в низ списка и получает следующую свободную позицию (+1). Вы можете отредактировать это поле, введя другое число.
Описание — текстовый комментарий. По сути, это название правила, которое вы прописываете для себя. По названию будет легко найти нужное правило в списке.
Примеры хорошего описания:
Разрешить API для партнёра X,Защита формы входа от брутфорса.
-
Настройте Условия.
Можно задать три типа условий: по трафику, лимитам запросов и статусу DDoS-атаки. Правило будет применяться к запросам, которые одновременно соответствуют всем указанным условиям.
Пример: вы задали условия по трафику
Страна — РоссияиПуть URL начинается с /login, а по лимиту запросов —После достижения лимита 100 запросов в минуту на один IP. Тогда правило:-
Сработает для пользователей из России, которые уже прислали к странице входа больше 100 запросов за минуту. Выполняются все условия сразу.
-
Не сработает для пользователей из России, которые прислали к странице входа меньше 100 запросов за минуту. Не выполняется условие по лимиту запросов на один IP.
-
Не сработает, если на страницу авторизации пришёл запрос из Китая. Не выполняется условие
Страна — Россия. -
Не сработает, если запрос пришёл из России, но на главную страницу сайта. Не выполняется условие
Путь URL начинается с /login.
-
Трафик
-
Лимиты запросов
-
Статус DDoS-атаки
Чтобы добавить условие, нажмите
+ Добавить условие, выберите параметр (например,Страна,Путь URLилиМетод запроса), выберите оператор сравнения (например,начинается с) и укажите значение (например,/login).В таблицах ниже мы собрали правила заполнения, ограничения, примеры для параметров и описание операторов. Кликните на нужный заголовок, чтобы раскрыть описание.
Описание работы с каждым параметромНазвание параметра Описание параметра Требования к значению Пример условия СтранаГеографическое местоположение IP источника
Выберите значение из выпадающего списка
СтранавRussian FederationQuery stringПараметры, которые указаны в URL после знака
?-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Можно указать только ключ или пару «ключ-значение».
-
Длина строки — от 1 до 200 символов.
-
Не начинайте строку с пробела, символа
/или?. -
Используйте только символы, допустимые для URL.
-
Указывайте специальные символы в формате percent-encoding. Например, вместо
/укажите%2F.
Query stringсодержитdebug=trueПуть URLПуть URL запроса (часть URL после домена и до знака
?)-
Всегда начинайте строку с символа
/. -
Не указывайте доменное имя, например
site.com. -
Не указывайте протокол, например
https://. -
Не добавляйте параметры после знака
?. -
Используйте только символы, допустимые для URL.
Путь URLначинается с/adminСегмент пути URLЛюбая часть пути URL
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — от 1 до 200 символов.
-
Можно указать любую часть пути: название раздела (
api), расширение (.php) или даже набор символов из середины адреса (1/use). -
Используйте только символы, допустимые для URL.
Сегмент пути URLсодержитbackupContent-TypeФормат передаваемых в запросе данных, например: JSON, обычный текст, изображения или данные из веб-форм
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — от 1 до 200 символов.
-
Не начинайте строку с пробела.
-
Укажите тип целиком или его часть.
Content-Typeравноapplication/jsonCookie_any (или)Имена и значения cookie-файлов (правило сработает при наличии в запросе хотя бы одной из указанных связок «имя + значение»)
-
Можно добавить до 100 связок «имя + значение» в одно условие (используйте кнопку
+ Или). -
Длина имени — до 200 символов.
-
Длина значения — до 4096 символов.
Имя равно user_typeЗначение начинается с premiumИЛИ
Имя равно partner_idЗначение равно anyCookie_all (и)Имена и значения cookie-файлов (правило сработает при наличии в запросе всего набора указанных связок «имя + значение» одновременно)
-
Можно добавить до 100 связок «имя + значение» в одно условие (используйте кнопку
+ И). -
Длина имени — до 200 символов.
-
Длина значения — до 4096 символов.
Имя равно promo_codeЗначение равно activeИ
Имя равно is_subscriberЗначение равно yesЗаголовокИмена и значения HTTP-заголовков
Особенности параметра-
Для разных заголовков действует логика И: запрос должен содержать все указанные пары «имя + значение».
-
Для нескольких значений одного заголовка действует логика ИЛИ: достаточно совпадения с любым из них.
-
Эти условия работают одновременно: для разных заголовков действует И, для нескольких значений одного — ИЛИ.
Пример. Вы указали заголовки
X-Env: prod,X-Region: ruиX-Region: us. Если запрос содержит:-
X-Env: prodиX-Region: ru— правило сработает -
X-Env: prodиX-Region: us— правило сработает -
только
X-Env: prod— не сработает -
только
X-Region: ru— не сработает
-
Можно добавить до 100 связок «имя + значение» в одно условие (используйте кнопку
+ Или). -
Длина имени — до 200 символов.
-
Длина значения — до 200 символов.
Имя равно X-App-VersionЗначение начинается с 2.0Имя хостаЗначение заголовка Host (доменное имя сервера, к которому обращается клиент)
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — до 200 символов.
-
Не начинайте строку с пробела.
-
Укажите домен целиком или его часть.
-
Не указывайте протокол, например
https://. -
Не указывайте путь, например
/main.
Имя хостаравноapi.site.comХостинговая подсетьТрафик с IP-адресов, которые принадлежат хостинг-провайдерам или дата-центрам
Не задаются
—
Метод запросаТип используемого HTTP-метода
Выберите из выпадающего списка один или несколько методов
Метод запросавPOSTRefererЗначение заголовка Referer — то есть адрес страницы, с которой пользователь перешёл на ваш ресурс
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — до 200 символов.
-
Укажите полный URL-адрес, домен или его часть.
-
Не начинайте строку с пробела.
-
Используйте только символы, допустимые для URL.
Refererначинается сgoogle.comASNНомер автономной системы (ASN), которой принадлежит IP источника
-
Используйте число с префиксом AS (например,
AS13335илиas13335). -
Длина номера должна составлять от 1 до 10 цифр.
-
В одном поле можно указать до 100 уникальных номеров.
-
Один и тот же номер не может быть указан одновременно в списках
вине в.
ASNвAS13238ХэшиУникальный «цифровой отпечаток» устройства (хэш), одного из трёх уровней точности на выбор:
Servicepipe hash (loose),Servicepipe hash (medium)илиServicepipe hash (strict)-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Значение должно быть положительным числом от 1 до 200 символов.
Servicepipe hash (strict)в1234567890Запрос от нового пользователяТрафик от пользователей, которые зашли на ресурс впервые и чей «цифровой отпечаток» (хэш) пока не зафиксирован в нашей базе
Не задаются
—
Исходные подсетиIP-адрес или подсеть отправителя
-
Можно добавить до 200 значений в одно условие (используйте кнопку
+ Или). -
Укажите конкретные IP-адреса или их диапазоны (подсети).
-
Можно указывать адреса форматов IPv4 (например,
192.168.1.1) и IPv6 (например,2001:db8::1). -
Для указания диапазонов используйте формат CIDR — запись со слэшем (например,
/24для всей сети или/32для одного адреса).
Исходные подсетив192.168.1.0/24или2001:db8::1User-AgentЗначение заголовка User-Agent (идентификатор браузера, устройства или программного клиента, который делает запрос)
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — до 200 символов.
-
Не начинайте строку с пробела.
-
Используйте нужный регистр (например,
Chromeиchrome— это разные значения).
User-AgentравноBadBot/1.0X-Forwarded-ForЗначение заголовка X-Forwarded-For (цепочка IP-адресов прокси-серверов, через которые прошёл запрос до попадания на ваш ресурс)
-
Можно добавить до 100 значений в одно условие (используйте кнопку
+ Или). -
Длина значения — до 200 символов.
-
Не начинайте строку с пробела.
-
Укажите конкретные IP-адреса или их диапазоны.
X-Forwarded-Forсодержит203.0.113.10Tor (The Onion Router)Трафик из сети Tor, которая скрывает реальный IP-адрес источника
Не задаются
—
Описание операторовНабор операторов зависит от выбранного параметра. Оператор Когда сработает правило равноПри полном совпадении значения.
Пример: вы указали
Путь URL равно /login. Правило сработает для запроса к/login, но не сработает для запроса к любому другому пути — в том числе и к вложенному вроде/login/reset.не равноЕсли значение не совпадает с указанным.
Пример: вы указали
Имя хоста не равно api.example.com. Правило сработает для запросов к другим хостам — например,example.com,www.example.comилиadmin.example.com. А для запросов кapi.example.comне сработает.содержитЕсли значение содержит указанную последовательность символов.
Пример: вы указали
Query string содержит debug=true. Правило сработает только для запросов, где среди параметров естьdebug=true— например,?id=10&debug=true. Последовательность должна быть точной: если вместоdebug=trueв параметрах стоит что-то похожее, но не идентичное (например,degub=trueилиdebug=treu), правило не сработает.не содержитЕсли значение не содержит указанную последовательность символов.
Пример: вы указали
Content-Type не содержит json. Правило сработает для запроса с любым значением заголовка без «json»: например,text/plain,application/xml,multipart/form-dataи других. А вот дляapplication/json,application/ld+jsonи подобных не сработает.начинается сЕсли значение начинается с указанной последовательности символов.
Пример: вы указали
Путь URL начинается с /admin. Правило сработает для запросов к/adminи ко всем вложенным путям:/admin/users,/admin/accessи другим.не начинается сЕсли значение не начинается с указанной последовательности символов.
Пример: вы указали
Имя хоста не начинается с api. Правило сработает для запросов к хостамexample.com,www.example.com,admin.example.comи другим, названия которых не начинаются сapi. А дляapi.example.comилиapi-test.example.comне сработает.заканчивается наЕсли значение заканчивается указанной последовательностью символов.
Пример: вы указали
Сегмент пути URL заканчивается на .php. Правило сработает для значенийlogin.php,index.phpиprofile.php. А дляlogin.html,index.jsилиphp-loginне сработает: указанная последовательность должна находиться именно в конце значения.не заканчивается наЕсли значение не заканчивается указанной последовательностью символов.
Пример: вы указали
X-Forwarded-For не заканчивается на 10. Правило сработает для запросов, в которых значение заголовка заканчивается на другие символы, например192.0.2.15или198.51.100.25. А для значений192.0.2.10,203.0.113.10и других, заканчивающихся на10, правило не сработает.вЕсли значение входит в указанный список.
Пример: вы указали
Метод запроса в GET, POST. Правило сработает для запросов с одним из этих методов. Для запросов с методамиPUT,DELETE,PATCHи другими, которых нет в списке, правило не сработает.не вЕсли значение не входит в указанный список.
Пример: вы указали
Страна не в Russian Federation, Belarus. Правило сработает для запросов из всех стран, кроме России и Беларуси.пустоеЕсли у параметра нет значения.
Пример: вы указали
Content-Type пустое. Правило сработает для запросов, в которых заголовокContent-Typeне передан. Если заголовок есть и содержит любое значение, напримерapplication/jsonилиtext/plain, правило не сработает.не пустоеЕсли у параметра есть значение.
Пример: вы указали
Content-Type не пустое. Правило сработает для запросов, в которых заголовокContent-Typeсодержит любое значение, напримерapplication/jsonилиtext/plain. Если заголовок не передан, правило не сработает.любоеПри любом значении параметра.
Пример: вы указали
Cookie_all (и): Имя — session, Значение — любое. Правило сработает при наличии cookiesessionс любым значением. Если cookie с таким именем в запросе нет, правило не сработает.
Лимит запросов — это порог по количеству входящих запросов за определённый период (например, за минуту). Он позволяет ограничить работу правила.
Без лимита правило применяется ко всем запросам, которые подходят под заданные условия (их вы прописали на вкладке
Трафик). С лимитом поведение системы меняется — она начинает считать количество таких запросов и применяет правило только до либо после достижения лимита (до или после — вы выбираете сами).Чтобы настроить лимит, укажите следующие параметры:
-
Тип лимита (можно настроить оба сразу):
-
Общий— система суммирует все запросы, которые подходят под ваши условия по трафику. Правило применится к любым таким запросам, без деления на IP. -
На один IP— система считает подходящие под ваши условия запросы отдельно для каждого IP-адреса. Правило применится только к тем адресам, с которых пришло превышение.
-
-
Запросы— количество запросов, которое система должна зафиксировать. Максимальное значение — 5000. -
Период— временное окно, за которое будут подсчитываться эти запросы (от 1 секунды до 10 минут). -
Режим применения правила (до или после лимита).
-
После превышения лимита
-
До достижения лимита
Пока лимит не достигнут, правило не работает. Как только достигнут, правило начинает применяться ко всем следующим запросам.
Зачем это нужно: для создания блокирующих правил. Вы не беспокоите обычных пользователей, пока их активность в норме. Но как только запросов становится слишком много, включаете меры защиты (например, просите пройти капчу).
Пример: вы настроили условие
Страна — не Россия, включили параметрХостинговая подсеть, лимит 100 запросов в минуту и действие —CAPTCHA.-
На первые 100 запросов ваше правило не отреагирует.
-
Со 101-го запроса система начнёт показывать капчу всем, кто приходит от хостинг-провайдеров из других стран.
Правило работает, пока лимит не достигнут. Как только достигнут, правило перестаёт работать — следующие запросы будут проверяться другими правилами.
Зачем это нужно: для подстраховки при установке разрешающих правил. Вы даёте доверенному источнику беспрепятственный доступ на ресурс, но на всякий случай ставите лимит. В результате, если злоумышленнику удастся имитировать доверенный трафик (например, украв секретный HTTP-заголовок), он всё равно не сможет отправить больше запросов, чем вы разрешили.
Пример: вы задали условия
Страна — РоссияиUser-Agent содержит MyBusinessBot/1.0, поставили лимит 100 запросов в минуту и настроили действие «пропустить». Тогда:-
Первые 100 таких запросов пройдут на ресурс свободно.
-
Начиная со 101-го правило перестанет применяться. Новые запросы с
Страна — РоссияиUser-Agent содержит MyBusinessBot/1.0будут проверяться следующими по списку правилами.
В режиме «До достижения лимита» не используйте действие «Заблокировать». С ним лимит перестаёт работать: заблокированные запросы не учитываются в счётчике, поэтому весь трафик, который подходит под условия правила, будет постоянно блокироваться.
Почему так: этот режим рассчитан на пропуск трафика или выдачу проверок, а не на блокировку.
Выберите, когда должно работать правило:
-
Всегда— правило активно постоянно. -
Пока нет DDoS-атаки— пока нет DDoS-атаки, правило работает; как только началась атака, правило перестаёт работать. -
Во время DDoS-атаки— пока идёт атака, правило работает; как только атака закончилась, правило перестаёт работать.
-
-
Выберите Действия.
Укажите, что система защиты должна сделать с запросом, который попал под условия правила. Доступно два варианта: блокировать весь трафик либо настроить действия для каждого из классов источника.
-
Блокировать весь трафик
-
Действия по классам источника
Используйте опцию
Блокировать всё (включая мобильное приложение)для полной блокировки любого трафика, попавшего под правило.По умолчанию система защиты пропускает запросы от вашего мобильного приложения без проверок. Настройка
Блокировать всёотменяет этот автопропуск — блокироваться будет вообще весь трафик, попавший под правило.Зачем это нужно: чтобы остановить злоумышленников, которые научились имитировать запросы вашего мобильного приложения и пытаются обойти защиту.
Настройте отдельное действие для каждого класса источника. Например, можно пропускать на ресурс людей, а ботам выдавать капчу.
Эта настройка не затрагивает запросы от мобильных приложений. Система продолжит пропускать их автоматически.
Перед вами четыре класса источников:
-
Бот— запрос точно отправил бот -
Вероятно бот— с высокой вероятностью запрос отправил бот, но система не уверена на 100% -
Вероятно человек— с высокой вероятностью запрос отправил человек, но система не уверена на 100% -
Человек— запрос точно отправил человек
Установите для каждого нужное действие:
-
По умолчанию— правило не будет принимать решение для этого класса. Запрос будет проанализирован в рамках индивидуального профиля защиты. -
Пропустить— разрешить запрос без дополнительных проверок. -
Заблокировать— немедленно заблокировать запрос. -
JS-челлендж— отправить JavaScript-проверку. -
Cookie-челлендж— проверить, поддерживает ли клиент работу с cookie. -
CAPTCHA— отправить капчу для подтверждения, что запрос отправлен человеком.
Если вы используете схему интеграции Module или Hybrid и хотите настроить выдачу CAPTCHA, нужно перед созданием правила:
-
отправить в техподдержку запрос на включение CAPTCHA для вашего ресурса;
-
дождаться, пока наши специалисты внесут необходимые изменения в конфигурацию защиты;
-
после этого настроить CAPTCHA в правиле защиты.
Если пропустить эти шаги, вместо CAPTCHA защита будет блокировать запросы.
-
-
Нажмите
Создать.Правило появится в общем списке на вкладке
Правила защиты. Чтобы правило начало работать, нажмите на переключатель в столбцеВключено: он должен загореться зелёным.
Примеры настройки
Ниже приведены примеры, как можно настроить правило защиты. Кликните на заголовок, чтобы раскрыть описание.
Пример 1. Защита формы входа от брутфорса
Задача: ограничить количество попыток входа с одного IP-адреса до 5 в минуту.
Настройка:
-
Описание правила:
Brute-force login protection. -
Условия для трафика:
-
Переменная:
Путь URL, Операция:равно, Значение:/login -
Переменная:
Метод запроса, Операция:равно, Значение:POST
-
-
Лимиты запросов:
-
Активировать переключатель
На один IP -
Запросы:
5 -
Период:
1 минута
-
-
Действия:
-
Бот:
Заблокировать -
Вероятно бот:
Заблокировать -
Вероятно человек:
CAPTCHA -
Человек:
CAPTCHA
-
Пример 2. Challenge для подозрительного трафика во время атаки
Задача: усилить проверку запросов к каталогу во время DDoS-атаки.
Настройка:
-
Описание правила:
Additional DDoS protection. -
Условия для трафика:
-
Переменная:
Путь URL, Операция:начинается с, Значение:/catalogue/
-
-
Статус DDoS-атаки:
Во время DDoS-атаки. -
Действия:
-
Бот:
JS-челлендж -
Вероятно бот:
JS-челлендж -
Вероятно человек:
JS-челлендж -
Человек:
Пропустить
-
Пример 3. Разрешение доступа для API партнёра
Задача: разрешить все запросы к /api/partner/ с IP-адреса 1.2.3.4.
Настройка:
-
Описание правила:
Allow Partner X API. -
Условия для трафика:
-
Переменная:
Путь URL, Операция:начинается с, Значение:/api/partner/ -
Переменная:
Исходные подсети, Операция:в, Значение:1.2.3.4/32
-
-
Лимиты запросов: не настраивать.
-
Действия:
-
Бот:
Пропустить -
Вероятно бот:
Пропустить -
Вероятно человек:
Пропустить -
Человек:
Пропустить
-
Правило «Разрешение доступа для API партнёра» необходимо разместить в самом верху списка, чтобы оно сработало раньше любых блокирующих правил.
Проверка работы
Проверить, как срабатывает правило, можно в панели управления на вкладке Логи запросов.
В логах вы увидите:
-
Параметры запроса.
-
Действие защиты, например пропуск или блокировка.
-
Причину применения действия. Если запрос попал под действие правила, здесь будет указан его идентификатор.
-
Исходный класс, в который защита определила источник запроса:
Human(человек),Likely human(скорее всего, человек),Likely bot(скорее всего, бот) илиBot(бот).
|
Если после включения правила вы заметите в логах деградацию легитимного трафика, измените его настройки или обратитесь в техподдержку. |
Управление
На вкладке Правила защиты можно управлять правилами прямо из списка:
-
Переместить: правила в списке выполняются сверху вниз — используйте иконку с шестью точками (
⠿), чтобы перетащить строку на нужную позицию. -
Посмотреть детали: используйте иконку
>, чтобы увидеть все заданные условия и выбранные действия, не заходя в режим редактирования. -
Включить/выключить: используйте переключатель в столбце
Включено. Зелёный цвет значит, что правило работает и участвует в фильтрации, серый — что оно неактивно. -
Посмотреть статистику: нажмите на иконку графика, чтобы увидеть, сколько раз сработало правило за выбранный период (например, за последние 15 минут или сутки). Здесь отображается количество запросов, попавших под условия правила, и применённых к ним действий.
-
Редактировать: нажмите на три точки (
…) в конце строки и выберитеРедактировать. Здесь вы сможете изменить любые параметры правила. -
Удалить: нажмите на три точки (
…), выберитеУдалитьи подтвердите действие. Восстановить удалённое правило невозможно. -
Создать правило выше: нажмите на три точки (
…) и выберите пунктСоздать правило выше, чтобы быстро добавить новое правило над текущим. Это позволит задать новому правилу более высокий приоритет. -
Создать правило ниже: нажмите на три точки (
…) и выберите пунктСоздать правило ниже, чтобы добавить новое правило под текущим. У созданного правила будет более низкий приоритет.