Snort: 5 шагов для установки и настройки Snort в Linux
Snort — это бесплатная легкая система обнаружения вторжений в сеть для UNIX и Windows.
В этой статье мы рассмотрим, как установить snort из исходного кода, написать правила и выполнить базовое тестирование.
1. Скачать и извлечь Snort
Загрузите последнюю бесплатную версию с веб-сайта snort . Извлеките исходный код snort в каталог /usr/src, как показано ниже.
# cd /usr/src # wget -O snort-2.8.6.1.tar.gz http://www.snort.org/downloads/116 # tar xvzf snort-2.8.6.1.tar.gz
2. Установите Snort
Перед установкой snort убедитесь, что у вас есть пакеты dev для libpcap и libpcre.
# apt-cache policy libpcap0.8-dev libpcap0.8-dev: Installed: 1.0.0-2ubuntu1 Candidate: 1.0.0-2ubuntu1 # apt-cache policy libpcre3-dev libpcre3-dev: Installed: 7.8-3 Candidate: 7.8-3
Следуйте инструкциям ниже, чтобы установить snort.
# cd snort-2.8.6.1 # ./configure # make # make install
3. Проверьте установку Snort
Проверьте установку, как показано ниже.
# snort --version ,,_ -*> Snort! <*- o" )~ Version 2.8.6.1 (Build 39) '''' By Martin Roesch & The Snort Team: http://www.snort.org/snort/snort-team Copyright (C) 1998-2010 Sourcefire, Inc., et al. Using PCRE version: 7.8 2008-09-05
4. Создайте необходимые файлы и каталог
Вы должны создать файл конфигурации, файл правил и каталог журналов.
Создайте следующие каталоги:
# mkdir /etc/snort # mkdir /etc/snort/rules # mkdir /var/log/snort
Создайте следующие файлы snort.conf и icmp.rules:
# cat /etc/snort/snort.conf include /etc/snort/rules/icmp.rules # cat /etc/snort/rules/icmp.rules alert icmp any any -> any any (msg:"ICMP Packet"; sid:477; rev:3;)
Приведенное выше основное правило предупреждает о наличии ICMP-пакета (ping).
Ниже приводится структура предупреждения:
<Rule Actions> <Protocol> <Source IP Address> <Source Port> <Direction Operator> <Destination IP Address> <Destination > (rule options)
Structure | Example |
---|---|
Rule Actions | alert |
Protocol | icmp |
Source IP Address | any |
Source Port | any |
Direction Operator | -> |
Destination IP Address | any |
Destination Port | any |
(rule options) | (msg:”ICMP Packet”; sid:477; rev:3;) |
5. Выполните snort
Выполните snort из командной строки, как указано ниже.
# snort -c /etc/snort/snort.conf -l /var/log/snort/
Попробуйте пропинговать IP с вашего компьютера, чтобы проверить наше правило пинга. Ниже приведен пример предупреждения snort для этого правила ICMP.
# head /var/log/snort/alert [**] [1:477:3] ICMP Packet [**] [Priority: 0] 07/27-20:41:57.230345 > l/l len: 0 l/l type: 0x200 0:0:0:0:0:0 pkt type:0x4 proto: 0x800 len:0x64 209.85.231.102 -> 209.85.231.104 ICMP TTL:64 TOS:0x0 ID:0 IpLen:20 DgmLen:84 DF Type:8 Code:0 ID:24905 Seq:1 ECHO
Оповещение Объяснение
Пара строк добавляется для каждого предупреждения, которое включает в себя следующее:
- Сообщение печатается в первой строке.
- Исходный IP
- IP-адрес назначения
- Тип пакета и информация заголовка.
Если у вас другой интерфейс для сетевого подключения, используйте опцию -dev -i. В этом примере мой сетевой интерфейс ppp0.
# snort -dev -i ppp0 -c /etc/snort/snort.conf -l /var/log/snort/
Выполните snort как Демон
Добавьте опцию -D для запуска snort в качестве демона.
# snort -D -c /etc/snort/snort.conf -l /var/log/snort/
Дополнительная информация Snort
- Файл конфигурации по умолчанию будет доступен по адресу snort-2.8.6.1 /etc/snort.conf
- Правила по умолчанию можно скачать с: http://www.snort.org/snort-rules