Настройка и подключение сенсоров
Настройка сенсоров
Настройка сенсоров выполняется после их установки и подключения к серверу управления. В рамках первоначальной настройки задаются только параметры, необходимые для запуска сенсора и установления соединения с сервером управления.
Остальные параметры настраиваются в процессе эксплуатации системы.
Для настройки сенсоров используются:
-
веб-интерфейс 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-фильтр не задан, система обрабатывает весь доступный трафик или все пакеты выбранного дампа.
При наличии ошибки в выражении система не применяет фильтр и отображает сообщение о некорректном синтаксисе. В этом случае администратору необходимо исправить выражение и повторно запустить обработку.
Подключение сенсоров к серверу управления
Для подключения установленных сенсоров к серверу управления необходимо:
-
Перейти на страницу «Администрирование» → «Сенсоры»;
-
Нажать кнопку «
». Откроется страница добавления сенсора (рис.8);

Рис. 8 – Страница добавления сенсора
-
Ввести в поле «Имя» наименование, которое необходимо назначить подключаемому сенсору;
-
Нажать «Получить токен» – сгенерируется токен;
-
Скопировать токен из поля «Токен»;
-
Подключиться к локальной консоли управления машины, на которой установлен сенсор, который необходимо подключить к СУС;
-
Остановить службу сенсора, который необходимо подключить к СУС, передав следующую команду: sudo systemctl stop ids-sensor@<Порт>, где <Порт> – порт, по которому по умолчанию доступен сенсор;
-
Запустить сенсор в режиме регистрации, передав команду:
-
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).
-
Регистрация сенсора прошла успешно, если в процессе выполнения команды в локальной консоли управления не было выведено сообщений об ошибках (сообщения с пометками WARN и DEBUG, генерируемые в процессе выполнения команды, являются информационными и не являются сообщениями об ошибках);
-
Запустить службу зарегистрированного сенсора:
sudo systemctl start ids-sensor@<Порт>, где <Порт> – порт, по которому по умолчанию доступен сенсор;
- Проверить, что служба зарегистрированного сенсора работает, т.е. находится в статусе 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 закомментировать параметры установки ранее установленных сенсоров, а также записи о машинах с ранее установленными сенсорами либо отдельные записи сенсоров, чтобы установочный скрипт не выполнял их повторную установку;
-
добавить параметры сенсоров, которые требуется установить. Для каждого нового сенсора необходимо задать:
-
port – сетевой порт, используемый сенсором для взаимодействия с другими компонентами eSensor;
-
iface – сетевой интерфейс, с которого сенсор должен захватывать трафик;
-
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. Дальнейший порядок установки соответствует процедуре, приведенной в «Установка дополнительных сенсоров».