對於網絡安全而言入侵檢測是一件非常重要的事。入侵檢測系統(IDS)用於檢測網絡中非法與惡意的請求。Snort是一款知名的開源的入侵檢測系統。其 Web界面(Snorby)可以用於更好地分析警告。Snort使用iptables/pf防火牆來作為入侵檢測系統。本篇中,我們會安裝並配置一個開源的入侵檢測系統snort。
snort所使用的數據采集庫(DAQ)用於一個調用包捕獲庫的抽象層。這個在snort上就有。下載過程如下截圖所示。
downloading_daq
解壓並運行./configure、make、make install來安裝DAQ。然而,DAQ要求其他的工具,因此,./configure腳本會生成下面的錯誤。
flex和bison錯誤
flexandbison_error
libpcap錯誤
libpcap error
因此在安裝DAQ之前先安裝flex/bison和libcap。
install_flex
如下所示安裝libpcap開發庫
libpcap-dev installation
安裝完必要的工具後,再次運行./configure腳本,將會顯示下面的輸出。
without_error_configure
make和make install 命令的結果如下所示。
make install
make
成功安裝DAQ之後,我們現在安裝snort。如下圖使用wget下載它。
downloading_snort
使用下面的命令解壓安裝包。
#tar -xvzf snort-2.9.7.3.tar.gz
snort_extraction
創建安裝目錄並在腳本中設置prefix參數。同樣也建議啟用包性能監控(PPM)的sourcefire標志。
#mkdir /usr/local/snort
#./configure --prefix=/usr/local/snort/ --enable-sourcefire
snort_installation
配置腳本會由於缺少libpcre-dev、libdumbnet-dev 和zlib開發庫而報錯。
配置腳本由於缺少libpcre庫報錯。
pcre-error
配置腳本由於缺少dnet(libdumbnet)庫而報錯。
libdnt error
配置腳本由於缺少zlib庫而報錯
zlib error
如下所示,安裝所有需要的開發庫。
# aptitude install libpcre3-dev
libpcre3-dev install
# aptitude install libdumbnet-dev
libdumnet-dev installation
# aptitude install zlib1g-dev
zlibg-dev installation
安裝完snort需要的庫之後,再次運行配置腳本就不會報錯了。
運行make和make install命令在/usr/local/snort目錄下完成安裝。
# make
make snort
# make install
make install snort
最後,從/usr/local/snort/bin中運行snort。現在它對eth0的所有流量都處在promisc模式(包轉儲模式)。
snort running
如下圖所示snort轉儲流量。
traffic
從源碼安裝的snort還需要設置規則和配置,因此我們需要復制規則和配置到/etc/snort下面。我們已經創建了單獨的bash腳本來用於設置規則和配置。它會設置下面這些snort設置。
#!/bin/bash#
# snort源代碼的路徑
snort_src="/home/test/Downloads/snort-2.9.7.3"
echo "adding group and user for snort..."
groupadd snort &>/dev/null
useradd snort -r -s /sbin/nologin -d /var/log/snort -c snort_idps -g snort &>/dev/null#snort configuration
echo "Configuring snort..."mkdir -p /etc/snort
mkdir -p /etc/snort/rules
touch /etc/snort/rules/black_list.rules
touch /etc/snort/rules/white_list.rules
touch /etc/snort/rules/local.rules
mkdir /etc/snort/preproc_rules
mkdir /var/log/snort
mkdir -p /usr/local/lib/snort_dynamicrules
chmod -R 775/etc/snort
chmod -R 775/var/log/snort
chmod -R 775/usr/local/lib/snort_dynamicrules
chown -R snort:snort /etc/snort
chown -R snort:snort /var/log/snort
chown -R snort:snort /usr/local/lib/snort_dynamicrules
###copy configuration and rules from etc directory under source code of snort
echo "copying from snort source to /etc/snort ....."
echo $snort_src
echo "-------------"
cp $snort_src/etc/*.conf* /etc/snort
cp $snort_src/etc/*.map /etc/snort##enable rules
sed -i 's/include \$RULE\_PATH/#include \$RULE\_PATH/' /etc/snort/snort.conf
echo "---DONE---"
改變腳本中的snort源目錄路徑並運行。下面是成功的輸出。
running script
上面的腳本從snort源中復制下面的文件和文件夾到/etc/snort配置文件中
files copied
snort的配置非常復雜,要讓IDS能正常工作需要進行下面必要的修改。
ipvar HOME_NET 192.168.1.0/24# LAN side
ipvar EXTERNAL_NET !$HOME_NET # WAN side
veriable set
var RULE_PATH /etc/snort/rules # snort signature path
var SO_RULE_PATH /etc/snort/so_rules #rules in shared libraries
var PREPROC_RULE_PATH /etc/snort/preproc_rules # Preproces path
var WHITE_LIST_PATH /etc/snort/rules # dont scan
var BLACK_LIST_PATH /etc/snort/rules # Must scan
main path
include $RULE_PATH/local.rules # file for custom rules
移除ftp.rules、exploit.rules前面的注釋符號(#)。
path rules
現在下載社區規則並解壓到/etc/snort/rules。啟用snort.conf中的社區及緊急威脅規則。
wget_rules
community rules
進行了上面的更改後,運行下面的命令來檢驗配置文件。
# snort -T -c /etc/snort/snort.conf
snort running
本篇中,我們關注了開源IDPS系統snort在Ubuntu上的安裝和配置。通常它用於監控事件,然而它可以被配置成用於網絡保護的在線模式。snort規則可以在離線模式中可以使用pcap捕獲文件進行測試和分析
相關閱讀:
Snort 中文手冊 http://www.linuxidc.com/Linux/2013-11/92265.htm
Snort + Base 入侵檢測配置 http://www.linuxidc.com/Linux/2013-02/79805.htm
Ubuntu 12.04下安裝Snort詳解 http://www.linuxidc.com/Linux/2013-01/78554.htm
Snort企業部署實戰 http://www.linuxidc.com/Linux/2012-08/68946.htm
Snort+base搭建IDS入侵檢測系統 http://www.linuxidc.com/Linux/2012-08/67865.htm
Linux平台Snort入侵檢測系統實戰指南 http://www.linuxidc.com/Linux/2012-08/67048.htm
Ubuntu下Snort從編譯、安裝到調試全過程 http://www.linuxidc.com/Linux/2011-09/44157.htm
Snort 的詳細介紹:請點這裡
Snort 的下載地址:請點這裡
via: http://linoxide.com/security/install-snort-usage-ubuntu-15-04/
作者:nido 譯者:geekpi 校對:wxy
本文由 LCTT 原創翻譯,Linux中國 榮譽推出