Как установить и настроить Snort IDS в Linux

Системы обнаружения вторжений (IDS) играют важную роль в защите компьютерных сетей от несанкционированного доступа и потенциальных опасностей в области кибербезопасности. Snort IDS выделяется среди множества доступных IDS как надежное и широко используемое решение с открытым исходным кодом для обнаружения и предотвращения сетевых вторжений. Это руководство покажет вам, как установить и настроить Snort IDS на Linux, обеспечивая вас знаниями, необходимыми для повышения безопасности вашей сети.

Как работает Snort IDS

Snort IDS – это система обнаружения вторжений в сеть, которая отслеживает сетевой трафик, анализирует его на предмет подозрительной активности и генерирует предупреждения о потенциальных угрозах. Как система обнаружения вторжений на основе сигнатур, Snort анализирует сетевой трафик, используя базу данных известных шаблонов атак, известных как правила, для обнаружения вредоносной активности. Snort IDS обнаруживает и предотвращает широкий спектр сетевых атак, включая сканирование портов, DoS атаки и SQL инъекции, и широко известна благодаря своим возможностям анализа трафика в режиме реального времени.

Базовая конфигурация

Перед тем, как приступить к установке Snort IDS, необходимо выполнить базовую конфигурацию. Она включает в себя обновление и модернизацию системы и установку зависимостей, необходимых Snort для эффективной работы.

  1. Обновление и модернизация системы Linux. Для Ubuntu и других систем на базе Debian:
    sudo apt update && apt upgrade -y
  2. Установите зависимости, необходимые для работы Snort IDS:
    sudo apt install -y build-essential autotools-dev libdumbnet-dev libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev cmake liblzma-dev openssl libssl-dev cpputest libsqlite3-dev libtool uuid-dev git autoconf bison flex libcmocka-dev libnetfilter-queue-dev libunwind-dev libmnl-dev ethtool libjemalloc-dev libpcre++-dev
  3. Правильное функционирование Snort требует ручной установки библиотеки сбора данных LibDAQ. Чтобы установить LibDAQ, загрузите файлы с официального сайта, распакуйте архив и перейдите в соответствующую директорию, затем выполните сборку и компиляцию.
    wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
    tar -xzvf libdaq-3.0.11
    cd libdaq-3.0.11
    ./bootstrap
    ./configure
    make
    sudo make install
  4. Последней зависимостью является gperftools. Начните с получения исходных файлов из репозитория GitHub. Распакуйте файлы, перейдите в выбранную директорию и выполните скрипт configure, чтобы начать процесс установки. Затем выполните команды make и make install
    для установки пакета.
    wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
    tar -xvzf gperftools-2.10 && cd gperftools-2.10
    ./configure
    make 
    sudo make install

    Следующим шагом будет установка Snort.

Установка Snort IDS

  1. Скачайте Snort IDS с официального сайта Snort или с помощью wget в терминале:
    wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
  2. Начните распаковывать файл.
    tar -xzvf snort3-3.1.58.0
  3. Перейдите в извлеченный каталог и выполните скрипт конфигурации, подготовьте файлы командой make, затем установите их командой make install.
    cd snort3-3.1.58.0
    ./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
    cd build
    make
    sudo make install
  4. Snort готов к работе в вашей системе. Перед настройкой Snort IDS обновите общую библиотеку. В противном случае, когда вы попытаетесь запустить Snort, вы можете получить ошибку:
    sudo ldconfig

Этот процесс синхронизирует кэш общих библиотек системы с недавно установленными библиотеками и двоичными файлами.

Для проверки Snort, команда snort -V отобразит версию Snort IDS в окне терминала:

Конфигурирование и настройка правил с помощью Snort IDS

Чтобы настроить сетевое окружение системы Linux для взаимодействия с Snort IDS, узнайте имя сетевой карты вашей системы:

nmcli device status

Настройте сетевую карту следующей командой:

sudo ip link set dev interface_name promisc on

Заметьте, что «имя_интерфейса» в команде – это имя карты Ethernet вашей системы.Чтобы избежать обрезания больших сетевых пакетов, отключите Generic Receive Offload (GRO) и Large Receive Offload (LRO) с помощью ethtool:

sudo ethtool -K interface_name gro off lro off

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

