Перейти к основному содержимому

Настройка и подключение сенсоров

Настройка сенсоров​

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

Остальные параметры настраиваются в процессе эксплуатации системы.

Для настройки сенсоров используются:

  • веб-интерфейс eSensor;

  • конфигурационный файл сенсора.

Настройка через веб-интерфейс eSensor​

Основные параметры сенсоров и их модулей настраиваются в веб-интерфейсе eSensor.

Для перехода к списку сенсоров необходимо перейти в раздел: «Администрирование» → «Сенсоры».

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

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

В карточке сенсора доступны следующие разделы:

  • «Регистрация сессий»;

  • «Сигнатурный анализ»;

  • «Эвристический анализ»;

  • «Отправка событий»;

  • «Проверить PCAP»;

  • «Общие настройки».

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

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

Настройка с помощью конфигурационного файла​

Параметры, недоступные в веб-интерфейсе, задаются в конфигурационном файле экземпляра сенсора:

/opt/echelon/ids-sensor-<port>/config.yaml

В пути <port> соответствует номеру порта экземпляра сенсора.

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

При редактировании необходимо сохранять структуру и синтаксис YAML. Нарушение структуры файла, использование недопустимых значений или неверных отступов может привести к ошибке запуска сенсора либо его отдельных модулей.

После изменения конфигурационного файла следует проверить состояние сенсора и его модулей в веб-интерфейсе.

Фильтрация трафика с помощью BPF​

BPF-фильтр позволяет ограничить анализируемый трафик по различным критериям (IP-адреса, порты, протоколы), что снижает нагрузку на систему и повышает эффективность анализа.

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

BPF-фильтры, используемые в eSensor, должны соответствовать требованиям, приведённым в таблице 5.

Таблица 5 – Требования и ограничения к BPF-фильтрам

ПараметрОписание
Допустимые символыЛюбые символы, допустимые в выражениях BPF
СинтаксисВыражение на языке BPF
host 192.168.1.1 and port 80
Максимальная длина4096 символов
Значение по умолчаниюНе задано (пустая строка)

Использование BPF-фильтров предусмотрено в процессе работы сигнатурного, эвристического анализа, а также при записи дампов сессий.

BPF-фильтры используются для отбора сетевых пакетов по заданным условиям. Фильтрация позволяет сократить объём обрабатываемого трафика и исключить из анализа пакеты, которые не соответствуют установленным критериям.

Система применяет BPF-фильтры:

  • при обработке сетевого трафика;

  • при обработке сохранённых дампов трафика.

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

В выражении администратор может использовать:

  • IP-адрес источника или назначения;

  • порт источника или назначения;

  • сетевой или транспортный протокол;

  • подсеть;

  • направление передачи;

  • комбинацию нескольких условий.

Примеры общих фильтров:

Отбирается весь трафик, связанный с узлом 192.168.1.10:

host 192.168.1.10

Отбирается TCP-трафик, передаваемый через порт 443:

tcp port 443

Отбирается трафик, источником которого является узел 192.168.1.10:

src host 192.168.1.10

Отбирается трафик, направленный в подсеть 10.0.0.0/24:

dst net 10.0.0.0/24

BPF-фильтр дампа применяется при обработке сохранённого файла с сетевым трафиком. Система передаёт на анализ только те пакеты из дампа, которые соответствуют заданному выражению.

Применение фильтра не изменяет исходный файл дампа и не удаляет содержащиеся в нём пакеты.

Примеры BPF-фильтр дампа:

отбирает из дампа только UDP-пакеты, направленные на порт 53:

udp and dst port 53

отбирает пакеты, связанные с узлом 192.168.1.10, за исключением трафика через порт 22.

host 192.168.1.10 and not port 22

Для формирования сложных выражений используются логические операторы:

  • and – должны выполняться все условия;

  • or – должно выполняться хотя бы одно условие;

  • not – указанное условие исключается.

Для определения порядка обработки условий используются круглые скобки.

Пример:

Фильтр отбирает HTTP- и HTTPS-трафик, исключая пакеты, связанные с узлом 192.168.1.20:

tcp and (port 80 or port 443) and not host 192.168.1.20

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

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

Подключение сенсоров к серверу управления​

Для подключения установленных сенсоров к серверу управления необходимо:

  1. Перейти на страницу «Администрирование» → «Сенсоры»;

  2. Нажать кнопку «значок». Откроется страница добавления сенсора (рис.8);

Страница добавления сенсора

