Рубрика: Блог

Как настроить Suricata и Suri Oculus: полное руководство

Suricata — мощная система обнаружения и предотвращения вторжений (IDS/IPS) с открытым исходным кодом, широко используемая в корпоративных и домашних сетях.Suri Oculus — высокопроизводительная панель управления и визуализации логов Suricata, построенная на C++ и Redis, обеспечивающая быстрый доступ к событиям и гибкое управление правилами. Это руководство описывает полный процесс установки, настройки и интеграции Suricata и Suri Oculus, включая оптимизацию, управление правилами и работу с IoC. 1. Установка Suricata 1.1 Debian/Ubuntu sudo apt update sudo apt install suricata suricata-update jq sudo systemctl enable suricata sudo systemctl start suricata 1.2 Fedora / RHEL / CentOS sudo dnf install suricata sudo systemctl enable suricata sudo systemctl start suricata 1.3 Установка на маршрутизаторы и ARM устройства Suricata работает на: OpenWRT Debian ARM Ubuntu ARM Raspberry Pi / Orange Pi Установка в OpenWRT:   opkg update opkg install suricata Suri Oculus оптимизирован для работы даже на маломощных системах. 2. Настройка Suricata Основной файл конфигурации: /etc/suricata/suricata.yaml  2.1 Настройка вывода событий в Redis Suri Oculus считывает события Suricata напрямую из Redis.Настройте eve-log следующим образом: eve-log: enabled: yes filetype: redis filename: eve.json Это позволяет избавиться от записи в большой файл eve.json и увеличивает скорость обработки событий. 3. Запуск сервисов После установки и настройки Suricata запустите основные службы. 3.1 Redis sudo systemctl enable redissudo systemctl start redis 3.2 Suricata sudo systemctl enable suricatasudo systemctl start suricata  3.3 Daemonmove Используется для обработки доменных списков и IoC: sudo systemctl enable daemonmovesudo systemctl start daemonmove  4. Настройка интерфейсов и capture-моделей Suricata поддерживает несколько режимов захвата трафика. 4.1 AF_PACKET — оптимальный режим   af-packet: — interface: eth0 threads: auto cluster-id: 98 cluster-type: cluster_flow defrag: yes Подходит для IDS и IPS. 4.2 NFQUEUE — IPS режим Используется совместно с iptables/nftables: nfq: mode: repeat batchcount: 20 fail-open: yes Перенаправление трафика: iptables -I FORWARD -j NFQUEUE —queue-num 0  4.3 PCAP — пассивный режим pcap:- interface: eth0 5. Оптимизация производительности Suricata чувствительна к конфигурации.Для улучшения производительности рекомендуется: 5.1 Настроить профили потоков detect-engine:- profile: medium 5.2 Настроить распределение потоков threading:set_cpu_affinity: yes 5.3 Ограничить использование памяти stream:memcap: 256mb 5.4 Отключить ненужные декодеры app-layer:protocols:krb5: nontp: no 5.5 Оптимизация для слабых устройств уменьшить объем логируемых полей отключить TLS fingerprinting отключить шумовые категории правил использовать Redis вместо eve.json 6. Управление правилами Suricata Suricata поддерживает гибкую систему сигнатур.Suri Oculus позволяет управлять ими через интерфейс. 6.1 Подключение файлов правил Рекомендуется следующий блок в suricata.yaml: rule-files: — suricata.rules — additional.rules # — ioc_url.rules # — ioc_ip.rules # — ioc_domain.rules 6.2 Файл additional.rules Файл содержит пользовательские правила Suri Oculus, например: #drop dns $HOME_NET any -> any any (msg:»Oculus Universal DNS Query…»;# dns.query; dataset:isset, universal.blst, type string, load /var/lib/suricata/universal.blst; …) Категории: social porn gambling fakenews universal Эти правила используют обновляемые списки *.blst. 6.3 IoC правила Suri Oculus генерирует файлы: ioc_url.rules ioc_ip.rules ioc_domain.rules Они дополняют сигнатуры Suricata актуальными угрозами. 7. Подключение и настройка Suri Oculus 7.1 Запуск backend сервиса sudo oculus-server Backend отвечает за: управление Suricata работу с Redis обработку IoC API панели управления 7.2 Запуск веб-интерфейса cd /opt/suri-oculus-frontsudo ./suri-oculus-front Фронтенд доступен на: http://IP:9090 7.3 Файл config.js — важный параметр Новый конфигурационный файл: export const backendUrl = ‘http://backend_ip:8080’; Он определяет адрес backend сервера.Без правильного backendUrl интерфейс работать не будет. 7.4 Архитектура взаимодействия Suricata → Redis → Oculus Suricata отправляет eve-log в Redis Daemonmove обновляет списки и помогает парсеру Oculus backend читает данные из Redis Фронтенд отображает события Такой подход обеспечивает: минимальную задержку высокую скорость визуализации низкое потребление ресурсов 8. Проверка работы и диагностика 8.1 Проверка конфигурации Suricata sudo suricata -T 8.2 Проверка правил   suricata —list-rules 8.3 Проверка IDS curl http://testmynids.org/uid/index.html 8.4 Проверка IPS (NFQUEUE) Если правило drop срабатывает — система работает. 8.5 Проверка данных в Oculus Фронтенд должен показывать: alert anomaly dns flow tls drop Заключение Связка Suricata + Suri Oculus представляет собой производительную, гибкую и масштабируемую платформу сетевой безопасности.Suricata обеспечивает обнаружение и блокировку угроз, а Suri Oculus предоставляет мощный интерфейс для управления, анализа логов и работы с интеллектуальными правилами и IoC. При правильной настройке система работает как на мощных серверах, так и на маломощных устройствах. Suricata — официальный сайт = https://suricata.ioДокументация по установке Suricata — https://docs.suricata.io/en/latest/install.htmlПолная документация suricata.yaml — https://docs.suricata.io/en/latest/configuration/suricata-yaml.htmlСправочник по настройке AF_PACKET — https://docs.suricata.io/en/latest/capture-hardware/af-packet.htmlНастройка NFQUEUE для IPS — https://docs.suricata.io/en/latest/capture-hardware/nfqueue.htmlНастройка производительности — https://docs.suricata.io/en/latest/performance/index.htmlРуководство по созданию правил — https://docs.suricata.io/en/latest/rules/ Модули Панель Suricata → https://suri-oculus.tech/suricata-dashboard Консоль управления Suricata → https://suri-oculus.tech/suricata-management-console Модуль ИИ-аналитики → https://suri-oculus.tech/suricata-ai-analysis Аналитика потоков → https://suri-oculus.tech/suricata-flow-analytics Анализ TLS → https://suri-oculus.tech/suricata-tls-analysis Просмотр журналов → https://suri-oculus.tech/suricata-log-viewer Управление правилами → https://suri-oculus.tech/suricata-rules-management Suricata на слабом оборудовании → https://suri-oculus.tech/suricata-on-low-power-hardware

Важное уведомление

Раздел конфигурации Suricata, определяющий файлы правил, должен быть структурирован следующим образом: О файле additional.rulesФайл additional.rules предназначен для размещения пользовательских правил в следующем формате: