介紹一個強大的分析網絡的shell腳本,此腳本是從EZHTTP拆分出來的,覺得有必要單獨介紹下。
腳本運作效果截圖:

此腳本包含的功能有:
- 1、實時監控任意網卡的流量
- 2、統計10秒内平均流量
- 3、統計每個端口在10秒内的平均流量,基于用戶端和服務端端口統計。可以看出哪些端口占流量比較大,對于web伺服器,一般是80端口。其它端口受到攻擊時,也有可能其它端口流量比較大。是以此功能可以幫助我們端口流量是否正常。
- 4、統計在10s内占用帶寬最大的前10個ip。此項功能可以幫助我們來查出是否有惡意占用帶寬的ip。
- 5、統計連接配接狀态。此項功能可以讓我們看出哪些連接配接狀态比較大。如果SYN-RECV狀态比較多的話,有可以受到半連接配接攻擊。如果ESTABLISED非常大,但通過日志發現沒有那麼多請求,或者通過tcpdump發現大量ip隻建立連接配接不請求資料的話,可能是受到了全連接配接攻擊,這時候如果你使用的是nginx伺服器,可以在配置檔案增加listen 80 deferred來防止。
- 6、統計各端口連接配接狀态。當可能受到攻擊時,此項功能可以幫助我們發現是哪個端口受到攻擊。
- 7、統計端口為80且狀态為ESTAB連接配接數最多的前10個IP。此項功能可以幫助我們來找出建立連接配接過多的Ip,進而屏蔽。
- 8、統計端口為80且狀态為SYN-RECV連接配接數最多的前10個IP。當受到半連接配接攻擊時,此項功能可以幫助我們找到惡意ip。
用到的網絡分析工具:
- 1、tcpdump:此腳本用tcpdump來統計基于ip或基于端口的流量。
- 2、ss:此腳本用ss指令來統計連接配接狀态,實際使用發現ss比netstat高效得多。
- 3、/proc/net/dev,用來統計指定網卡的流量。
腳本下載下傳位址:https://www.centos.bz/wp-content/uploads/2014/06/network-analysis.sh
下面貼出部分的腳本:
END
▼更多精彩推薦,請關注我們▼
生活不止眼前的苟且,
還有課本裡的詩和到不了的遠方