Suricata – это IDS (Intrusion Detection System) и IPS (Intrusion Prevention System) с открытым исходным кодом, разработанная OSIF (open infosec foundation). Она может отслеживать и изучать сетевой трафик и обрабатывать каждый пакет для обнаружения вредоносной сетевой активности. Вы можете настраивать события в журнале, запускать оповещения и даже отбрасывать трафик при подозрительной сетевой активности.
В этом руководстве мы покажем вам, как установить Suricata IDS на сервер Ubuntu 24.04. Вы установите и настроите Suricata, загрузите сигнатуры и правила ET, а затем запустите Suricata в фоновом режиме как службу systemd.
Установка из исходного кода
В этом разделе вы узнаете, как установить Suricata из исходного кода, скомпилировав его вручную в вашей системе. А перед этим вы установите зависимости пакетов для компиляции Suricata.
Сначала выполните приведенную ниже команду, чтобы обновить индекс пакетов Ubuntu и установить зависимости для сборки. Введите ‘Y‘, чтобы подтвердить установку.
sudo apt update sudo apt install autoconf automake build-essential cargo \ cbindgen libjansson-dev libpcap-dev libcap-ng-dev libmagic-dev liblz4-dev libpcre2-dev libtool \ libyaml-dev make pkg-config rustc zlib1g-dev
Теперь перейдите в раздел ‘/usr/src‘ каталог и выполните следующую команду, чтобы загрузить исходный код Suricata и извлечь его.
cd /usr/src
wget https://www.openinfosecfoundation.org/download/suricata-7.0.6.tar.gz tar -xf suricata-7.0.6.tar.gz
Перейдите в каталог ‘suricata-7.0.6‘ каталог и настройте компиляцию Suricata следующим образом. Таким образом, вы настроите и установите бинарный файл suricata в каталог ‘/usr/bin‘ каталог, конфигурация suricata в ‘/etc/suricata‘, а каталог данных – в ‘/var/lib/suricata‘.
cd suricata-7.0.6/ ./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var
После завершения процесса скопируйте и установите suricata с помощью следующей команды.
sudo make && sudo make install-full
После завершения установки вы увидите следующее:
Наконец, выполните приведенную ниже команду, чтобы найти файл ‘suricata‘ двоичный файл и проверьте его версию.
which suricata suricata --build-info
В следующем выводе видно, что suricata ‘7.0.6‘ установлен по адресу ‘/usr/bin/suricata‘.
Установка через репозиторий PPA
Если вы предпочитаете устанавливать Suricata через APT, вам нужно добавить PPA-репозиторий suricata в систему Ubuntu. Кроме того, убедитесь, что в репозитории ‘software-properties‘ пакет установлен.
Добавьте PPA-репозиторий для suricata, указав следующее:
sudo add-apt-repository ppa:oisf/suricata-stable
Теперь обновите репозиторий индекса пакетов Ubuntu и установите suricata с помощью команды ‘apt‘ команда ниже.
sudo apt update sudo apt install suricata
Введите ‘Y‘, чтобы продолжить установку.
После завершения установки проверьте бинарный файл suricata и его версию с помощью следующей команды.
which suricata suricata --build-info
Ниже показано, что suricata 7.0.6 устанавливается через менеджер пакетов APT.
Наконец, выполните приведенную ниже команду, чтобы включить и остановить ‘suricata‘ служба. Перед настройкой suricata необходимо завершить ее работу.
sudo systemctl enable suricata sudo systemctl stop suricata
Настройка Suricata
В этом разделе вы настроите Suricata на мониторинг сетевого интерфейса. Suricata будет перехватывать вредоносный трафик на целевом интерфейсе.
Откройте стандартную конфигурацию Suricata ‘/etc/suricata/suricata.yaml‘ используя ‘nano‘ редактор.
sudo nano /etc/suricata/suricata.yaml
Если вы используете локальную сеть, добавьте подсеть домашней сети в ‘HOME_NET‘ и ‘ВНЕШНЯЯ_СЕТЬ‘ переменные.
HOME_NET: "[192.168.5.0/24]" ... EXTERNAL_NET: "!$HOME_NET"
Внутри ‘af-packet‘ раздел, измените значение по умолчанию ‘интерфейс‘ на целевой интерфейс. В этом примере мы будем отслеживать интерфейс ‘enp0s3‘ с suricata.
af-packet: - interface: enp0s3
Добавьте ‘detect-engine‘ с опцией ‘rule-reload: true‘, чтобы включить перезагрузку правил в реальном времени.
detect-engine: - rule-reload: true
После этого сохраните файл и выйдите из редактора.
Обновление наборов правил
Перед запуском и работой Suricata необходимо загрузить и обновить сигнатуры и правила suricata. Это можно сделать с помощью командной утилиты ‘suricata-update’.
Запустите команду ‘suricata-update‘ команда ниже для загрузки и обновления ET-правил suricata. Суриката не будет запускаться, если правила ET отсутствуют.
sudo suricata-update
Правила suricata записываются в файл ‘/var/lib/suricata/suricata.rules‘ файл, как показано ниже:
Вы можете проверить источники правил с помощью следующей команды:
sudo suricata-update list-sources
Запуск suricata
Теперь, когда вы настроили Suricata, загрузили и обновили правила ET, вам предстоит протестировать правила suricata, а затем запустить и проверить службу ‘suricata’.
Чтобы протестировать правила suricata, запустите команду ‘suricata‘ команду ниже. Это позволит обработать доступные правила в пределах ‘/var/wlib/suricata/suricata.rules‘ файл.
sudo suricata -T -c /etc/suricata/suricata.yaml -v
Если ошибки нет, вы получите на выходе ‘suricata: Предоставленная конфигурация была успешно загружена.‘
Теперь выполните приведенную ниже команду, чтобы запустить службу ‘suricata’ в фоновом режиме и проверить ее.
sudo systemctl start suricata sudo systemctl status suricata
В следующем выводе вы можете увидеть, что служба ‘suricata‘ служба запущена.
Заключение
Поздравляем! Вы завершили установку Suricata IDS на сервер Ubuntu 24.04. Вы узнали о двух способах установки Suricata: компиляция вручную из исходного кода и с помощью менеджера пакетов APT. Вы также узнали, как настраивать Suricata, обновлять сигнатуры и правила Suricata и тестировать правила Suricata.