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

Быстрый старт с Вебмониторэкс WAF

С помощью данной инструкции вы сможете быстро установить первую фильтрующую ноду Вебмониторэкс на основе NGINX и попробовать базовые возможности продукта. Быстрая установка ноды подходит только для первого знакомства с продуктом. Для установки ноды в боевой среде мы рекомендуем использовать отдельные инструкции для подходящих платформ.

Быстрая установка ноды Вебмониторэкс реализована с помощью специального shell‑скрипта, который необходимо выполнить на сервере с поддерживаемой операционной системой (ОС) на базе Linux.

Описание скрипта для быстрого старта

Для быстрой установки ноды Вебмониторэкс используется shell‑скрипт getwallarm.sh. Скрипт выполняет следующие шаги:

  1. Выключает механизм SELinux на установленной ОС. Быстрая установка ноды Вебмониторэкс невозможна при включенном механизме SELinux.

  2. Устанавливает последнюю доступную версию NGINX stable из официального репозитория NGINX.

  3. Устанавливает пакеты Вебмониторэкс для модуля Вебмониторэкс-NGINX и модуля постаналитики.

  4. Регистрирует новую ноду в Вычислительном кластере Вебмониторэкс. Новая нода фильтрует запросы в режиме блокировки.

  5. Настраивает NGINX с установленной нодой Вебмониторэкс как обратный прокси‑сервер для домена, который необходимо защитить от атак.

  6. Настраивает блокировку по IP‑адресам согласно инструкции.

  7. Создает белый список с IP‑адресами Сканера Вебмониторэкс согласно инструкции.

  8. Отправляет следующие тестовые запросы:

    • GET‑запрос на адрес 127.0.0.8/wallarm-status, чтобы проверить доступность сервиса статистики Вебмониторэкс.
    • GET‑запрос на адрес инстанса NGINX (порт 80/TCP), чтобы проверить доступ к домену, который защищает нода.
    • Тестовый запрос с атаками SQLi и XSS на адрес инстанса NGINX:

      curl -H "Host: $DOMAIN_NAME" http://localhost/?id='or+1=1--a-<script>prompt(1)</script>'
      

      Ожидаемый ответ на запрос — 403, так как нода работает в режиме блокировки.

    Если реальный ответ на запрос отличается от ожидаемого, скрипт вернет сообщение с описанием ошибки и инструкцией для исправления.

Процедура быстрого старта

  1. Создайте аккаунт в Консоли управления Вебмониторэкс.

  2. Установите поддерживаемую ОС на ваш сервер. Для корректной работы скрипта быстрого старта рекомендуется использовать образ/дистрибутив ОС с базовым набором пакетов, а также не выполнять дополнительную конфигурацию ОС. Нода, установленная с помощью скрипта для быстрого старта, может не поддерживать дополнительную конфигурацию ОС (например, дополнительные настройки безопасности или другие настройки, соответствующие внутренним стандартам компании).

    • Debian 10.x (buster)
    • Ubuntu 16.04 LTS (xenial)
    • Ubuntu 18.04 LTS (bionic)
    • Ubuntu 20.04 LTS (focal)
    • CentOS 7.x
    • CentOS 8.x
  3. Подключитесь к серверу с поддерживаемой ОС и переключитесь на пользователя с правами root, используя команду:

    sudo -i
    
  4. Скачайте скрипт getwallarm.sh, используя команду:

    curl -o getwallarm.sh https://raw.githubusercontent.com/wallarm/quick-start/stable/2.18/getwallarm.sh
    
    wget -O getwallarm.sh https://raw.githubusercontent.com/wallarm/quick-start/stable/2.18/getwallarm.sh
    
  5. Запустите скрипт с необходимыми параметрами:

    sh getwallarm.sh -u <YOUR_WALLARM_USERNAME> -p <YOUR_WALLARM_PASSWORD> -S <WALLARM_CLOUD> -n <WALLARM_NODE_NAME> -d <DOMAIN_NAME> -o <ORIGIN_SERVER>
    
    Параметр Описание Обязательный?
    <YOUR_WALLARM_USERNAME> Email для аккаунта пользователя Деплой или Администратор в Консоли управления Вебмониторэкс. Да
    <YOUR_WALLARM_PASSWORD> Пароль для аккаунта пользователя Деплой или Администратор в Консоли управления Вебмониторэкс. Да
    <WALLARM_CLOUD> Название используемого Вычислительного кластера Вебмониторэкс. Должно быть ru. Значение по умолчанию: eu. Нет
    <WALLARM_NODE_NAME> Имя ноды Вебмониторэкс. По умолчанию используется имя хоста.

    Вы сможете изменить заданное имя позже в Консоли управления Вебмониторэкс → Ноды.
    Нет
    <DOMAIN_NAME> Нода Вебмониторэкс будет обрабатывать трафик, поступающий на указанный домен. В качестве значения вы можете указать внешний эндпоинт вашего API, адрес сайта компании или любого другого сайта (например, example.com).

    Значение по умолчанию: localhost.
    Нет
    <ORIGIN_SERVER> Домен, на который необходимо проксировать трафик. Если параметр не передан в явном виде, используется значение <DOMAIN_NAME>. Нет
  6. Убедитесь, что скрипт вернул сообщение We've completed the Вебмониторэкс node deployment process.

    Если при выполнении скрипта возникли ошибки, скрипт вернет сообщения с описанием ошибок и инструкциями для исправления.

  7. Откройте Консоль управления ВебмониторэксСобытия и убедитесь, что атаки SQLi и XSS появились в списке:

    Атаки в интерфейсе

Следующие шаги

Быстрая установка ноды Вебмониторэкс выполнена успешно!

Для дальнейшего знакомства с продуктом мы рекомендуем изучить следующие базовые возможности Вебмониторэкс WAF:

Установка ноды в боевой среде

Если вы завершили быстрый старт и изучили базовые возможности Вебмониторэкс WAF, рекомендуем перейти к установке фильтрующей ноды в боевой среде.

Поддерживаемые способы установки ноды Вебмониторэкс в боевой среде →