Перейти к содержанию

Настройка режима фильтрации

Для WAF‑нод Валарм можно настроить режим фильтрации трафика — поведение при обработке входящих запросов.

Режим фильтрации можно задать следующими способами:

Возможные режимы фильтрации

В списке ниже возможные режимы фильтрации перечислены от наиболее мягкого к наиболее жесткому:

  • off: фильтрация запросов не производится.

  • monitoring: запросы обрабатываются, но никакие не блокируются, даже если были обнаружены вредоносные.

  • block: запросы обрабатываются, все распознанные вредоносные запросы блокируются.

Директива 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;
        }
    }
}

Этот пример конфигурации устанавливает следующие режимы фильтрации для ресурсов:

  1. Для запросов к HTTP‑серверу действует режим monitoring.
    1. Для запросов к виртуальному серверу SERVER_A действует режим monitoring.
    2. Для запросов к виртуальному серверу SERVER_B действует режим off.
    3. Для запросов к виртуальному серверу SERVER_C действует режим off, кроме запросов с путем /main/content или /main/login.
      1. Для запросов с путем /main/content к виртуальному серверу SERVER_C действует режим monitoring.
      2. Для запросов с путем /main/login к виртуальному серверу SERVER_C действует режим block.

Директива wallarm_mode_allow_override

Директива wallarm_mode_allow_override управляет возможностью использовать правила, определенные в облаке Валарм, вместо значений директивы wallarm_mode в конфигурации WAF‑ноды:

  • off: правила, заданные в облаке, игнорируются. Применяются правила, заданные директивой wallarm_mode в файлах конфигурации.

  • strict: применяются только те правила из облака, которые задают более жесткие режимы, чем режимы, заданные директивой wallarm_mode в файлах конфигурации.

    Возможные режимы фильтрации в порядке возрастания их жесткости перечислены выше.

  • on: применяются правила из облака. Настройки режима фильтрации трафика, заданные в конфигурационных файлах, игнорируются.

В списке ниже перечислены уровни, на которых можно задать значения директивы 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;
        }
    }
}

Этот пример конфигурации устанавливает следующие возможности для переопределения режима фильтрации:

  1. Для запросов к виртуальному серверу SERVER_A правила режима фильтрации, заданные в облаке, игнорируются. В блоке server, соответствующем серверу SERVER_A, нет директивы wallarm_mode. Поэтому для таких запросов будет работать режим фильтрации monitoring, указанный в блоке http.

  2. Для запросов к виртуальному серверу SERVER_B, кроме запросов с путем /main/login, применяются правила режима фильтрации, заданные в облаке.

    1. Для запросов с путем /main/login к виртуальному серверу SERVER_B правила режима фильтрации, заданные в облаке, применяются только в случае, когда они устанавливают более жесткий режим фильтрации, чем monitoring.

Общее правило фильтрации в облаке Валарм

Панель с кнопками на вкладке «Общие» в настройках веб‑интерфейса Валарм устанавливает общий режим фильтрации для всех входящих запросов. Такую же область действия имеет директива wallarm_mode, значение которой задано в блоке http в конфигурационном файле.

Если на вкладке «Правила» в облаке Валарм заданы локальные настройки режима фильтрации, они имеют больший приоритет для своей области действия, чем глобальная настройка на вкладке «Общие».

Действие правил фильтрации в облаке Валарм

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

Для того, чтобы установить общее правило фильтрации в облаке, выполните следующие действия:

  1. Войдите на портал Валарм по ссылке для EU‑облака или для RU‑облака.

  2. Перейдите на страницу настроек → вкладка Общие по ссылке для EU‑облака или для RU‑облака.

На вкладке «Общие» можно задать следующие режимы фильтрации:

  • Локальные настройки WAF‑ноды (по умолчанию) — значение директивы wallarm_mode_allow_override игнорируются, и режим работы WAF‑нод соответствует значениям директивы wallarm_mode.

  • Мониторинг — запросы обрабатываются, но никакие не блокируются, даже если были обнаружены вредоносные.

  • Блокировка — запросы обрабатываются, все распознанные вредоносные запросы блокируются.

Страница общих настроек

Синхронизация облака Валарм с WAF‑нодой

Применение заданных в облаке Валарм правил происходит при синхронизации облака с WAF‑нодой. Этот процесс запускается раз в 15 минут.

Правило режима фильтрации на вкладке «Правила»

Вы можете выполнить тонкую настройку режима фильтрации для обработки запросов, удовлетворяющих заданным вами условиям, на вкладке «Правила» веб‑интерфейса Валарм. Правила режима фильтрации на вкладке «Правила» имеют больший приоритет, чем общее правило фильтрации в облаке Валарм.

Действие правил фильтрации в облаке Валарм

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

Подробная информация о том, как работать с правилами на вкладке «Правила», доступна по этой ссылке.

Пошаговая инструкция создания правила, регулирующего режим фильтрации, доступна по этой ссылке.

Синхронизация облака Валарм с WAF‑нодой

Применение заданных в облаке Валарм правил происходит при синхронизации облака с WAF‑нодой. Этот процесс запускается раз в 15 минут.

Пример конфигурации режима фильтрации

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

Настройка режима фильтрации в файле конфигурации 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‑ноды.