Snort
1.9 Miscellaneous
1.9.1 Running Snort as a Daemon
如果你想讓Snort作為守護(hù)程序運(yùn)行,你可以在最后加上 -D 選項(xiàng)。清注意如果你想通過(guò)發(fā)送一個(gè) SIGHUP 信號(hào)到守護(hù)程序重啟Snort,必須指定啟動(dòng)Snort的絕對(duì)路徑,例如:
/usr/local/bin/snort -d -h 192.168.1.0/24
-l /var/log/snortlogs -c /usr/local/etc/snort.conf -s -D
出于安全性考慮,不支持相對(duì)路徑。
Snort PID File
當(dāng)Snort作為守護(hù)程序(daemon)運(yùn)行,守護(hù)程序在log目錄會(huì)產(chǎn)生一個(gè)PID文件。 在Snort 2.6版本中加入 --pid-path 命令行選項(xiàng) ,可以指定Snort PID文件生成目錄。
此外,--create-pidfile 選項(xiàng)可以用來(lái)強(qiáng)制生成PID文件,即使沒(méi)有以守護(hù)程序模式運(yùn)行。
PID文件將會(huì)鎖定來(lái)阻止其他snort進(jìn)程啟動(dòng)。使用 --nolock-pidfile 選項(xiàng)取消鎖定PID文件。
如果不希望在PID文件中包括接口名(interface name),使用 --no-interface-pidfile 選項(xiàng)。
1.9.2 Running in Rule Stub Creation Mode
如果需要將分享的對(duì)象規(guī)則村到一個(gè)目錄,必須使用 -dump-dynamic-rules 命令行選項(xiàng)。這些規(guī)則儲(chǔ)存文件(stub files)經(jīng)常和分享的對(duì)象規(guī)則(shared object rules)連在一起。可以使用絕對(duì)路徑和相對(duì)路徑。
/usr/local/bin/snort -c /usr/local/etc/snort.conf
--dump-dynamic-rules=/tmp
路徑也可以在 snort.conf 中配置:
config dump-dynamic-rules-path: /tmp/sorules
通過(guò)命令行配置的目錄優(yōu)先級(jí)高于配置文件:
/usr/local/bin/snort -c /usr/local/etc/snort.conf
--dump-dynamic-rules
snort.conf:
config dump-dynamic-rules-path: /tmp/sorules
在上述方案中會(huì)將轉(zhuǎn)儲(chǔ)目錄設(shè)為 /tmp/sorules 。
1.9.3 Obfuscating IP Address Printouts
如果需要發(fā)送包日志到公共的 mailing lists,也許會(huì)用到 -O 選項(xiàng)。這個(gè)選項(xiàng)會(huì)混淆輸出的IP地址。也可以組合使用 -O 和 -h ,這樣只會(huì)混淆家庭網(wǎng)絡(luò)(home network)的主機(jī)的IP地址。例如,你可以使用以下命令從日志文件中讀取并且輸出到屏幕,混淆 192.168.1.0/24 網(wǎng)段的ip地址。
./snort -d -v -r snort.log -O -h 192.168.1.0/24
1.9.4 Specifying Multiple-Instance Identifiers
在Snort v2.4 中加入了 -G 命令行選項(xiàng)。可以給事件日志指定一個(gè)實(shí)例的標(biāo)識(shí)符。這個(gè)選項(xiàng)可以在snort運(yùn)行多實(shí)例(multiple instances)使用,可以在不同的CPU上或者一個(gè)CPU上不同的接口使用。每個(gè)Snort實(shí)例都會(huì)使用指定的值去生成唯一的事件ID。用戶可以指定一個(gè)十進(jìn)制值 -G 1 或者十六進(jìn)制值 -G 0x11。同時(shí)支持通過(guò)長(zhǎng)選項(xiàng) --logid。
1.9.5 Snort Modes
Snort 可以運(yùn)行在3中不同的模式: tap(passive), inline, inline-test. Snort的策略也可以用于這三種模式。
Explanation of Modes
Inline
當(dāng)Snort工作在Inline模式,Snort作為IPS運(yùn)行,允許觸發(fā)drop規(guī)則。Snort可以通過(guò)命令行 -Q 選項(xiàng)和配置文件選項(xiàng) policy_modes 工作inline模式:
snort -Q
config policy_mode:inline
Passive
當(dāng)Snort工作在Passive模式,Snort作為IDS運(yùn)行,drop規(guī)則沒(méi)有加載(不使用 -treat-drop-as-alert的情況下)。Snort可以通過(guò)配置文件選項(xiàng) policy mode 工作passive模式:
config policy_mode:tap
Inline-Test
Inline-test模式會(huì)模擬Snort的inline模式,允許在不影響流量的情況下評(píng)估inline行為。drop規(guī)則會(huì)被加載而且將會(huì)觸發(fā)為 Wdrop(Would Drop) 告警。Snort 可以用命令行選項(xiàng) –enable-inline-test 或者配置文件選項(xiàng) policy_modes 工作inline-test模式:
snort --enable-inline-test
config policy_mode:inline_test
注意:
--enable-inline-test不可以和 -Q 一起使用。
不同模式的規(guī)則選項(xiàng)行為:
不同模式的規(guī)則動(dòng)作行為:
1.10 Control socket
Snort可以配置提供一個(gè)可以被用來(lái)發(fā)命令到運(yùn)行中的進(jìn)程的Unix socket。必須在build時(shí)使用 --enable-control-socket 選項(xiàng)。目前只支持 linux 。
Snort可以使用命令行選項(xiàng) --cs-dir <path> 和配置文件選項(xiàng) cs_dir 配置:
snort --cs-dir <path>
config cs_dir:<path>
<path> 指定snort生成socket的目錄。如果使用相對(duì)路徑,是相對(duì)pid的路徑,如果沒(méi)有指定pid路徑,就是相對(duì)當(dāng)前目錄的路徑。
用 --enable-control-socket build后,在snort的bin目錄下會(huì)增加 snort control 命令。
1.11 Configure signal value
在一些其他的系統(tǒng)中,snort用的一些信號(hào)也被其他的函數(shù)使用了。為了避免沖突,用戶可以通過(guò) ./configure 選項(xiàng)改變默認(rèn)的信號(hào)值。
以下信號(hào)可以改變:
SIGNAL SNORT RELOAD
SIGNAL SNORT DUMP STATS
SIGNAL SNORT ROTATE STATS
SIGNAL SNORT READ ATTR TBL
語(yǔ)法:
./configure SIGNAL_SNORT_RELOAD=<value/name> SIGNAL_SNORT_DUMP_STATS=<value/name>
SIGNAL_SNORT_READ_ATTR_TBL=<value/name> SIGNAL_SNORT_ROTATE_STATS=<value/name>
可以將這些信號(hào)改為用戶定義的值或者系統(tǒng)中已知的信號(hào)名。下面這個(gè)例子是將 rotate stats 信號(hào)改為 31 和 重載 表屬性信號(hào) SIGUSR2 :
./configure SIGNAL_SNORT_ROTATE_STATS=31 SIGNAL_SNORT_READ_ATTR_TBL=SIGUSR2
如果相同的信號(hào)被指定多次警告,將會(huì)在snort初始化時(shí)記錄。如果一個(gè)信號(hào)處理不能安裝,將會(huì)記錄一個(gè)警告而且需要修復(fù),否則將會(huì)失去功能。
Snort中用到的信號(hào):
總結(jié)
- 上一篇: Metric类型
- 下一篇: 威能f28故障怎样排除