人妻丰满熟妇无码区乱com|久久婷婷午夜精品二区|一道本国产不卡视频|国产孕妇故爱A级高清片免费看

<tbody id="geoqw"></tbody>
  • <center id="geoqw"></center>
  • <menu id="geoqw"></menu>
  • <center id="geoqw"></center>
    
    <menu id="geoqw"></menu>
  • Ubuntu系統(tǒng)中安裝使用tcpdump來統(tǒng)計(jì)HTTP請(qǐng)求

    時(shí)間:2022-10-04 03:48:49 網(wǎng)絡(luò)知識(shí) 我要投稿
    • 相關(guān)推薦

    關(guān)于Ubuntu系統(tǒng)中安裝使用tcpdump來統(tǒng)計(jì)HTTP請(qǐng)求

      Ubuntu系統(tǒng)中安裝使用tcpdump來統(tǒng)計(jì)HTTP請(qǐng)求

      安裝

      tcpdump的安裝還是比較討厭的...

      1.網(wǎng)上下載獲得libpcap和tcpdump

      http://www.tcpdump.org/

      2.安裝c編譯所需包:

      代碼如下:

      apt-get install build-essential

      3.安裝 libpcap的前置:

      代碼如下:

      apt-get install flex,apt-get install bison

      4.安裝libpcap。

      tcpdump的使用必須有這庫。

      代碼如下:

      tar xvfz libpcap-1.2.1.tar.gz //解壓

      進(jìn)入解壓之后的文件目錄 運(yùn)行

      代碼如下:

      ./configure //生成makefile文件

      make //進(jìn)行編譯

      make install //安裝

      庫文件默認(rèn)安裝在目錄 /usr/lib,頭文件默認(rèn)安裝在 /usr/include

      5.安裝tcpdump

      代碼如下:

      tar xvfz tcpdump.4.2.1.tar.gz //解壓

      進(jìn)入解壓之后的文件目錄 運(yùn)行

      代碼如下:

      ./configure //生成makefile文件

      make //進(jìn)行編譯

      make install //安裝 庫文件默認(rèn)安裝在目錄 /usr/lib,頭文件默認(rèn)安裝在 /usr/include

      測(cè)試是否成功安裝:命令行輸入 tcpdump有網(wǎng)絡(luò)信息顯示!!

      6.可能遇到的問題:

      代碼如下:

      #tcpdump

      #tcpdump: no suitable device found

      原因:網(wǎng)絡(luò)監(jiān)聽需要root權(quán)限,切換到root用戶下就可以正常使用了。

      借助tcpdump統(tǒng)計(jì)http請(qǐng)求

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

      下面介紹其統(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ù)包,并寫到/tmp/tcp.cap文件。

      2、這時(shí)候我們得到最新10秒的二進(jìn)制數(shù)據(jù)包文件,我們下一步就是通過strings命令來找出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 ("%sn",host""url)}' > url.txt

      此命令是本文的關(guān)鍵,通過strings顯示二進(jìn)制文件tcp.cap所有可打印字符,然后通過grep和awk過濾出http請(qǐng)求,并把拼接得到的url(包括域名+uri)寫進(jìn)一個(gè)文件url.txt。

      3、這時(shí)我們拿到了近10秒鐘所有的訪問url,接下來的統(tǒng)計(jì)就容易得出,比如:

      統(tǒng)計(jì)QPS:

      代碼如下:

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

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

      代碼如下:

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

    【Ubuntu系統(tǒng)中安裝使用tcpdump來統(tǒng)計(jì)HTTP請(qǐng)求】相關(guān)文章:

    U盤安裝系統(tǒng)的方法12-08

    關(guān)于HTTP 錯(cuò)誤 403.1禁止訪問11-26

    如何安裝win8系統(tǒng)?win8如何安裝11-27

    電腦系統(tǒng)安裝日期的查看方法11-07

    請(qǐng)求的近義詞10-21

    道閘系統(tǒng)安裝施工合同03-24

    64位win7系統(tǒng)如何安裝11-26

    硬盤多大才能安裝win7系統(tǒng)11-27

    顯卡驅(qū)動(dòng)安裝后系統(tǒng)啟動(dòng)黑屏11-26

    安裝電腦操作系統(tǒng)的步驟有哪些09-07