Рис. 8 – Страница добавления сенсора

  1. Ввести в поле «Имя» наименование, которое необходимо назначить подключаемому сенсору;

  2. Нажать «Получить токен» – сгенерируется токен;

  3. Скопировать токен из поля «Токен»;

  4. Подключиться к локальной консоли управления машины, на которой установлен сенсор, который необходимо подключить к СУС;

  5. Остановить службу сенсора, который необходимо подключить к СУС, передав следующую команду: sudo systemctl stop ids-sensor@<Порт>, где <Порт> – порт, по которому по умолчанию доступен сенсор;

  6. Запустить сенсор в режиме регистрации, передав команду:

  7. sudo /opt/echelon/ids-sensor/ids-sensor register -c opt/echelon/ids-sensor-<Порт>/config.yaml --token <Токен> --server-addr <Адрес_СУС>:<Порт_СУС>, где:

  • <Порт> – порт, по которому по умолчанию доступен сенсор;

  • <Токен> – токен, скопированный на под«ВЕБ-ИНТЕРФЕЙС СЕРВЕРА АУТЕНТИФИКАЦИИ»;

  • <Адрес_СУС> – доменное имя СУС, для которого выпущен TLS-сертификат (по умолчанию данный сертификат выписывается на доменное имя, заданное при установке в файле hosts.yml в качестве значения ключа all.children.esensor_sensors.hosts);

  • <Порт_СУС> – порт, по которому доступен СУС (по умолчанию – 7100).

  1. Регистрация сенсора прошла успешно, если в процессе выполнения команды в локальной консоли управления не было выведено сообщений об ошибках (сообщения с пометками WARN и DEBUG, генерируемые в процессе выполнения команды, являются информационными и не являются сообщениями об ошибках);

  2. Запустить службу зарегистрированного сенсора:

sudo systemctl start ids-sensor@<Порт>, где <Порт> – порт, по которому по умолчанию доступен сенсор;
  1. Проверить, что служба зарегистрированного сенсора работает, т.е. находится в статусе active(running):
sudo systemctl status ids-sensor@<Порт>, где <Порт> – порт, по которому по умолчанию доступен сенсор.

В таблице на странице «Администрирование» → «Сенсоры» должна появиться информация о подключенных сенсорах.

Отключение сенсоров от сервера управления​

Отключение сенсоров от сервера управления предусмотрено через пользовательский веб-интерфейс NTA eSensor. Описание процедуры представлено в разделе «Сенсоры» этой документации.

Установка дополнительных сенсоров​

В развернутый программный комплекс NTA eSensor можно установить один или несколько дополнительных сенсоров. Добавление новых сенсоров выполняется с помощью установочного скрипта esensor.sh и инвентарного файла hosts.yml, использованного при первоначальной установке.

Для подготовки файла hosts.yml необходимо выполнить следующие действия:

  • перейти в каталог: esensor, использованный при первоначальной установке, с помощью команды cd esensor;

  • открыть файл командой nano hosts.yml;

  • в блоке all.children.esensor_sensors.hosts закомментировать параметры установки ранее установленных сенсоров, а также записи о машинах с ранее установленными сенсорами либо отдельные записи сенсоров, чтобы установочный скрипт не выполнял их повторную установку;

  • добавить параметры сенсоров, которые требуется установить. Для каждого нового сенсора необходимо задать:

  1. port – сетевой порт, используемый сенсором для взаимодействия с другими компонентами eSensor;

  2. iface – сетевой интерфейс, с которого сенсор должен захватывать трафик;

  3. name – уникальное имя сенсора.

Пример добавления новых сенсоров:

esensor_sensors:
hosts:
# Ранее установленные сенсоры временно исключены
# esensor-sensors1:
# ansible_user: user1
# ansible_password: "password0"
# ansible_become_password: "password0"
# sensors:
# port: 7110
# iface: eth0
# name: sensor-1
esensor-sensors2:
ansible_user: user2
ansible_password: "password0"
ansible_become_password: "password0"
sensors:
- port: 7112
iface: eth0
name: sensor-2
- port: 7113
iface: eth1
name: sensor-3
vars:
ansible_connection: ssh
ansible_ssh_common_args: '-o StrictHostKeyChecking=no'

Настройку блока all.children.astra-esensor изменять или удалять не следует. При установке дополнительных сенсоров в данных блоках должны оставаться параметры сервера аутентификации и СУС, заданные при первоначальной установке.

Запуск установки​

Для установки дополнительных сенсоров необходимо перейти в каталог esensor и выполнить команду ./esensor.sh install_sensors. Дальнейший порядок установки соответствует процедуре, приведенной в «Установка дополнительных сенсоров».