Настройка режима фильтрации трафика¶
С помощью режима фильтрации трафика настраивается поведение WAF‑ноды при обработке входящих запросов. В данной инструкции описываются возможные режимы и способ их настройки.
Возможные режимы фильтрации трафика¶
Нода Вебмониторэкс может обрабатывать входящие запросы в следующих режимах (от наиболее мягкого до наиболее жесткого):
-
Выключено (
off
) -
Мониторинг (
monitoring
) -
Мягкая блокировка (
safe_blocking
) -
Блокировка (
block
)
Поведение ноды Вебмониторэкс | off | monitoring | safe_blocking | block |
---|---|---|---|---|
Анализирует запросы на признаки атак на проверку данных, атак типа vpatch, атак на основе регулярных выражений | - | + | + | + |
Выгружает запросы с признаками атак (вредоносные запросы) в Вычислительный кластер Вебмониторэкс, впоследствии они отображаются в списке событий | - | + | + | + |
Блокирует вредоносные запросы | - | - | Только если они отправлены с IP‑адресов из серого списка | + |
Блокирует запросы с IP‑адресов из черного спискасм. исключения | Не проверяет черный список | - | + | + |
Блокирует запросы с IP‑адресов из серого списка | Не проверяет серый список | - | Только если они содержат признаки атак | Не проверяет серый список |
Пропускает запросы с IP‑адресов из белого списка | Не проверяет белый список | + | + | + |
Исключения
Если wallarm_acl_access_phase on
, запросы с IP-адресов из черного списка блокируются в любых режимах, в том числе off
и monitoring
.
Способы настройки режима фильтрации трафика¶
Режим фильтрации можно задать следующими способами:
-
Установить значение директивы
wallarm_mode
в файле конфигурации WAF‑ноды -
Установить общее правило фильтрации в Консоли управления Вебмониторэкс
-
Создать правило для режима фильтрации на вкладке Правила в Консоли управления Вебмониторэкс
Управление приоритетами способов для настройки режима выполняется с помощью директивы wallarm_mode_allow_override
. По умолчанию более высокий приоритет имеют настройки, заданные в Консоли управления Вебмониторэкс, вне зависимости от степени жесткости режима, настроенного с помощью директивы wallarm_mode
.
Настройка режима фильтрации с помощью директивы wallarm_mode
¶
При помощи директивы wallarm_mode
в файле конфигурации WAF‑ноды вы можете установить режимы фильтрации на разных уровнях (уровни перечислены от наиболее глобального до наиболее локального):
-
http
: директивы внутри блокаhttp
действуют на запросы к HTTP‑серверу. -
server
: директивы внутри блокаserver
действуют на запросы к виртуальному серверу. -
location
: директивы внутри блокаlocation
действуют только на запросы с определенным путем.
Если на разных уровнях иерархии вложенных блоков http
, server
и location
указаны разные значения директивы wallarm_mode
, приоритет имеет наиболее локальная настройка.
Пример использования директивы wallarm_mode
:
http {
wallarm_mode monitoring;
server {
server_name SERVER_A;
}
server {
server_name SERVER_B;
wallarm_mode off;
}
server {
server_name SERVER_C;
wallarm_mode off;
location /main/content {
wallarm_mode monitoring;
}
location /main/login {
wallarm_mode block;
}
location /main/reset-password {
wallarm_mode safe_blocking;
}
}
}
Этот пример конфигурации устанавливает следующие режимы фильтрации для ресурсов:
-
Для запросов к HTTP‑серверу действует режим
monitoring
. -
Для запросов к виртуальному серверу
SERVER_A
действует режимmonitoring
. -
Для запросов к виртуальному серверу
SERVER_B
действует режимoff
. -
Для запросов к виртуальному серверу
SERVER_C
действует режимoff
, кроме запросов с путем/main/content
,/main/login
или/main/reset-password
:- Для запросов с путем
/main/content
к виртуальному серверуSERVER_C
действует режимmonitoring
. - Для запросов с путем
/main/login
к виртуальному серверуSERVER_C
действует режимblock
. - Для запросов с путем
/main/reset-password
к виртуальному серверуSERVER_C
действует режимsafe_blocking
.
- Для запросов с путем
Общее правило фильтрации в Консоли управления Вебмониторэкс¶
Панель на вкладке Общие в настройках Консоли управления Вебмониторэкс устанавливает общий режим фильтрации для всех входящих запросов. Такую же область действия имеет директива wallarm_mode
, значение которой задано в блоке http
в конфигурационном файле.
Если на вкладке Правила в Консоли управления Вебмониторэкс заданы локальные настройки режима фильтрации, они имеют больший приоритет для своей области действия, чем глобальная настройка на вкладке Общие.
На вкладке Общие можно задать следующие режимы фильтрации:
-
Локальные настройки ноды (по умолчанию) — режим работы WAF‑нод соответствует значениям директивы
wallarm_mode
Синхронизация Вычислительного кластера Вебмониторэкс с WAF‑нодой
Применение правил, заданных в Консоли управления Вебмониторэкс, происходит при синхронизации Вычислительного кластера с WAF‑нодой. По умолчанию этот процесс запускается раз в 2‑4 минуты.
Подробнее о настройке синхронизации WAF‑ноды с Вычислительным кластером Вебмониторэкс →
Правило для режима фильтрации на вкладке "Правила"¶
Вы можете выполнить тонкую настройку режима фильтрации для обработки запросов, удовлетворяющих заданным вами условиям, на вкладке Правила Консоли управления Вебмониторэкс. Правила режима фильтрации на вкладке Правила имеют больший приоритет, чем общее правило фильтрации в Консоли управления.
-
Подробная информация о том, как работать с правилами на вкладке Правила →
-
Пошаговая инструкция для создания правила, регулирующего режим фильтрации →
Синхронизация Вычислительного кластера Вебмониторэкс с WAF‑нодой
Применение правил, заданных в Консоли управления Вебмониторэкс, происходит при синхронизации Вычислительного кластера с WAF‑нодой. По умолчанию этот процесс запускается раз в 2‑4 минуты.
Подробнее о настройке синхронизации WAF‑ноды с Вычислительным кластером Вебмониторэкс →
Управление приоритетами способов настройки режима с помощью директивы wallarm_mode_allow_override
¶
Директива wallarm_mode_allow_override
управляет возможностью использовать правила, определенные в Консоли управления Вебмониторэкс, вместо значений директивы wallarm_mode
в конфигурации WAF‑ноды:
-
off
: правила, заданные в Консоли управления, игнорируются. Применяются правила, заданные директивойwallarm_mode
в файлах конфигурации. -
strict
: применяются только те правила из Консоли управления, которые задают более жесткие режимы, чем режимы, заданные директивойwallarm_mode
в файлах конфигурации. При этом, если в директивеwallarm_mode
передано значениеoff
, его невозможно переопределить с помощью настроек в Консоли управления.Возможные режимы фильтрации в порядке возрастания жесткости перечислены выше.
-
on
(по умолчанию): применяются правила из Консоли управления. Настройки режима фильтрации трафика, заданные в конфигурационных файлах, игнорируются. При этом, если в директивеwallarm_mode
передано значениеoff
, его невозможно переопределить с помощью настроек в Консоли управления.
В списке ниже перечислены уровни, на которых можно задать значения директивы wallarm_mode_allow_override
(от наиболее глобального до наиболее локального):
-
http
: директивы внутри блокаhttp
действуют на запросы к HTTP‑серверу. -
server
: директивы внутри блокаserver
действуют на запросы к виртуальному серверу. -
location
: директивы внутри блокаlocation
действуют только на запросы с определенным путем.
Если на разных уровнях вложенных блоков http
, server
и location
указаны разные значения директивы wallarm_mode_allow_override
, приоритет имеет наиболее локальная настройка.
Пример использования директивы wallarm_mode_allow_override
:
http {
wallarm_mode monitoring;
server {
server_name SERVER_A;
wallarm_mode_allow_override off;
}
server {
server_name SERVER_B;
wallarm_mode_allow_override on;
location /main/login {
wallarm_mode_allow_override strict;
}
}
}
Этот пример конфигурации устанавливает следующие возможности для переопределения режима фильтрации:
-
Для запросов к виртуальному серверу
SERVER_A
правила режима фильтрации, заданные в Консоли управления, игнорируются. В блокеserver
, соответствующем серверуSERVER_A
, нет директивыwallarm_mode
. Поэтому для таких запросов будет работать режим фильтрацииmonitoring
, указанный в блокеhttp
. -
Для запросов к виртуальному серверу
SERVER_B
, кроме запросов с путем/main/login
, применяются правила режима фильтрации, заданные в Консоли управления.Для запросов с путем
/main/login
к виртуальному серверуSERVER_B
правила режима фильтрации, заданные в Консоли управления, применяются только в случае, когда они устанавливают более жесткий режим фильтрации, чемmonitoring
.
Пример конфигурации режима фильтрации¶
Рассмотрим частный пример конфигурации режима фильтрации с использованием всех перечисленных выше методов.
Настройка режима фильтрации в файле конфигурации WAF‑ноды¶
http {
wallarm_mode block;
server {
server_name SERVER_A;
wallarm_mode monitoring;
wallarm_mode_allow_override off;
location /main/login {
wallarm_mode block;
wallarm_mode_allow_override strict;
}
location /main/signup {
wallarm_mode_allow_override strict;
}
location /main/apply {
wallarm_mode block;
wallarm_mode_allow_override on;
}
}
}
Настройка в Консоли управления Вебмониторэкс¶
-
Общий режим фильтрации — Мониторинг.
-
-
Если запрос удовлетворяет условиям:
- Метод —
POST
, - Первая часть пути —
main
, - Вторая часть пути —
apply
, то установить режим фильтрации По умолчанию.
- Метод —
-
Если запрос удовлетворяет условию:
- Первая часть пути —
main
, то установить режим фильтрации Блокировка.
- Первая часть пути —
-
Если запрос удовлетворяет условиям:
- Первая часть пути —
main
, - Вторая часть пути —
login
, то установить режим фильтрации Мониторинг.
- Первая часть пути —
-
Примеры запросов к серверу SERVER_A
¶
Примеры запросов к настроенному серверу SERVER_A
и действий, применяемых WAF‑нодой Вебмониторэкс в отношении этих запросов:
-
Вредоносный запрос с путем
/news
обработается, но не будет заблокирован из‑за настройкиwallarm_mode monitoring;
для сервераSERVER_A
. -
Вредоносный запрос с путем
/main
обработается, но не будет заблокирован из‑за настройкиwallarm_mode monitoring;
для сервераSERVER_A
.К нему не применится облачное правило фильтрации Блокировка из‑за настройки
wallarm_mode_allow_override off;
для сервераSERVER_A
. -
Вредоносный запрос с путем
/main/login
будет заблокирован из‑за настройкиwallarm_mode block;
для запросов с путем/main/login
.К нему не применится облачное правило фильтрации Мониторинг из‑за настройки
wallarm_mode_allow_override strict;
в файле конфигурации WAF‑ноды. -
Вредоносный запрос с путем
/main/signup
будет заблокирован из‑за настройкиwallarm_mode_allow_override strict;
для запросов с путем/main/signup
и облачного правила фильтрации Блокировка для запросов с путем/main
. -
Вредоносный запрос с путем
/main/apply
и методомGET
будет заблокирован из‑за настройкиwallarm_mode_allow_override on;
для запросов с путем/main/apply
и облачного правила фильтрации Блокировка для запросов с путем/main
. -
Вредоносный запрос с путем
/main/apply
и методомPOST
будет заблокирован из‑за настройкиwallarm_mode_allow_override on;
для запросов с путем/main/apply
, облачного правила фильтрации По умолчанию и настройкиwallarm_mode block;
для запросов с путем/main/apply
в файле конфигурации WAF‑ноды.