線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2537
推到 Plurk!
推到 Facebook!

Snort - 輕型的IDS工具

 
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-01 20:57:12 IP:218.175.xxx.xxx 未訂閱
技術文章: Snort - 輕型的IDS工具    http://www.linuxhall.org/modules.php?name=News&file=article&sid=172    此文章由 pango 發表於3月27日 (星期六) 上午07:35  
      
IDS (Intrusion Detection System),LinuxHall在數期前介紹另一個Kernel Level的IDS工具 - LIDS,Snort 與 LIDS都同屬是IDS的工具,但是,所負責的工作卻不盡相同。IDS所做的是紀錄有關任何攻擊及如Port Scan等,並即時作出報告,以使管理員能作出相對應的防備工作。        以下是Snort 與 LIDS 的長短處:     表一: 安裝 設定 易用  網絡保安 系統保安  網絡偵測  工具支援 
LIDS  難 難  難  一般  很強  弱  沒有 
Snort  很易  易  很易 沒有 沒有 很強 強     注: 排名次序分別為 ( 很易, 易, 一般, 難, 很難) 及 (很強, 強, 一般, 弱, 沒有)     由表一中得到的比較,LIDS與Snort是負責兩個不同方向的工作,Snort主要是用作偵測的,如果兩者一併使用,所得到的效果會是很好,由於以前已經介紹過LIDS,故今次向大家介紹Snort,一個很強的偵測系統。     如何取得及安裝    在本文撰寫時,Snort的最新版本為1.7,您可以到以下網址下載Snort 1.7。     http://www.snort.org/Files/snort-1.7.tar.gz
http://www.snort.org/Files/Current/snortrules.tar.gz     或者先簡單的講解Snort的偵測方法,Snort執行後,會不斷的聽取來自網絡的各個IP包件,然後依照一些"Rules"與這些包件比較,一旦發現如果某些包件的內容與包件的內容相同,則會被分類,或者如果該包件是攻擊類,則會立即報告出來,所以,要使您的Snort可以偵測最新及最準的攻擊等,您必須要使用最新的Ruleset,所以您需要另外的下載新Ruleset。     Snort 是需要libpcap程式庫,如果您沒有安裝,您亦可以從Snort網站或是Linux CD中找到。此外,您亦可以使用如OpenSSL或是MySQL作為Snort執行的支援。安裝方法:     # tar zxf snort-1.7.tar.gz
# cd snort-1.7
# ./configure --enable-flexresp --with-mysql=/usr/local --with-openssl=/usr/local/openssl
# make; make install     設定及啟動    我們可以把Snort運作在chroot的環境中,設定也是很簡單,首先,我們可以選定一個有足夠位置方置Snort的Log訊息的地方,如果您會定期檢查及清除Log檔案,您可以把Snort的chroot環境放在/home/snort中,然後所需的是一個用者,執行以下的指令新增Snort這個用者:     # groupadd snort
# useradd -g "snort" -d "/home/snort" -s "/nonexists" -c "Snort User" snort
# mkdir /home/snort
# chown snort.snort /home/snort     然後,把snortrules.tar.gz這個檔案解歷在/home/snort中,解壓了snortrules的包件後,在/home/snort內會有兩種的檔案,以"rules"為檔案伸廷的就是Snort使用的Ruleset,這些Ruleset就是供Snort用作偵測任何網絡反應的基礎。而另一個檔案即是"snort.conf",這是Snort的設定檔,我們不用去重新設計Snort的Ruleset檔,只需要設定snort.conf便可以。     在 snort.conf 中,我們只需要修改數個地方便可以執行 Snort,以下是可能需要修改的地方:     - var HOME_NET
這是您的網絡或是主機的 IP,例如您只是得一台伺服器,您可以只輸入伺服器的 IP 地址,如果您的機囂有兩個以上的 IP,您可以使用這個方法:     var HOME_NET [123.45.67.89,123.45.67.90]
或是
var HOME_NET 123.45.67.0/24     -var SMTP [IP.Address]
設定您的 SMTP 伺服器位置,如果與 HOME_NET 中的不同,您只需把 $HOME_NET 移除,並加其您指定 SMTP 機器的IP便可以。     - var HTTP_SERVERS
那一台為 HTTP 伺服器,與 SMTP 中的設定相同,如成為 Web Server 的不是 HOME_NET 機器,可以指定給其他的 IP。     - var DNS_SERVERS
設定您會使用 DNS 的IP地址,並且您需要 Uncomment 以下一行:
preprocessor portscan-ignorehosts: $DNS_SERVERS     這可以防止因為 DNS 的 Lookup 而紀錄無謂的 PortScan 資料。     最後是有關紀錄部份的資料,剛才我們在編譯Snort時加進了"MySQL"的支援,為了使用 MySQL 紀錄資料,先要在 MySQL中建立 Snort 會使用的 Databases、用者名稱及密碼,執行以下指令:     # echo "CREATE DATABASE snort;" | mysql -u root -p
# grant INSERT,SELECT on snort.* to snort@localhost
然後在 Snort 的源始碼內找尋 "contrib/create_mysql",再封行以下指令建立 Tables
# mysql -u root -p < create_mysql     完成後,別忘記在 snort.conf 中也要開動 MySQL 資料庫的支援,簡單地 Uncomment 以下數行:      ruletype redalert
 {
   type alert
   output alert_syslog: LOG_AUTH LOG_ALERT
   output database: log, mysql, user=snort dbname=snort host=localhost
 }    output database: log, mysql, user=snort dbname=snort host=localhost        最後的 - 執行    先是 cd 進入 /home/snort 內,然後打入這個指令:     /home/snort # snort -u snort -t /home/snort -c /home/snort/snort.conf &     -u 功能是使 snort 由 "snort" 這個用者執行,進入 chroot 的用者環境
-t 設定 Snort chroot 的目錄,提高一定的安全性
-c 指定使用的指定檔案
& 只是在背景中執行吧  :-)     結語    Snort 的設定與安裝都是很簡單,儘管 Snort 所做的不外是紀錄及提供偵測,可是這個工作卻不可以忽視,很多公司都有設定防火牆,而防火牆所做的是幫您防止多數的攻擊,加上使用 Snort 的強大IDS功能,網絡管理員可以即隨時知道一切 Cracker、Lamer 對公司網絡的攻擊,而同時可以改變防火牆的Rules,阻止外間而來的攻擊,這是單一防火牆不能為的。     作者:Shell Hung
 
台灣災難都是事後算帳 無人飛行載具(Unmanned Aerial Vehicle,UAV)為什麼沒大量應用於救災行列 絲絲有2種 .net有很多種 一種治眼睛是MS 另一種治腦筋是Borland
系統時間:2024-11-21 18:51:55
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!