FAQ

Поддерживается ли коммерческое использование?

Да.

Suri Oculus можно:

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

Ограничения зависят от конкретного компонента и лицензии, но коммерческое использование не запрещено.

Открытый или закрытый код?

Проект использует гибридную модель:

  • часть компонентов и интерфейсов доступна открыто;
  • ключевые модули (например, AI-логика и C++-извлечение признаков) распространяются в бинарном виде.

Это сделано осознанно:

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

Можно ли использовать в production?

Да, но с пониманием ограничений.

На текущий момент:

  • система стабильно работает в режиме детектирования;
  • подходит для production-сред с умеренной нагрузкой;
  • AI-модули предназначены для поддержки аналитика, а не для автоматического блокирования.

Рекомендация:

  • использовать Suri Oculus как наблюдательный и аналитический слой;
  • не строить критические автоматические блокировки без дополнительной валидации.

Для кого предназначен проект (SOC, SMB, homelab)?

Проект ориентирован на:

  • SOC / Blue Team — как дополнительный инструмент анализа и корреляции;
  • SMB / небольшие инфраструктуры — где нет бюджета на тяжёлые SIEM;
  • homelab / инженеров и исследователей — для изучения сетевого трафика и аномалий.

Suri Oculus не пытается заменить SIEM уровня Splunk, но закрывает разрыв между «сырыми логами Suricata» и дорогими enterprise-решениями.

Чем Suri Oculus отличается от «чистого» Suricata?

Suricata — это IDS/IPS-движок. Он анализирует трафик и пишет события в логи.
Suri Oculus — это надстройка и система управления вокруг Suricata.

Ключевые отличия:

  • централизованное управление Suricata (конфигурация, режимы, правила);
  • хранение и обработка событий через Redis вместо прямой работы с eve.json;
  • веб-интерфейс для анализа, фильтрации и визуализации;
  • AI-модули для выявления аномалий (Flow, DNS, TLS, HTTP и др.);
  • ориентация на работу на слабом и среднем железе.

Проще говоря: Suricata — сенсор, Suri Oculus — система наблюдения и анализа.

Какой режим SELinux рекомендуется?

Рекомендуемый режим:

  • Permissive — для первого запуска и отладки;
  • Enforcing — после настройки политик.

Причина:

  • Suricata, Redis и собственные сервисы требуют корректных правил;
  • автоматических SELinux-политик проект намеренно не навязывает.

В production:

  • Enforcing + кастомные правила — правильный вариант;
  • Permissive — допус

Нужен ли Docker?

Нет.

Docker:

  • не обязателен;
  • не используется по умолчанию;
  • не является частью архитектуры.

Suri Oculus ориентирован на:

  • нативную установку;
  • systemd-сервисы;
  • минимальный runtime-overhead.

Docker можно использовать только по желанию, например для тестирования.

Можно ли запускать на слабом железе / роутерах?

Да, с оговорками.

Подходит:

  • мини-ПК;
  • старые серверы;
  • слабые x86-роутеры.

Что можно отключить:

  • AI-модули;
  • сложную визуализацию;
  • долгосрочное хранение данных.

Не подходит:

  • ARM-роутеры без нормального user-space;
  • устройства с <1 ГБ RAM;
  • environments без Redis и systemd.

Подход проекта — работать даже там, где SIEM не запускается вообще.

Минимальные требования к CPU / RAM / диску

Минимум для рабочей системы (детектирование + веб-интерфейс):

  • CPU: 2 ядра x86_64
  • RAM: 2 ГБ (4 ГБ — комфортно)
  • Диск: от 10 ГБ
  • Сеть: 1 Gbps (без deep packet capture)

Рекомендовано для AI-анализа:

  • 4+ ядер CPU;
  • 8 ГБ RAM;
  • SSD.

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

Какие ОС поддерживаются (Fedora, RHEL, Debian)?

