Развертывание в облаке Microsoft Azure

Azure Marketplace предоставляет готовый к развертыванию образ Linux с предустановленным фильтрующим узлом.

Чтобы развернуть фильтрующий узел в облаке Microsoft Azure, необходимо выполнить следующие шаги:

  1. Создание SSH-ключей.
  2. Вход на портал Microsoft Azure.
  3. Создание и запуск виртуальной машины с фильтрующим узлом.
  4. Подключение по протоколу SSH к созданной виртуальной машине.
  5. Настройка фильтрующего узла для использования прокси-сервера.
  6. Подключение фильтрующего узла к облаку Wallarm.
  7. Настройка правил проксирования и фильтрации.
  8. Настройка выделения оперативной памяти.

1. Создание SSH-ключей

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

Microsoft Azure предоставляет два варианта аутентификации при подключении к виртуальной машине по SSH: с использованием логина и пароля или с использованием SSH-ключей. Последний способ является более предпочтительным.

Сгенерируйте пару из открытого и закрытого SSH-ключей. Например, вы можете использовать утилиты ssh-keygen или PuTTYgen.

Генерация SSH-ключей с помощью PuTTYgen

Более подробную информацию можно получить здесь: Как использовать ключи SSH c Windows в Azure.

2. Вход на портал Microsoft Azure

Войдите на портал Azure.

3. Создание и запуск виртуальной машины с фильтрующим узлом

Чтобы создать виртуальную машину с фильтрующим узлом, выполните следующие действия:

  1. В левом верхнем углу портала выберите Создать ресурс.

  2. В появившейся строке поиска введите «wallarm».

    Поиск ресурса

  3. В результатах поиска выберите «Wallarm - Next-Gen Web Application Firewall».

    Откроется страница с описанием продукта Wallarm.

    Описание продукта Wallarm

    Также вы можете попасть на эту страницу, используя Azure Marketplace. Для этого перейдите по ссылке и нажмите на кнопку Получить.

    Wallarm на Azure Marketplace

  4. Нажмите на кнопку Создать. Запустится мастер создания виртуальной машины.

  5. Во вкладке «Основные» выберите необходимую подписку (из вашей учетной записи Azure), задайте имя и размер виртуальной машины.

    Создание виртуальной машины: основные параметры

  6. Выберите вариант аутентификации для учетной записи администратора.

    Если вы используете предлагаемый по умолчанию вариант с SSH-ключами, введите выбранное имя пользователя и публичный SSH-ключ, полученный вами ранее.

    Создание виртуальной машины: параметры аутентификации

  7. Настройте другие необходимые параметры для создаваемой виртуальной машины.

  8. Нажмите на кнопку Просмотр и создание, убедитесь, что все необходимые параметры заданы верно.

    Создание виртуальной машины: проверка параметров

  9. Нажмите на кнопку Создать для запуска процесса развертывания виртуальной машины.

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

    Процесс развертывания виртуальной машины

Более подробную информацию можно получить здесь: Краткое руководство. Создание виртуальной машины под управлением Linux на портале Azure.

4. Подключение по протоколу SSH к созданной виртуальной машине

На экране обзора виртуальной машины нажмите на кнопку Подключиться для просмотра значений IP-адреса и порта для подключения по протоколу SSH. При необходимости измените параметры, заданные по умолчанию.

Настройка параметров подключения к виртуальной машине

Подключитесь к виртуальной машине с фильтрующим узлом по протоколу SSH, используя приватный SSH-ключ, созданный вами ранее.

Более подробную информацию можно получить здесь: Как использовать ключи SSH c Windows в Azure.

5. Настройка фильтрующего узла для использования прокси-сервера

Данный этап настройки предназначен для пользователей, использующих свой прокси-сервер для работы защищаемых веб-приложений.

Если Вы не используете прокси-сервер, пропустите этот этап настройки.

Чтобы настроить фильтрующий узел Wallarm для использования Вашего прокси-сервера, необходимо присвоить новые значения переменным окружения, которые определяют используемый прокси-сервер.

Добавьте в файл /etc/environment экспорты новых значений переменных окружения:

  • export https_proxy — прокси для протокола https;
  • export http_proxy — прокси для протокола http;
  • export no_proxy — ресурсы, для запросов к которым необходимо отключить проксирование.

