自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux網(wǎng)絡(luò)流量的安全管理方法

系統(tǒng) Linux
本篇報(bào)道主要為了告訴大家Linux網(wǎng)絡(luò)流量的安全管理的方法,以便大家更安全更有效的對(duì)網(wǎng)絡(luò)流量進(jìn)行管理。

相信大家對(duì)目前Linux網(wǎng)絡(luò)流量的管理方法都有所了解了,并且希望找到一個(gè)更安全更有效的方法,今天在這里我們就像大家介紹一個(gè)更安全更有效的Linux網(wǎng)絡(luò)流量安全管理方法,希望對(duì)大家有用。

網(wǎng)絡(luò)流量捕捉:圖形化工具Wireshark

1、Wireshark簡(jiǎn)介

Ethereal是一個(gè)開(kāi)放源碼的Linux網(wǎng)絡(luò)流量分析系統(tǒng),也是目前最好的開(kāi)放源碼的網(wǎng)絡(luò)協(xié)議分析器,支持Linux和windows平臺(tái)。Ethereal起初由Gerald Combs開(kāi)發(fā),隨后由一個(gè)松散的etheral團(tuán)隊(duì)組織進(jìn)行維護(hù)開(kāi)發(fā)。它目前所提供的強(qiáng)大的協(xié)議分析功能完全可以媲美商業(yè)的Linux網(wǎng)絡(luò)流量分析系統(tǒng),自從1998年發(fā)布最早的0.2版本至今,大量的志愿者為ethereal添加新的協(xié)議解析器,如今ethereal已經(jīng)支持五百多種協(xié)議解析。另外,網(wǎng)絡(luò)分析系統(tǒng)首先依賴于一套捕捉網(wǎng)絡(luò)數(shù)據(jù)包的函數(shù)庫(kù)。這套函數(shù)庫(kù)工作在網(wǎng)絡(luò)分析系統(tǒng)模塊的最底層。作用是從網(wǎng)卡取得數(shù)據(jù)包或者根據(jù)過(guò)濾規(guī)則取出數(shù)據(jù)包的子集,再轉(zhuǎn)交給上層分析模塊。從協(xié)議上說(shuō),這套函數(shù)庫(kù)將一個(gè)數(shù)據(jù)包從鏈路層接收,至少將其還原至傳輸層以上,以供上層分析。6月8號(hào),Ethereal的作者Gerald Coombs宣布了離開(kāi)NIS的消息,因而Ethereal現(xiàn)改名為Wireshark。

Linux網(wǎng)絡(luò)流量分析系統(tǒng)首先依賴于一套捕捉網(wǎng)絡(luò)數(shù)據(jù)包的函數(shù)庫(kù)。這套函數(shù)庫(kù)工作在在網(wǎng)絡(luò)分析系統(tǒng)模塊的最底層。作用是從網(wǎng)卡取得數(shù)據(jù)包或者根據(jù)過(guò)濾規(guī)則取出數(shù)據(jù)包的子集,再轉(zhuǎn)交給上層分析模塊。從協(xié)議上說(shuō),這套函數(shù)庫(kù)將一個(gè)數(shù)據(jù)包從鏈路層接收,至少將其還原至傳輸層以上,以供上層分析。

在Linux系統(tǒng)中,1992年Lawrence Berkeley Lab的Steven McCanne和Van Jacobson提出了包過(guò)濾器的一種的實(shí)現(xiàn),BPF(BSD Packet Filter)。Libpcap是一個(gè)基于BPF的開(kāi)放源碼的捕包函數(shù)庫(kù)。現(xiàn)有的大部分Linux捕包系統(tǒng)都是基于這套函數(shù)庫(kù)或者是在它基礎(chǔ)上做一些針對(duì)性的改進(jìn)。在window系統(tǒng)中,意大利人Fulvio Risso和Loris Degioanni提出并實(shí)現(xiàn)了Winpcap函數(shù)庫(kù),作者稱之為NPF。由于NPF的主要思想就是來(lái)源于BPF,它的設(shè)計(jì)目標(biāo)就是為windows系統(tǒng)提供一個(gè)功能強(qiáng)大的開(kāi)發(fā)式數(shù)據(jù)包捕獲平臺(tái),希望在Linux系統(tǒng)中的網(wǎng)絡(luò)分析工具經(jīng)過(guò)簡(jiǎn)單編譯以后也可以移植到windows中,因此這兩種捕包架構(gòu)是非常現(xiàn)實(shí)的。就實(shí)現(xiàn)來(lái)說(shuō)提供的函數(shù)調(diào)用接口也是一致的。Ethereal網(wǎng)絡(luò)分析系統(tǒng)也需要一個(gè)底層的抓包平臺(tái),在Linux中是采用Libpcap函數(shù)庫(kù)抓包,在windows系統(tǒng)中采用winpcap函數(shù)庫(kù)抓包。