Официально и фактически поддерживаются:

  • Fedora (основная dev-платформа);
  • RHEL / Rocky / Alma (production-ориентированные системы);
  • Debian / Debian-based (включая Ubuntu — без специфических зависимостей).

Требования:

  • systemd;
  • современное ядро Linux;
  • стандартный user-space (glibc, iproute2 и т.п.).

Экзотические дистрибутивы возможны, но не тестируются и не поддерживаются.

Можно ли отключить AI-модули?

Да, полностью.

Возможные режимы работы:

  • Suricata + визуализация (без AI);
  • Suricata + AI-анализ;
  • аналитика без активного AI-детекта.

AI-модули:

  • не влияют на работу базовой системы;
  • не являются обязательными;
  • не участвуют в блокировании трафика.

Это осознанное решение: AI — помощник аналитика, а не «чёрный ящик».

Где хранятся логи и модели?

Логи Suricata:

  • не используются напрямую в виде eve.json;
  • данные пишутся и обрабатываются через Redis;
  • при необходимости возможна выгрузка в файл.

AI-модели:

  • хранятся локально на сервере;
  • загружаются Python-модулями при старте;
  • не требуют внешнего доступа или облака.

Никакие данные не отправляются наружу.

Как взаимодействуют C++ и веб-интерфейс?

Связка выглядит так:

Backend на C++:

  • управляет Suricata;
  • принимает события;
  • пишет данные в Redis;
  • предоставляет REST-эндпоинты.

Web-интерфейс:

  • работает напрямую с REST API;
  • читает агрегированные данные из backend;
  • не взаимодействует с C++ напрямую.

C++ используется там, где критичны:

  • производительность;
  • минимальные задержки;
  • работа на слабом железе.

Зачем Redis и что в нём хранится?

Redis используется не как кэш, а как рабочее хранилище.

В Redis хранятся:

  • события Suricata (Flow, DNS, HTTP, TLS и др.);
  • агрегированные статистики;
  • временные состояния и счётчики;
  • данные для AI-анализа;
  • результаты аномалий и метки.

Причины выбора Redis:

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

Это ключевой элемент производительности системы.

Из каких компонентов состоит система?

Suri Oculus состоит из набора специализированных компонентов, каждый из которых решает свою задачу:

  • Suricata — сетевой IDS/IPS-движок, источник событий и телеметрии;

  • daemonmove — собственный сервис-парсер логов:

  1. принимает события Suricata;
  2. нормализует и фильтрует данные;
  3. управляет потоком событий;
  4. записывает обработанные данные в Redis;
  • Backend (C++) — управление Suricata и системой в целом:

  1. конфигурация;
  2. режимы работы;
  3. REST API;
  • Redis — центральное рабочее хранилище:

  1. события;
  2. агрегаты;
  3. временные состояния;
  4. данные для аналитики и AI;
  • AI-backend (Python / FastAPI) — анализ поведения и аномалий;

  • Web-интерфейс (HTML + чистый JavaScript) — визуализация и аналитика;

  • oculus tools — набор вспомогательных CLI-инструментов:

  1. обслуживание данных;
  2. автоматизация типовых операций.

Архитектура построена так, чтобы:

  • не зависеть от формата eve.json;
  • минимизировать нагрузку на диск;
  • работать устойчиво под нагрузкой;
  • масштабироваться по частям, а не целиком.

Есть ли false positives?

Да, как и в любой системе аномального анализа.

Важно понимать:

  • AI ищет отклонения, а не «атаки»;
  • аномалия ≠ инцидент;
  • часть срабатываний требует интерпретации аналитиком.

Подход проекта:

  • показывать причину и контекст аномалии;
  • давать возможность сравнивать периоды;
  • не принимать автоматических решений за пользователя.

Требуется ли обучение на своих данных?

Рекомендуется, но не строго обязательно.

Варианты использования:

  • предобученные модели — для быстрого старта;
  • дообучение на локальных данных — для повышения точности;
  • полное переобучение — для специфических сетей.

Чем стабильнее и «чище» исходный трафик, тем лучше качество детекта.

