ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] JFYI: snortd на нескольких интерфейсах
@ 2003-11-27 13:55 Nick Fedchik
  2003-11-27 15:15 ` [sisyphus] JFYI: snortd ÎÁ ÎÅÓËÏÌØËÉÈ ÉÎÔÅÒÆÅÊÓÁÈ Serhii Hlodin
  0 siblings, 1 reply; 3+ messages in thread
From: Nick Fedchik @ 2003-11-27 13:55 UTC (permalink / raw)
  To: sisyphus

[-- 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 --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [sisyphus] JFYI: snortd ÎÁ ÎÅÓËÏÌØËÉÈ ÉÎÔÅÒÆÅÊÓÁÈ
  2003-11-27 13:55 [sisyphus] JFYI: snortd на нескольких интерфейсах Nick Fedchik
@ 2003-11-27 15:15 ` Serhii Hlodin
  2003-11-27 15:26   ` [sisyphus] JFYI: snortd на нескольких интерфейсах Nick Fedchik
  0 siblings, 1 reply; 3+ messages in thread
From: Serhii Hlodin @ 2003-11-27 15:15 UTC (permalink / raw)
  To: sisyphus

>>>>> "NF" == Nick Fedchik writes:

 Ваши замечания учту. Посмотрю дома. Хорошо?

 NF> Кстати: Snort 2.0.5 is available

 Давно уже лежит в incoming-е.

-- 
With best regards,
                Serhii Hlodin


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [sisyphus] JFYI: snortd на нескольких интерфейсах
  2003-11-27 15:15 ` [sisyphus] JFYI: snortd ÎÁ ÎÅÓËÏÌØËÉÈ ÉÎÔÅÒÆÅÊÓÁÈ Serhii Hlodin
@ 2003-11-27 15:26   ` Nick Fedchik
  0 siblings, 0 replies; 3+ messages in thread
From: Nick Fedchik @ 2003-11-27 15:26 UTC (permalink / raw)
  To: sisyphus

[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 485 bytes --]

В сообщении от Чт 27 Ноя 2003 17:15 Serhii Hlodin написал(a):
> >>>>> "NF" == Nick Fedchik writes:
>
>  Ваши замечания учту. Посмотрю дома. Хорошо?
Ок.
В дополнение: Более одного пробела в параметрах "output database:" - это 
проблема!
Случайно поставил два пробела - отвал с ошибкой :(
Не знаю, почему разработчики snort-а так поступают, имхо сделать скан строки 
по разделению непечатаемыми символами не так уж и сложно...


-- 
Best Regards, Nick Fedchik
http://www.fedchik.org.ua/

[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-11-27 15:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-11-27 13:55 [sisyphus] JFYI: snortd на нескольких интерфейсах Nick Fedchik
2003-11-27 15:15 ` [sisyphus] JFYI: snortd ÎÁ ÎÅÓËÏÌØËÉÈ ÉÎÔÅÒÆÅÊÓÁÈ Serhii Hlodin
2003-11-27 15:26   ` [sisyphus] JFYI: snortd на нескольких интерфейсах Nick Fedchik

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