Присвойте переменным https_proxy и http_proxy строки вида <scheme>://<proxy_user>:<proxy_pass>@<host>:<port>, где:

  • <scheme> — используемый протокол (должен совпадать с протоколом, для которого настраивается прокси в текущей переменной окружения);
  • <proxy_user> — имя пользователя для авторизации на прокси-сервере;
  • <proxy_pass> — пароль для авторизации на прокси-сервере;
  • <host> — хост используемого прокси-сервера;
  • <port> — порт используемого прокси-сервера.

Присвойте переменной no_proxy значение в виде массива IP-адресов и/или доменов, к которым нужно обращаться без использования прокси: "<res_1>, <res_2>, <res_3>, <res_4>, ...", где <res_1>, <res_2>, <res_3> и <res_4> — IP-адреса и/или домены.

Ресурсы, к которым нужно обращаться без использования прокси

Для корректной работы системы в список ресурсов, к которым нужно обращаться без прокси, необходимо добавить следующие IP-адреса и домен: 127.0.0.1, 127.0.0.8, 127.0.0.9 и localhost.

IP-адреса 127.0.0.8 и 127.0.0.9 используются для работы фильтрующего узла Wallarm.

Пример корректного содержимого файла /etc/environment ниже демонстрирует следующую конфигурацию:

  • Протоколы https и http используют хост 1.2.3.4 и порт 1234 для проксирования запросов;
  • Протоколы https и http используют имя пользователя admin и пароль 01234 для авторизации на прокси-сервере;
  • Для запросов к 127.0.0.1, 127.0.0.8, 127.0.0.9 и localhost проксирование отключено.
export https_proxy=http://admin:01234@1.2.3.4:1234
export http_proxy=http://admin:01234@1.2.3.4:1234
export no_proxy="127.0.0.1, 127.0.0.8, 127.0.0.9, localhost"

6. Подключение фильтрующего узла к облаку Wallarm

Фильтрующий узел в процессе работы взаимодействует с облаком Wallarm.

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

  1. Убедитесь, что ваша учетная запись Wallarm имеет права на подключение нового фильтрующего узла (иными словами, имеет роль Администратор), и двухфакторная авторизация для вашей учетной записи отключена.

    Это можно проверить, просмотрев список пользователей в консоли Wallarm:

    Список пользователей в консоли Wallarm

  2. На виртуальной машине с фильтрующим узлом запустите скрипт addnode:

    $ sudo /usr/share/wallarm-common/addnode
    
  3. Введите логин и пароль от вашей учетной записи в консоли Wallarm.

Доступ к API

Для работы с облаком виртуальная машина с фильтрующим узлом должна иметь доступ к https://api.wallarm.com:444.

В случае проблем убедитесь, что доступ не ограничен файерволом.

7. Настройка правил проксирования и фильтрации

Все действия выполняются на виртуальной машине с фильтрующим узлом.

Настройте режим фильтрации «monitoring» для фильтрующего узла. Для этого выполните следующие действия:

  1. Откройте файл конфигурации /etc/nginx/conf.d/wallarm.conf:

    $ sudo nano /etc/nginx/conf.d/wallarm.conf
    
  2. Добавьте в файл строку wallarm_mode monitoring;.

  3. Убедитесь, что в файле отсутствуют (или закомментированы символом #) другие строки, содержащие параметр wallarm_mode.

  4. Сохраните сделанные изменения.

Пример файла конфигурации без закомментированных параметров:

#
# Wallarm module specific parameters
#

wallarm_mode monitoring;

Затем настройте правила проксирования, как это описано здесь.

8. Настройка выделения оперативной памяти

Фильтрующий узел использует Tarantool для хранения данных в оперативной памяти.

По умолчанию для нужд Tarantool выделяется 75% от общего объема оперативной памяти виртуальной машины.

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

  1. Откройте файл конфигурации /etc/default/wallarm-tarantool.

    $ sudo nano /etc/default/wallarm-tarantool
    
  2. Укажите размер выделяемой памяти (в ГБ), используя параметр SLAB_ALLOC_ARENA.

    Например, для выделения 24 ГБ параметр должен выглядеть так:

    SLAB_ALLOC_ARENA=24
    
  3. Сохраните сделанные изменения и выйдите из текстового редактора.

  4. Перезапустите Tarantool:

    $ sudo systemctl restart wallarm-tarantool
    

Развертывание завершено

Вы успешно завершили развертывание.

Проверьте, что фильтрующий узел работает и пропускает через себя трафик.

Более подробную информацию можно получить здесь.

results matching ""

    No results matching ""