snort -c /usr/local/etc/snort/snort.lua

Вы должны получить успешный результат, указывающий на то, что Snort был установлен и настроен в вашей системе. Теперь вы можете экспериментировать с его функциями и конфигурациями, чтобы определить лучшие правила для защиты вашей сети.

Внедрение правил Snort IDS для работы в системе Linux.

Snort считывает наборы правил и конфигурации из определенных каталогов:

sudo mkdir /usr/local/etc/rules
sudo mkdir /usr/local/etc/so_rules/
sudo mkdir /usr/local/etc/lists/
sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist
sudo mkdir /var/log/snort

После создания необходимых каталогов, загрузите нужные правила с сайта Snort:

wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz

Распакуйте файл и скопируйте правила в каталог «/usr/local/etc/rules/»:

tar -xvzf snort3-community-rules
cd snort3-community-rules
cp * /usr/local/etc/rules/

Для запуска Snort с конфигурацией правил, введите следующую команду:

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i wl01 -s 65535 -k none

Настройка Snort IDS в режиме запуска

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

  1. Создайте новый файл службы systemd, выполнив нижеуказанную команду.
    touch /lib/systemd/system/snort.service
  2. Откройте файл с помощью nano в окне терминала и добавьте следующую информацию.
    [Unit]
    Description=Snort Daemon
    After=syslog.target network.target
    [Service]
    Type=simple
    ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k none -l /var/log/snort -D -L pcap -i ens33 
    [Install]
    WantedBy=multi-user.target

  3. Сохраните и выйдите из файла. Включите и запустите скрипт:
    sudo systemctl enable snort.service
    sudo snort start

Snort IDS готов к работе и защите вашей Linux системы. Чтобы найти больше подобных инструментов безопасности с открытым исходным кодом для Linux, перейдите по ссылке.

Мониторинг сетевого трафика с помощью Snort

Мы узнали о Snort и о том, как он работает. Теперь давайте проверим несколько основных принципов использования Snort для мониторинга сетевого трафика и поиска вероятных угроз безопасности.

  1. Чтобы начать использовать Snort для мониторинга сетевого трафика, сначала выберите сетевой интерфейс. Выполните нижеприведенную команду, чтобы узнать имена сетевых интерфейсов, имеющихся в системе.
    ifconfig -a
  2. Запустите Snort с помощью нижеприведенной команды. Это откроет консоль в окне терминала, которая будет активно следить за сетевым интерфейсом и обновлять его в случае обнаружения потенциальных угроз.
    sudo snort -i [Network_Interface] -c /etc/snort/snort.conf -A console

    Здесь в команде сетевой интерфейс – это порт Ethernet, который вы выбрали для мониторинга, «etc/snort/snort.conf» – это местоположение файла конфигурации Snort, а -A – это консоль для отображения предупреждений, генерируемых Snort IDS.
    Таким образом Snort используется для мониторинга угроз безопасности и уязвимых атак. Регулярно обновляйте правила. Snort IDS с обновленными правилами не только обнаружит угрозы безопасности, но и поможет их устранить.

Часто задаваемые вопросы

✅ Как я могу получить и обновить правила Snort?

Правила Snort очень важны для эффективной работы IDS, поскольку они определяют критерии для обнаружения конкретных сетевых вторжений. Вы можете получить правила Snort с официального сайта Snort. Существует три различных типа архивов правил: Community, который доступен бесплатно; Registered, который доступен вам после регистрации в Snort; и Subscription, для которого вы должны подписаться на платный тарифный план Snort, подробно описанный на официальном сайте.

✅ Можно ли внедрить Snort в огромную сеть?

Да, его можно распространить для повышения безопасности сети на несколько систем, используя централизованную систему управления, такую как Security Onion или Snorby.

✅ Подходит ли Snort IDS для малых предприятий или домашних сетей?

Snort IDS – это эффективное решение безопасности, которое может быть полезно для малых предприятий и домашних сетей. Доступность и экономичность системы объясняется ее открытым исходным кодом. Snort Intrusion Detection System (IDS) может быть внедрена как на одной системе, так и на нескольких.

Зарубин Иван Эксперт по Linux и Windows

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

Вдохновлен www.maketecheasier.com

Похожие статьи

Комментарии (0)