萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> 電腦知識吧分享linuxtcpdump腳本實現24小時自動抓包的方法

電腦知識吧分享linuxtcpdump腳本實現24小時自動抓包的方法

class="area">        電腦知識吧分享linuxtcpdump腳本實現24小時自動抓包的方法,相信這個對你們感興趣的,下面小編就簡單的分析一下吧:#說明---------------
 maindump.sh (抓包的主程序)
 每隔1分鐘通過死循環檢測,讓程序不斷的去抓包;考慮到抓包的結果可能太大分析工具無法打開分析,所以每個數據包大小限制約為100M;
 並設定了前一個包抓完,間隔5秒,開始進行下一輪抓包;
 每天的數據包放在/data下以日期命名的目錄如:/data/2010-03-08,並進行壓縮存儲,包的命令格式為:[email protected];其中yyyy-mm-dd表示日期,第一個hhmmss表示開始抓包的時分秒,第二個hhmmss表示抓包結束的時分秒。
 
monitor_dump.sh (監控抓包腳本),monitor_disk.sh(監控硬盤空間)
 為了保證抓包主程序能健康運行,通過crond程序來調度monitor.sh;
 監控抓包主程序是事正常運行,如果沒有運行,則啟動它;
 監控磁盤的空閒空間,當磁盤的使用率大於等於30%時(可設置),會自動刪除最早一天抓到的所在數據包,以保證磁盤的空閒空間;
 腳本裡有注釋#diy的,表示下一行需自定義修改。
 
腳本都放在home目錄下;crontab裡寫:
 * */6 * * * /bin/bash /home/monitor.sh
 * */6 * * * /bin/bash /home/monitor_disk.sh
 根據當磁盤空間的大小和流量的大小確定crontab裡的時間間隔
 因加了crontab要時間到才執行,為了現在執行,可執行:nohup sh /home/monitor.sh &
 
#說明結束--------------
 
------------------------------------------------------------
 
#!/bin/bash
 #script name:/home/monitor_dump.sh
 
DATE_DIR=`date +%F`
 STIME=`date +%F"@"%H%M%S`
 
MAINDUMP=`ps -elf|grep maindump|grep -v grep`
 #diy
 DUMPPID=`ps -ef
copyright © 萬盛學電腦網 all rights reserved