2、層次化的數(shù)據(jù)包協(xié)議分析方法

取得捕包函數(shù)捕回的數(shù)據(jù)包后就需要進(jìn)行協(xié)議分析和協(xié)議還原工作了。由于OSI的7層協(xié)議模型,協(xié)議數(shù)據(jù)是從上到下封裝后發(fā)送的。對(duì)于協(xié)議分析需要從下至上進(jìn)行。首先對(duì)網(wǎng)絡(luò)層的協(xié)議識(shí)別后進(jìn)行組包還原然后脫去網(wǎng)絡(luò)層協(xié)議頭。將里面的數(shù)據(jù)交給傳輸層分析,這樣一直進(jìn)行下去直到應(yīng)用層。由于網(wǎng)絡(luò)協(xié)議種類很多,就Ethereal所識(shí)別的500多種協(xié)議來(lái)說(shuō),為了使協(xié)議和協(xié)議間層次關(guān)系明顯。從而對(duì)數(shù)據(jù)流里的各個(gè)層次的協(xié)議能夠逐層處理。Ethereal系統(tǒng)采用了協(xié)議樹的方式。

圖1所示就是一個(gè)簡(jiǎn)單的協(xié)議樹。如果協(xié)議A的所有數(shù)據(jù)都是封裝在協(xié)議B里的,那么這個(gè)協(xié)議A就是協(xié)議B是另外一個(gè)協(xié)議的兒子節(jié)點(diǎn)(比如圖中的TCP和UDP協(xié)議就是IP協(xié)議的兒子節(jié)點(diǎn))。我們將最低層的無(wú)結(jié)構(gòu)數(shù)據(jù)流作為根接點(diǎn)。那么具有相同父節(jié)點(diǎn)的協(xié)議成為兄弟節(jié)點(diǎn)。那么這些擁有同樣父協(xié)議兄弟節(jié)點(diǎn)協(xié)議如何互相區(qū)分了?Ethereal系統(tǒng)采用協(xié)議的特征字來(lái)識(shí)別。每個(gè)協(xié)議會(huì)注冊(cè)自己的特征字。這些特征字給自己的子節(jié)點(diǎn)協(xié)議提供可以互相區(qū)分開(kāi)來(lái)的標(biāo)識(shí)。比如tcp協(xié)議的port字段注冊(cè)后。Tcp.port=21就可以認(rèn)為是ftp協(xié)議,特征字可以是協(xié)議規(guī)范定義的任何一個(gè)字段。比如ip協(xié)議就可以定義proto字段為一個(gè)特征字。

在Ethereal中注冊(cè)一個(gè)協(xié)議解析器首先要指出它的父協(xié)議是什么。另外還要指出自己區(qū)別于父節(jié)點(diǎn)下的兄弟接點(diǎn)協(xié)議的特征。比如ftp協(xié)議。在Ethereal中他的父接點(diǎn)是tcp協(xié)議,它的特征就是tcp協(xié)議的port字段為21。這樣當(dāng)一個(gè)端口為21的tcp數(shù)據(jù)流來(lái)到時(shí)。首先由tcp協(xié)議注冊(cè)的解析模塊處理,處理完之后通過(guò)查找協(xié)議樹找到自己協(xié)議下面的子協(xié)議,判斷應(yīng)該由那個(gè)子協(xié)議來(lái)執(zhí)行,找到正確的子協(xié)議后,就轉(zhuǎn)交給ftp注冊(cè)的解析模塊處理。這樣由根節(jié)點(diǎn)開(kāi)始一層層解析下去。

由于采用了協(xié)議樹加特征字的設(shè)計(jì),這個(gè)系統(tǒng)在協(xié)議解析上由了很強(qiáng)的擴(kuò)展性,增加一個(gè)協(xié)議解析器只需要將解析函數(shù)掛到協(xié)議樹的相應(yīng)節(jié)點(diǎn)上即可。

