快速安裝可視化IDS系統Security Onion
背景:
網上有不少關于snort+barnyard2+base搭建IDS的文章,可是當你花費數天時間,還是無法完全安裝完成時,及時當你安裝完成發現不是你想要的平臺式,時間成本如何計算?
為了節約時間,本節為大家介紹的軟件叫安全洋蔥Security Onion(本文中簡稱:SO),它和OSSIM一樣,是基于Debian Linux的系統,內部集成了很多開源安全工具例如: OSSEC、NIDS、HIDS以及各種監控工具等等,可以讓你在一支煙的功夫完成整個系統建設,下面我們就一起體會一下它如何進行安裝和深層防御的吧。
為了了解這套系統,首先得教小白如何快速安裝這套可用的IDS系統。先要準備實驗用的ISO安裝文件(下載地址:https://sourceforge.net/projects/security-onion/ )。接著進行如下操作:
1.將SO安裝到硬盤 (該步不能省略)
環境:
虛擬機軟件: Vmware workstation 12
分配內存:4G
分配網卡: 1塊
分配磁盤空間: 30G
從SO的iso文件引導系統,選擇live,然后等待啟動到桌面環境,單擊安裝圖標根據提示進行系統安裝。安裝完成重啟系統。
然后在root權限下使用以下命令
- apt-get update && sudo apt-get dist-upgrade (更新安裝的軟件)。
- rule-update
剛裝完系統,會進入系統會啟動XFCE桌面。
圖1
點擊Setup,提示輸入密碼。
輸入當前用戶的登錄口令,你會看到Security Onion Setup的歡迎界面,單擊Yes,Continue!按鈕。
接下來,配置網絡接口。
在這個環節系統會自動優化你的網卡,包括禁用一些有可能干擾監聽的一些功能。更多信息查看,如果此時,選擇No,not right now,那么就會手動配置你的管理和監聽接口。一般我們還是選擇Yes,configure /etc/network/interfaces。
2.選擇管理接口
通常,系統會默認的將第一塊網卡設定為管理接口,如果只有一塊網卡,那么管理接口和監聽接口合二為一。
單擊OK按鈕后,通常需要給網卡指定靜態IP地址。除非你在DHCP中配置了靜態映射,才選擇DHCP自動獲取。
指定IP
點擊OK,然后指定掩碼。
點擊OK,然后設定網關。
點擊OK后設定DNS。
點擊OK后,在彈出設定本地域名的對話框,我們輸入本地域名test.com。
點擊OK后系統給出管理接口的網絡配置清單。
核對無誤后點擊Yes,make changest按鈕,這時系統提示重新啟動。點擊Yes,reboot!
注意:手動修改網絡配置,你可以打開/etc/network/interfaces文件編輯iface eth0 inet static的配置。
編輯完成后重啟網絡服務。
$sudo /etc/init.d/networking restart
如果你是初學者,最好按系統提示重啟服務器。
3.組件安裝
當重啟系統完成之后,我們再進入系統XFCE桌面環境。按圖1中選擇setup,彈出圖2和圖3。
選擇Yes,Continue按鈕后彈出。
我們選擇Yes,skip network configuration,建議初學者選擇快速配置。
點擊OK,繼續。由于SO是使用電子郵件地址作為獨立認證機制,下面輸入你常用電子郵箱,將被Snorby用于生成報警日志。
點擊OK按鈕后,下面需要提供NSM(Network Security Monitoring)組件中Sguil模塊的用戶名,SO會在其他幾款NSM工具中使用它。請務必記住。
實例中設定的用戶名為cgweb。
注:命名規則只能是字母的組合。
輸入OK后,下面要選擇一個字符數字的口令以供讓SO安裝的NSM軟件認證使用。稍后可以通過Sguil和Snorby更改口令。
點擊OK后, 確認口令。
當再次確認口令,點擊OK按鈕后,也就是SO NSM應用程序創建完了憑證,配置腳本會問你,是否想安裝企業日志搜索和歸檔ELSA。
你需要選擇Yes,enable ELSA,ELSA為NSM日志數據提供了一個搜索引擎接口。
此時,SO會提示用戶,準備做好變更,看你是否同意。
我們選擇繼續改變。SO要配置系統的時區,可以使用UTC,然后安裝與其打包在一起的所有NSM應用程序。
接下來系統會自動設置,當設置完成后,你可以在/var/log/nsm/sosetup.log文件看到安裝狀態報告。
當設置到ELSA設置環節可能會對花點時間,大家需要耐心等待,最后設置完成,不必重啟系統,可使用sostat檢查服務運行狀態。
點擊OK,后彈出注意涉及IDS規則管理的內容。
有問題可以訪問下圖的站點
4.檢查安裝狀態
當單機系統完成安裝,應該采取了解安裝狀態,首先打開終端,運行下面命令,查看NSM代理是否在線。
如果你發現有組件沒有啟動成功,可以嘗試sudo service nsm restart命令重啟。
在排除故障時,你還需要驗證傳感器連接到服務器的autossh隧道是否正常。
注意:一個IP只能同時連接一臺SO服務器。
5.Web瀏覽器訪問
檢查通過后,你可以在瀏覽器上輸入剛分配的IP地址,https://192.168.91.228/,會打開如下SO的歡迎界面。
首次用瀏覽器登陸會遇到HTTPS證書不可信的提示,因為它沒有簽名。
當你點擊信任就不會再提示了。
你可以通過這個界面來訪問Snorby NSM應用程序,單擊Snorby連接,彈出如下界面。
界面會顯示你的SO IP地址以及端口444。Snorby會提示你輸入剛才的電子郵件地址,及口令。單擊Welcome,Singn In按鈕登錄系統。這時根據你傳感器部署位置不同以及網絡活躍程度不同,在控制面板上看到不同的流量信息。
報警測試:
你在虛擬機環境下,如果不會滲透測試,哪兒來的攻擊數據包,系統怎么會報警,下面用tcpreplay來向網絡回放一些攻擊包的例子(這些內容是無害的)。
#sudo tcpreplay -ieth0 -M10 /opt/samples/markofu/*.pcap
報警如下圖所示。
如對屏幕下方出現的兩個特定警報感興趣,那么可點擊條目查看到詳情。有比較,才知孰優孰劣,具體分析會在《開源安全運維平臺OSSIM最佳實踐》一書中講解。
6.查看服務器狀態
系統腳本/usr/sbin/nsm可以調研nsm_server、nsm_sensor底層腳本傳遞的選項,進而可以檢查服務器的狀態,輸入以下命令
那么除了status以外還有其他進程控制命令,例如start,stop以及restart
$sudo /usr/sbin/nsm_sensor --status 查看ossec_agent(sguil)狀態
清除傳感器數據
我們先查看sensor名字,然后清除
$sudo /usr/sbin/nsm_sensor_clear --sensor-name=cgweb-virtual-machine-eth0
7.刪除數據的腳本
如果你想一次刪除所有數據,很簡單調用高級腳本/usr/sbin/nsm_all_del即可,它首先會提示用戶確認。
還有一個快速刪除命令:/usr/sbin/nsm_all_del_quick,它相當危險,因為在刪除時不會給出任何提示信息。
8.升級注意事項
首先你需要了解Upgrade與dist-upgrade之間區別是什么。
如果運行upgrade,會得到一組選項,選擇dist-upgrade將會產生另一組徐選項。
- $sudo apt-get upgrade
- $sudo apt-get dist-upgrade

需要注意的是,國內用戶升級會比較慢。更新系統需要在沒有配置系統之前,如果你將系統配置完畢之后,在升級系統,之前的配置文件將被覆蓋。所以一定要在你什么都沒有配置之前做升級工作。
(下回講解分布式IDS安裝與調試)。
9.了解SO數據庫
當你設置好嗅探口,將洋蔥服務器接入網絡后,NSM就開始收集網絡信息。傳感器就會存儲各種數據類型,下面的兩個目錄的路徑和用途大家需要了解。
/nsm :存儲所有日志和完整數據內容。
SO在/nsm/sensor_data/
我們看一個例子:snort.log.1474866755
log后面的數字“1474866755”表示什么意思?他是UNIX時間戳的表示方法,代表了自1970年1月1日以來過去的秒數。
轉換方法:
這個目錄如此重要,那么SO會定期檢查該目錄的可用空間,當達到90%閾值時,會做以下幾件事:
- 腳本會從這個目錄移除舊的完整內容的pcap文件,
- 從/nsm/bro/logs移除舊的Bro日志文件。
- 從/nsm/sensor_data/
/dailylogs/argus/目錄移除舊的argus會話。 - 從/nsm/sensor_data/
snort- 移除舊的Snort Unified2告警文件。
這個腳本位于/usr/sbin/nsm_sensor_clean,cronjob會每小時都調用/usr/sbin/nsm_sensor_clean腳本,當較早的數據刪除,直到磁盤使用率低于90%。
/var/lib/mysql :存儲洋蔥的數據庫。
疑問:
Q:安全洋蔥能阻止入侵嗎?
A:這一點,和OSSIM一樣,不能阻止入侵。
參考:
https://security-onion-solutions.github.io/security-onion/