From: Nick Fedchik <nick@fedchik.org.ua>
To: sisyphus@altlinux.ru
Subject: [sisyphus] JFYI: snortd на нескольких интерфейсах
Date: Thu, 27 Nov 2003 15:55:39 +0200
Message-ID: <200311271555.46572.nick@fedchik.org.ua> (raw)
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 2482 bytes --]
Имеем хост с двумя (более чем одним) интерфейсами Ethernet.
Симптом: При использовании одного файла конфигурации для запускаемых процессов
на каждый интерфейс в файл /var/run/snort_eth1.pid записывался pid от
процесса для интерфейса eth0. Только один процесс snort выполнялся.
Изначально была сделана поспешная (и, как оказалось при разборе проблемы,
неверная) попытка быстрой конфигурации snort для двух интерфейсов:
ADDPARAMS_eth0="-A fast -d -D -c /etc/snort/snort.conf"
ADDPARAMS_eth1="-A fast -d -D -c /etc/snort/snort.conf"
Рекоммендация: вынести инициализацию переменных в отдельный конфигурационный
файл, специфичный для каждого интерфейса. Такой файл может содержать
переменные со специфичными для интерфейса значениями, и включать основной
конфигурационный файл (который как правило - однотипный).
Пример /etc/snort/snort-eth1.conf:
var HOME_NET $eth1_ADDRESS
var EXTERNAL_NET !$HOME_NET
var DNS_SERVERS [192.168.1.2,192.168.1.3]
var SMTP_SERVERS [192.168.1.1,192.168.1.4]
var HTTP_SERVERS [192.168.1.10]
var SQL_SERVERS [192.168.1.11]
var TELNET_SERVERS $HOME_NET
include /etc/snort/snort.conf
Таким образом указываем отдельные конфиг. файлы для каждого интерфейса:
/etc/sysconfig/snort
INTERFACES=eth0,eth1
ADDPARAMS_eth0="-A fast -d -D -I -c /etc/snort/snort-eth0.conf"
ADDPARAMS_eth1="-A fast -d -D -I -c /etc/snort/snort-eth1.conf"
Замечание: я также добавил опцию -I, но это не влияет на проблему.
Что может ввести в заблуждение, так это способ задания переменной
HOME_NET типа ethX_ADDRESS - без явного указания интерфейса опцией -i туда
подставляется первый попавшийся интерфейс (как правило - eth0)
Пример:
Файл /etc/snort/snort-eth1.conf содержит
var HOME_NET $eth1_ADDRESS
Запускаем
snort -T -c /etc/snort/snort-eth1.conf
И наблюдаем:
...
Initializing Network Interface eth0
...
ERROR: Undefined variable name: (/etc/snort/snort-eth1.conf:2): eth1_ADDRESS
Fatal Error, Quitting..
Чего нет в случае
snort -i eth1 -T -c /etc/snort/snort-eth1.conf
Это исправление IMHO можно внести в пакет:
/etc/init.d/snortd
--- snortd.bad 2003-11-11 10:26:21 +0200
+++ snortd 2003-11-27 15:13:56 +0200
@@ -36,6 +36,7 @@
--expect-user snort -- \
snort -u snort -g snort \нужно
-t /var/log/snort \
+ -i $i \
$(eval echo $(echo \$`echo ADDPARAMS_$i`))
RETVAL=$?
if [ $RETVAL != 0 ]; then
Кстати: Snort 2.0.5 is available
--
Best Regards, Nick Fedchik
http://www.fedchik.org.ua/
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next reply other threads:[~2003-11-27 13:55 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-11-27 13:55 Nick Fedchik [this message]
2003-11-27 15:15 ` [sisyphus] JFYI: snortd ÎÁ ÎÅÓËÏÌØËÉÈ ÉÎÔÅÒÆÅÊÓÁÈ Serhii Hlodin
2003-11-27 15:26 ` [sisyphus] JFYI: snortd на нескольких интерфейсах Nick Fedchik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200311271555.46572.nick@fedchik.org.ua \
--to=nick@fedchik.org.ua \
--cc=sisyphus@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
public-inbox-index sisyphus
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sisyphus
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git