圖1  協(xié)議樹簡(jiǎn)單圖示

3、基于插件技術(shù)的協(xié)議分析器

所謂插件技術(shù),就是在程序的設(shè)計(jì)開(kāi)發(fā)過(guò)程中,把整個(gè)應(yīng)用程序分成宿主程序和插件兩個(gè)部分,宿主程序與插件能夠相互通信,并且,在宿主程序不變的情況下,可以通過(guò)增減插件或修改插件來(lái)調(diào)整應(yīng)用程序的功能。運(yùn)用插件技術(shù)可以開(kāi)發(fā)出伸縮性良好、便于維護(hù)的應(yīng)用程序。它著名的應(yīng)用實(shí)例有:媒體播放器winamp、微軟的網(wǎng)絡(luò)瀏覽器IE等。

由于現(xiàn)在網(wǎng)絡(luò)協(xié)議種類繁多,為了可以隨時(shí)增加新的協(xié)議分析器,一般的協(xié)議分析器都采用插件技術(shù),這樣如果需要對(duì)一個(gè)新的協(xié)議分析只需要開(kāi)發(fā)編寫這個(gè)協(xié)議分析器并調(diào)用注冊(cè)函數(shù)在系統(tǒng)注冊(cè)就可以使用了。通過(guò)增加插件使程序有很強(qiáng)的可擴(kuò)展性,各個(gè)功能模塊內(nèi)聚。#p#

4、安裝Wireshark

Wireshark可以在http://www.wireshark.org/download.html上下載,該軟件有極其方便和友好的圖形用戶界面,并且能夠使得用戶通過(guò)圖形界面的配置和選擇,針對(duì)多塊網(wǎng)卡、多個(gè)協(xié)議進(jìn)行顯示,效果非常好。目前最新版本為:Wireshark 1.0.3。安裝該軟件請(qǐng)按照如下步驟進(jìn)行:

  1. //將下載的最新版本軟件拷貝到臨時(shí)文件夾   
  2. # cp wireshark-1.0.3.tar.gz /usr/local/src/  
  3. //切換到臨時(shí)文件夾目錄  
  4. # cd /usr/local/src/  
  5. //解壓縮文件  
  6. # tar -xvf wireshark-1.0.3.tar.gz  
  7.    

另外,同Tcpdump一樣,在編譯Ethereal之前應(yīng)先確定已經(jīng)安裝pcap庫(kù)(libpcap),這是編譯Wireshark時(shí)所必需的。如果該庫(kù)已經(jīng)安裝,就可以執(zhí)行下面的命令來(lái)編譯并安裝Wireshark:

  1. # cd wireshark-1.0.3   
  2. # ./configure  
  3. # make  
  4. # make install  

當(dāng)編譯并安裝好Wireshark后,就可以執(zhí)行“wireshark”命令來(lái)啟動(dòng)Wireshark。

5、使用Wireshark

(1)捕包選項(xiàng)

抓包是進(jìn)行協(xié)議分析的第一步驟,在Wireshark中,有幾個(gè)抓包的相關(guān)選項(xiàng)需要尤其注意(如圖1和2所示):

◆Interface:指定在哪個(gè)接口(網(wǎng)卡)上抓包。一般情況下都是單網(wǎng)卡,所以使用缺省的就可以了Limit each packet: 限制每個(gè)包的大小,缺省情況不限制。

◆Capture packets in promiscuous mode:確定是否打開(kāi)混雜模式。如果打開(kāi),抓取所有的數(shù)據(jù)包。一般情況下只需要監(jiān)聽(tīng)本機(jī)收到或者發(fā)出的包,因此應(yīng)該關(guān)閉這個(gè)選項(xiàng)。

◆Filter:過(guò)濾器。只抓取滿足過(guò)濾規(guī)則的包。

◆File:如果需要將抓到的包寫到文件中,在這里輸入文件名稱。use ring buffer:是否使用循環(huán)緩沖。缺省情況下不使用,即一直抓包。值得注意的是:循環(huán)緩沖只有在寫文件的時(shí)候才有效。如果使用了循環(huán)緩沖,還需要設(shè)置文件的數(shù)目,文件多大時(shí)回卷。其他的項(xiàng)選擇缺省的就可以了。

