入侵檢測系統Snort是一款非常好用的電腦反入侵的軟件,軟件場景主要適用于監視網絡傳輸量的網絡型入侵檢測系統,就是幫助用戶捕捉從外部網絡上下載到本地的數據包,一旦有危險就會發生信息至管理員處。
軟件介紹
Snort為開放源代碼入侵檢測系統軟件,為用來監視網絡傳輸量的網絡型入侵檢測系統。主要工作是捕捉流經網絡的數據包,一旦發現與非法入侵的組合一致,便向管理員發出警告。
系統模式
探器
所謂的嗅探器模式就是snort從網絡上讀出數據包然后顯示在你的控制臺上。首先,我們從最基本的用法入手。如果你只要把TCP/IP包頭信息打印在屏幕上,只需要輸入下面的命令:
./snort -v
使用這個命令將使snort只輸出IP和TCP/UDP/ICMP的包頭信息。如果你要看到應用層的數據,可以使用:
./snort -vd
這條命令使snort在輸出包頭信息的同時顯示包的數據信息。如果你還要顯示數據鏈路層的信息,就使用下面的命令:
./snort -vde
注意這些選項開關還可以分開寫或者任意結合在一塊。例如:下面的命令就和上面最后的一條命令等價:
./snort -d -v –e
數據包記錄器
如果要把所有的包記錄到硬盤上,你需要指定一個日志目錄,snort就會自動記錄數據包:
./snort -dev -l ./log
當然,./log目錄必須存在,否則snort就會報告錯誤信息并退出。當snort在這種模式下運行,它會記錄所有看到的包將其放到一個目錄中,這個目錄以數據包目的主機的IP地址命名,例如:192.168.10.1
如果你只指定了-l命令開關,而沒有設置目錄名,snort有時會使用遠程主機的IP地址作為目錄,有時會使用本地主機IP地址作為目錄名。為了只對本地網絡進行日志,你需要給出本地網絡:
./snort -dev -l ./log -h 192.168.1.0/24
這個命令告訴snort把進入C類網絡192.168.1的所有包的數據鏈路、TCP/IP以及應用層的數據記錄到目錄./log中。
如果你的網絡速度很快,或者你想使日志更加緊湊以便以后的分析,那么應該使用二進制的日志文件格式。所謂的二進制日志文件格式就是tcpdump程序使用的格式。使用下面的命令可以把所有的包記錄到一個單一的二進制文件中:
./snort -l ./log -b
注意此處的命令行和上面的有很大的不同。我們勿需指定本地網絡,因為所有的東西都被記錄到一個單一的文件。你也不必冗余模式或者使用-d、-e功能選項,因為數據包中的所有內容都會被記錄到日志文件中。
你可以使用任何支持tcpdump二進制格式的嗅探器程序從這個文件中讀出數據包,例如: tcpdump或者Ethereal。使用-r功能開關,也能使snort讀出包的數據。snort在所有運行模式下都能夠處理tcpdump格式的文件。例如:如果你想在嗅探器模式下把一個tcpdump格式的二進制文件中的包打印到屏幕上,可以輸入下面的命令:
./snort -dv -r packet.log
在日志包和入侵檢測模式下,通過BPF(BSD Packet Filter)接口,你可以使用許多方式維護日志文件中的數據。例如,你只想從日志文件中提取ICMP包,只需要輸入下面的命令行:
./snort -dvr packet.log icmp
網絡入侵檢測系統
snort最重要的用途還是作為網絡入侵檢測系統(NIDS),使用下面命令行可以啟動這種模式:
./snort -dev -l ./log -h 192.168.1.0/24 -c snort.conf
snort.conf是規則集文件。snort會對每個包和規則集進行匹配,發現這樣的包就采取相應的行動。如果你不指定輸出目錄,snort就輸出到/var/log/snort目錄。
注意:如果你想長期使用snort作為自己的入侵檢測系統,最好不要使用-v選項。因為使用這個選項,使snort向屏幕上輸出一些信息,會大大降低snort的處理速度,從而在向顯示器輸出的過程中丟棄一些包。
此外,在絕大多數情況下,也沒有必要記錄數據鏈路層的包頭,所以-e選項也可以不用:
./snort -d -h 192.168.1.0/24 -l ./log -c snort.conf
這是使用snort作為網絡入侵檢測系統最基本的形式,日志符合規則的包,以ASCII形式保存在有層次的目錄結構中。
- PC官方版
- 安卓官方手機版
- IOS官方手機版