Какие модели используются?

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

На текущий момент:

  • Isolation Forest и родственные подходы;
  • статистические и поведенческие профили;
  • собственное извлечение признаков (частично реализовано на C++).

Выбор сделан в пользу моделей, которые:

  • не требуют размеченных датасетов;
  • устойчивы к шуму;
  • работают на ограниченных ресурсах.

Какие типы данных анализируются (Flow, DNS, TLS и т.д.)?

AI-модули анализируют поведенческие и сетевые признаки, полученные из событий Suricata.

Поддерживаемые типы данных:

  • Flow — сетевые потоки (объёмы, направления, длительность, частота);

  • DNS — запросы, ответы, поведение доменов;

  • TLS — характеристики рукопожатий, версии, JA-подобные признаки;

  • HTTP — методы, заголовки, паттерны запросов;

  • Meta-данные — агрегированные и временные признаки поведения.

Анализ строится не на сигнатурах, а на отклонениях от нормального поведения.

Логи шифруются или нет?

По умолчанию:

  • логи не шифруются на уровне приложения.

Причины:

  • минимальные накладные расходы;
  • высокая производительность;
  • простота интеграции.

Рекомендуемый подход:

  • шифрование диска (LUKS);
  • контроль доступа к хосту;
  • изоляция сети и сервисов.

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

Какие данные хранятся и как долго?

Типы хранимых данных:

  • события Suricata (Flow, DNS, HTTP, TLS и др.);
  • агрегированные статистики;
  • результаты AI-анализа и метки аномалий;
  • служебные состояния системы.

Срок хранения:

  • настраивается администратором;
  • зависит от политики очистки Redis;
  • не жёстко зашит в систему.

По умолчанию система не предполагает бесконечное хранение данных.

Можно ли использовать в изолированной сети?

Да.

Система рассчитана на работу:

  • в закрытых сегментах;
  • в изолированных (air-gapped) сетях;
  • без доступа в интернет.

Единственное требование — локальный доступ администратора к хосту.

Есть ли облачные компоненты?

Нет.

Suri Oculus — полностью on-premise система:

  • без SaaS;
  • без обязательных облачных сервисов;
  • без внешних зависимостей по сети.

Даже AI-анализ выполняется локально.

Отправляются ли данные куда-либо?

Нет.

Suri Oculus:

  • не отправляет телеметрию;
  • не использует внешние API;
  • не передаёт данные разработчику или третьим сторонам.

Все данные остаются внутри вашей инфраструктуры.

Можно ли участвовать в развитии проекта?

Да.

Возможные формы участия:

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

Проект ориентирован на профессиональное сообщество, а не на массовый open-source ради галочки.

Как часто выходят обновления?

Обновления выходят по мере готовности, а не по жёсткому расписанию.

Типы обновлений:

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

Проект развивается итеративно, с фокусом на стабильность.

Планируются ли платные функции?

Да, в перспективе.

Рассматриваются:

  • расширенные AI-модули;
  • дополнительные аналитические возможности;
  • функции для корпоративных и распределённых сред;
  • приоритетная поддержка.

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

Есть ли коммерческая поддержка?

На данный момент — ограниченно.

Поддержка возможна в формате:

  • консультаций;
  • помощи с внедрением;
  • адаптации под конкретную инфраструктуру;
  • анализа производительности и данных.

Полноценная enterprise-поддержка будет зависеть от спроса и развития проекта.

Какая лицензия используется?

Suri Oculus использует гибридную модель лицензирования.

  • открытые компоненты распространяются под свободными лицензиями;
  • ключевые модули (AI-анализ, C++-извлечение признаков, некоторые сервисы) распространяются в бинарном виде;
  • Suricata используется на условиях своей лицензии.

Это позволяет:

  • сохранять открытость экосистемы;
  • защищать интеллектуальную собственность;
  • развивать проект в коммерческом направлении.

Не нашли нужную информацию?
Задайте вопрос.

 

Прокрутить вверх