圖1  Wireshark的捕包界面

圖2  Wireshark捕包選項(xiàng)設(shè)置示意圖

(2)協(xié)議過(guò)濾(Filter)選項(xiàng)

由于網(wǎng)絡(luò)中的協(xié)議五花八門,Http、Ftp、ARP、ICMP等協(xié)議等都在抓包的范圍之列,因而給協(xié)議分析工作帶來(lái)了一些麻煩。為了對(duì)特定的協(xié)議進(jìn)行分析統(tǒng)計(jì),則可以使用Ehereal提供的Filter選項(xiàng)來(lái)對(duì)數(shù)據(jù)報(bào)文進(jìn)行過(guò)濾,對(duì)特定的協(xié)議進(jìn)行提取,再進(jìn)行分析。圖3(a)給出了使用Capture菜單下的Capture Filter選項(xiàng)進(jìn)行過(guò)濾設(shè)置的示意,該軟件已經(jīng)提供了許多協(xié)議的Filter供用戶選擇使用,而用戶也可以自行添加;圖3(b)則顯示了通過(guò)在工具欄的Filter編輯框內(nèi)輸入?yún)f(xié)議名稱對(duì)已捕捉的包進(jìn)行過(guò)濾的結(jié)果,圖中顯示了過(guò)濾后所得Http協(xié)議的數(shù)據(jù)包情況。用戶也可以通過(guò)輸入Ftp、ARP或者TCP等字段來(lái)獲取相應(yīng)的協(xié)議內(nèi)容。

圖3  協(xié)議過(guò)濾選項(xiàng)示意圖

注意:圖3(a)和3(b)所示的設(shè)置方法的不同在于:前者設(shè)置后該工具只對(duì)選取的協(xié)議進(jìn)行捕包;而后者則是在所有捕獲的數(shù)據(jù)包中(包括各種協(xié)議)選擇用戶設(shè)定的協(xié)議進(jìn)行提取和顯示。

(3)統(tǒng)計(jì)選項(xiàng)(statistics)

統(tǒng)計(jì)選項(xiàng)用于對(duì)過(guò)濾后的各協(xié)議類型進(jìn)行統(tǒng)計(jì),從而從宏觀上對(duì)網(wǎng)絡(luò)中的流量進(jìn)行統(tǒng)計(jì)分析和全局把握。圖4給出了操作的流程和顯示結(jié)果。

 

圖4  統(tǒng)計(jì)選項(xiàng)示意圖
 

【編輯推薦】

  1. 關(guān)于linux 性能監(jiān)控的詳細(xì)介紹
  2. linux 網(wǎng)絡(luò)監(jiān)控系統(tǒng)的開(kāi)發(fā)及其應(yīng)用
  3. 分享Linux流量監(jiān)控的幾個(gè)方法
  4. 系統(tǒng)監(jiān)控:linux 系統(tǒng)監(jiān)控命令詳解
  5. Linux內(nèi)存監(jiān)控過(guò)程詳解

 

責(zé)任編輯:chenqingxiang
相關(guān)推薦

2010-08-06 09:39:53

Linux流量控制

2012-11-22 14:59:50

2012-11-29 09:59:02

網(wǎng)絡(luò)流量網(wǎng)絡(luò)安全

2010-03-22 21:06:35

2022-09-26 14:24:18

Linux網(wǎng)絡(luò)流量審計(jì)

2010-06-04 10:35:25

Linux 網(wǎng)絡(luò)流量

2009-07-22 14:43:36

2009-08-03 16:27:17

2009-01-03 09:13:00

2010-10-08 14:31:00

網(wǎng)絡(luò)流量監(jiān)測(cè)

2012-11-28 11:14:52

網(wǎng)絡(luò)流量安全管理網(wǎng)絡(luò)流量

2016-10-07 22:54:03

流量監(jiān)控ossim

2019-04-02 09:53:22

2012-02-06 09:40:25

2010-06-13 15:08:05

Linux 查看網(wǎng)絡(luò)流

2010-06-04 14:24:12

Linux 查看網(wǎng)絡(luò)流

2010-06-17 17:07:33

Linux網(wǎng)絡(luò)流量

2010-06-13 14:47:15

2011-08-11 16:58:48

IPv6網(wǎng)絡(luò)流量

2021-03-16 17:39:13

安全網(wǎng)絡(luò)流量
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)