運用Ntop監控網絡流量
網絡流量反映了網絡的運行狀態,是判別網絡運行是否正常的關鍵數據,在實際的網絡中,如果對網絡流量控制得不好或發生網絡擁塞,將會導致網絡吞吐量下降、網絡性能降低。通過流量測量不僅能反映網絡設備(如路由器、交換機等)的工作是否正常,而且能反映出整個網絡運行的資源瓶頸,這樣管理人員就可以根據網絡的運行狀態及時采取故障補救措施和進行相關的業務部署來提高網絡的性能。對網絡進行流量監測分析,可以建立網絡流量基準,通過連接會話數的跟蹤、源/目的地址對分析、TCP流的分析等,能夠及時發現網絡中的異常流量,進行實時告警,從而保障網絡安全。本節將介紹的Ntop便可以提供詳細的網絡流量明細表。
1.Ntop簡介
Ntop是一種監控網絡流量的工具,用NTOP顯示網絡的使用情況比其他一些網管軟件更加直觀、詳細。NTOP甚至可以列出每個節點計算機的網絡帶寬利用率。
2.Ntop主要功能
Ntop主要提供以下一些功能:
①.自動從網絡中識別有用的信息;
②.將截獲的數據包轉換成易于識別的格式;
③.對網絡環境中通信失敗的情況進行分析;
④.探測網絡環境中的通信瓶頸,記錄網絡通信的時間和過程。
Ntop可以通過分析網絡流量來確定網絡上存在的各種問題;也可以用來判斷是否有黑客正在攻擊網絡系統;還可以很方便地顯示出特定的網絡協議、占用大量帶寬的主機、各次通信的目標主機、數據包的發送時間、傳遞數據包的延時等詳細信息。
3. Ntop支持的協議
Ntop比MRTG更容易安裝,如果用手機話費來比喻流量,MRTG便如同提供總費用的電話賬單,而Ntop則是列出每一筆費用的明細一樣。目前市場上可網管型的交換機、路由器都支持SNMP協議,Ntop支持簡單網絡管理協議,所以可以進行網絡流量監控。Ntop幾乎可以監測網絡上的所有協議: TCP/UDP/ICMP、(R)ARP、IPX、Telnet、DLC、Decnet、DHCP-BOOTP、AppleTalk、Netbios、TCP/UDP、FTP、HTTP、DNS、Telnet、SMTP/POP/IMAP、SNMP、NNTP、NFS、X11、SSH和基于P2P技術的協議eDonkey。
4.Ntop支持插件
①.ICMPWATCH:
用于端口檢測很多人都已經知道了可以借助NETSTAT -AN來查看當前的連接與開放的端口,但NETSTAT并不萬能,比如Win2000遭到OOB攻擊的時候,不等NETSTAT就已經死機了。為此,出現了一種特殊的小工具——端口監聽程序。端口監聽并不是一項復雜的技術,但卻能解決一些局部問題。
②.NetFlow:
近年來,很多服務提供商一直使用NetFlow。因為NetFlow在大型廣域網環境里具有伸縮能力,可以幫助支持對等點上的最佳傳輸流,同時可以用來進行建立在單項服務基礎之上的基礎設施最優化評估,解決服務和安全問題方面所表現出來的價值,為服務計費提供基礎。
③.rrdPlugin:
用于生成流量圖。RRD的作者,也是MRTG的作者,RRD可以簡單的說是MRTG的升級版,它比MRTG更靈活,更適合用shell、perl等程序來調用,成生所要的圖片。
④.sFlow:
sFlow(RFC 3176)是基于標準的最新網絡導出協議,能夠解決當前網絡管理人員面臨的很多問題。sFlow已經成為一項線速運行的“永遠在線”技術,可以將sFlow技術嵌入到網絡路由器和交換機 ASIC芯片中。與使用鏡像端口、探針和旁路監測技術的傳統網絡監視解決方案相比,sFlow能夠明顯地降低實施費用,同時可以使面向每一個端口的全企業網絡監視解決方案成為可能。與數據包采樣技術(如RMON)不同,sFlow是一種導出格式,它增加了關于被監視數據包的更多信息,并使用嵌入到網絡設備中的sFlow代理轉發被采樣數據包,因此在功能和性能上都超越了當前使用的RMON、RMON II和NetFlow技術。sFlow技術獨特之處在于它能夠在整個網絡中,以連續實時的方式監視每一個端口,但不需要鏡像監視端口,對整個網絡性能的影響也非常小。
另外,Ntop還允許用戶安裝插件用,以提供對于特定協議下具體統計數據的報告,如NFS和NetBIOS插件。當然,Ntop也可以生成運行它的主機的統計數據,列出開放套接字、接收和發送的數據以及每個過程的相關主機對。
二、Ntop系統的部署
對于共享網絡,只須將連接到共享網絡中的流量采集點的網絡接口置為混雜工作模式,就可實現采集網絡流量數據的功能。與交換網絡相比,網絡發生擁塞時,集線器網絡的可靠性很低,SNMP問詢命令和回應數據包可能發生延遲或丟失,這時候Ntop檢測數據也就不準確了,對于交換網絡的情況,需要交換設備的支持(如具有SPAN端口的交換機)。流量采集主機連接到交換設備的一個端口后,通過交換機的SPAN至(Switched PortAnalyzer)端口把要分析的所有流量鏡像到該采集點上。SPAN在使用中非常靈活,可以監視交換機的單個端口,也可以監視多個端口,還可以對VLAN進行監視。這就使流量異常監測系統具有了很大的靈活性。在一些流量比較大的企業,我們一般選用兩個網卡,一塊網卡作為Ntop專用嗅探網卡,連到核心交換機的鏡像端口,另一塊配上IP地址并開放相應端口(默認是3000,也可以修改),連接交換機的作用是用來登錄Web界面進行管理,Ntop的部署如圖所示。
Ntop沒有自己的捕包工具,它需要一個外部的捕包程序庫:libpcap。Ntop利用libpcap獨立地從物理鏈路上進行捕包,它可以借助libpcap的平臺成為一個真正的與平臺無關的應用程序。它直接從網卡捕包的任務由libpcap承擔,所以我們必須確保Linux系統下正確安裝了libpcap。
三.Ntop安裝配置
Ntop工作時需要使用zlib、gd、libpcap及libpng的函數,安裝前須檢查服務器中是否已經含有下列的軟件:zlib(zlib-1.1.3-xx以上)、gd(gd-1.3.xx以上)、libpng。可以使用RPM來確認:
rpm -qa | grep libpcap
rpm -qa | grep zlib
rpm -qa | grep gd
rpm -qa | grep libpng
如果發現缺少任何一個就需要自行安裝,舉例如下。
1.安裝libpcap
# tar zxvf libpcap-0.9.8.tar.gz
# cd libpcap-0.9.8
#./configure
# make&&make install
2.安裝RRDtool
RRDtool是指Round Robin Database 工具(環狀數據庫)。Round Robin是一種處理定量數據以及當前元素指針的技術。想象一個周邊標有點的圓環,這些點就是時間存儲的位置。從圓心畫一條到圓周的某個點的箭頭,這就是指針。一個圓環上沒有起點和終點,可以一直存儲下去。經過一段時間后,所有可用的位置都會被用過,該循環過程會自動重用原來的位置。這樣,數據集不會增大,并且不需要維護。
#tar -zxvf rrdtool-1.3.1.tar.gz
#export PKG_CONFIG_PATH=/usr/lib/pkgconfig/
#./configure
#make
#make install
3.安裝Ntop
下載ntop安裝包:http://www.nmon.net/packages/rpm/x86_64/ntop/
#rpm -ivh ntop-3.3.10-.x86.rpm
#yum install ntop \\CentOS系統
#apt-get install ntop \\Debian系統
____注意:在Ossim 系統中已經為我們安裝好Ntop軟件,可以直接使用。如果您選擇單獨安裝可以繼續參考以下內容。另外如果您使用Red Hat Linux 、Fedora或CentOS請首先關閉 SELinux功能。
4.建立Ntop用戶并配置權限
#useradd ntop
5.建立Ntop存放數據的目錄
#mkdir -p /var/ntop
#chown -R ntop.ntop /var/ntop
6.復制ntop.conf配置文件
#cp /ntop-3.3.10/ntop.conf.sample /etc/ntop.conf
7.設置管理密碼
在執行ntop之前必須先建立管理員密碼,長度至少5位。使用參數-A建立管理員密碼
#ntop -A
8.Ntop的管理員密碼重置方法
Ntop的用戶密碼文件是經過加密存儲在ntop_pw.db文件中,Ntop用戶密碼存儲位置:
64位版本:/var/lib/ntop_db_64/ntop_pw.db
64位版本需先刪除其密碼文件ntop_pw.db,然后用notp -A 重置管理員密碼后,最后重啟ntop服務就能生效。
#/etc/init.d/ntop restart
另外,注意一個細節,ntop的訪問日志位置在/var/log/ntop/目錄下,它的pcap log在/var/lib/ntop目錄下。
四、應用Ntop
1.啟動Ntop
#/usr/local/bin/ntop -i eth0 -d -L -u ntop -P /var/ntop --use-syslog=daemon
命令行中各項簡要介紹如下。
l -i "eth0":指定監聽網卡。
l -d:后臺執行。
l -L:輸出日志寫入系統日志(/var/log/messages)。
l -u ntop:指定使用Ntop身份執行。
l -P /var/ntop:指定Ntop數據庫的文件位置。
l -use-syslog=daemon:使用系統日志進程。
l -w:使用其他端口,指定ntop使用其他端口,例如執行ntop –w 1900以后,便可以使用http://ip:1900來連接ntop
2.利用Web瀏覽器查看Ntop狀況
Ntop的通訊端口為3000,所以在瀏覽器使用IP:3000進入ntop便可看到ntop歡迎界面
除此之外,Ntop另一個重要功能是探測DDoS類型攻擊,主要是它可以通過分析網路流量來確定網路上存在的各種問題,也可以用來判斷是否有駭客正在攻擊網路系統,還可以很方便地顯示出特定的網路協議、佔用大量頻寬的 主機、各次通信的目標主機、資料包的發送時間、傳遞資料包的延時等詳細訊息。