真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用Linux中的tcpdump工具-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“如何使用Linux中的tcpdump工具”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“如何使用Linux中的tcpdump工具”吧!

為靈丘等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及靈丘網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站制作、靈丘網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

先來(lái)看一個(gè)比較基本的用法:



代碼如下:


tcpdump -i eth0



其中,eth0為參數(shù)值,表示需要抓包的網(wǎng)口,這是個(gè)必需參數(shù)哦。

tcpdump的具體參數(shù)及意義:

-i:指定tcpdump監(jiān)聽(tīng)的網(wǎng)絡(luò)接口

-s:指定要監(jiān)聽(tīng)數(shù)據(jù)包的長(zhǎng)度

-c:指定要監(jiān)聽(tīng)的數(shù)據(jù)包數(shù)量,達(dá)到指定數(shù)量后自動(dòng)停止抓包

-w:指定將監(jiān)聽(tīng)到的數(shù)據(jù)包寫(xiě)入文件中保存

-A:指定將每個(gè)監(jiān)聽(tīng)到的數(shù)據(jù)包以ACSII可見(jiàn)字符打印

-n:指定將每個(gè)監(jiān)聽(tīng)到數(shù)據(jù)包中的域名轉(zhuǎn)換成IP地址后顯示

-nn:指定將每個(gè)監(jiān)聽(tīng)到的數(shù)據(jù)包中的域名轉(zhuǎn)換成IP、端口從應(yīng)用名稱轉(zhuǎn)換成端口號(hào)后顯示

-e:指定將監(jiān)聽(tīng)到的數(shù)據(jù)包鏈路層的信息打印出來(lái),包括源mac和目的mac,以及網(wǎng)絡(luò)層的協(xié)議

-p:將網(wǎng)卡設(shè)置為非混雜模式,不能與host或broadcast一起使用

-r:指定從某個(gè)文件中讀取數(shù)據(jù)包

-S:指定打印每個(gè)監(jiān)聽(tīng)到的數(shù)據(jù)包的TCP絕對(duì)序列號(hào)而非相對(duì)序列號(hào)


tcpdump支持很多的關(guān)鍵字,下面先看幾個(gè)例子:

(例1)tcpdump -i eth0 host 192.168.0.250 ----- 在網(wǎng)口eth0上抓取主機(jī)地址為192.168.0.250的所有數(shù)據(jù)包 。

(例2)tcpdump -i eth0 net 192.168.0.0/24 ------ 在網(wǎng)口eth0上抓取網(wǎng)絡(luò)地址為192.168.0.0/24的所有數(shù)據(jù)包

(例3)tcpdump -i eth0 port 80 ------ 在網(wǎng)口eth0上抓取端口為80的所有數(shù)據(jù)包(注意,這里不區(qū)分是源端口還是目的端口)

當(dāng)然,我們也可以指定源端口或目的端口

(例4)tcpdump -i eth0 src port 80 and dst port 6100 --- 在網(wǎng)口eth0上抓取源端口為80且目的端口為6100的數(shù)據(jù)包,這里用到了and邏輯運(yùn)算符

(例5)tcpdump -i eth0 icmp --- 在網(wǎng)口eth0上抓取所有icmp協(xié)議的數(shù)據(jù)包

以上幾個(gè)例子,可以大致體現(xiàn)出tcpdump的基本用法。

實(shí)際上,tcpdump主要包括三種類型的關(guān)鍵字,第一種是關(guān)于類型的關(guān)鍵字,主要包括host,net,port,如上面的例(1)(2)(3),第二種

是確定傳輸方向的關(guān)鍵字,主要包括src,dst,src or dst,src and dst,這些關(guān)鍵字指明了傳輸?shù)姆较颍缟厦娴睦?)。第三種是協(xié)議關(guān)鍵字,包括fddi,ip,arp,

rarp,tcp,udp,imcp等,如上面的例(5)。

除了這三種類型的關(guān)鍵字外,還有其他重要的關(guān)鍵字,如:gateway,broadcast,less,greater,還有三種邏輯運(yùn)算,取非運(yùn)算是'not'、'!',與運(yùn)算符是'and'、'&&'、

或運(yùn)算符是'or'、'||',這些關(guān)鍵字可以組合起來(lái)構(gòu)成強(qiáng)大的組合條件來(lái)滿足我們的需求。

借助tcpdump統(tǒng)計(jì)http請(qǐng)求
這里所說(shuō)的統(tǒng)計(jì)http請(qǐng)求,是指統(tǒng)計(jì)QPS(每秒請(qǐng)求數(shù)),統(tǒng)計(jì)前十條被訪問(wèn)最多的url。一般做這樣的統(tǒng)計(jì)時(shí),我們經(jīng)常會(huì)使用網(wǎng)站訪問(wèn)日志來(lái)統(tǒng)計(jì)。當(dāng)我們來(lái)到一個(gè)陌生的服務(wù)器環(huán)境,需要立即統(tǒng)計(jì)當(dāng)前前十條被訪問(wèn)最多的url,來(lái)初步確定是否存在攻擊行為,使用tcpdump則簡(jiǎn)單得多,因?yàn)槲覀儾恍枰P(guān)心網(wǎng)站日志在哪,不需要考慮網(wǎng)站日志有沒(méi)有開(kāi)啟之類的問(wèn)題,直接用tcpdump捕捉當(dāng)前的http包,再進(jìn)一步過(guò)濾,就會(huì)得出我們想要的統(tǒng)計(jì)。此功能已集成到EZHTTP,下面是效果圖:
如何使用Linux中的tcpdump工具

下面介紹其統(tǒng)計(jì)方法。
1、捕捉10秒的數(shù)據(jù)包。



代碼如下:


tcpdump -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x504f -w /tmp/tcp.cap -s 512 2>&1 &
sleep 10
kill `ps aux | grep tcpdump | grep -v grep | awk '{print $2}'`



此命令表示監(jiān)控網(wǎng)卡eth0,捕捉tcp,且21-22字節(jié)字符為GE或者PO,表示匹配GET或者POST請(qǐng)求的數(shù)據(jù)包,并寫(xiě)到/tmp/tcp.cap文件。
2、這時(shí)候我們得到新10秒的二進(jìn)制數(shù)據(jù)包文件,我們下一步就是通過(guò)strings命令來(lái)找出GET/POST的url以及Host。



代碼如下:


strings /tmp/tcp.cap | grep -E "GET /|POST /|Host:" | grep --no-group-separator -B 1 "Host:" | grep --no-group-separator -A 1 -E "GET /|POST /" | awk '{url=$2;getline;host=$2;printf ("%s\n",host""url)}' > url.txt



此命令是本文的關(guān)鍵,通過(guò)strings顯示二進(jìn)制文件tcp.cap所有可打印字符,然后通過(guò)grep和awk過(guò)濾出http請(qǐng)求,并把拼接得到的url(包括域名+uri)寫(xiě)進(jìn)一個(gè)文件url.txt。
3、這時(shí)我們拿到了近10秒鐘所有的訪問(wèn)url,接下來(lái)的統(tǒng)計(jì)就容易得出,比如:
統(tǒng)計(jì)QPS:



代碼如下:


(( qps=$(wc -l /tmp/url.txt | cut -d' ' -f 1) / 10 ))



排除靜態(tài)文件統(tǒng)計(jì)前10訪問(wèn)url:



代碼如下:


grep -v -i -E "\.(gif|png|jpg|jpeg|ico|js|swf|css)" /tmp/url.txt | sort | uniq -c | sort -nr | head -n 10


到此,相信大家對(duì)“如何使用Linux中的tcpdump工具”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


分享標(biāo)題:如何使用Linux中的tcpdump工具-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://weahome.cn/article/cojphc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部