本篇文章主要介紹了linux下如何對端口流量進行統(tǒng)計,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
在不修改源代碼的情況下對程序暴露端口流量進行監(jiān)控統(tǒng)計,可以利用linux中自帶的Iptable添加簡單的規(guī)則讓其起到端口流量統(tǒng)計的作用。但是需要注意的是在服務器重啟、Iptable服務重啟的時候統(tǒng)計數(shù)據(jù)會被重置清零。
添加需要統(tǒng)計的端口
1、輸入監(jiān)控
下面示例是監(jiān)控目標端口是8080的輸入流量 –dport(destination port 的縮寫)
iptables?-A?INPUT?-p?tcp?--dport?8080
2、輸出監(jiān)控
下面示例是監(jiān)控來源端口是8080的輸出流量 –sport(source port 的縮寫)
iptables?-A?OUTPUT?-p?tcp?--sport?8080
查看統(tǒng)計數(shù)據(jù)
iptable?-L?-v?-n?-x
示例結(jié)果:
8080端口接收的流量為2885字節(jié),發(fā)送的流量是8240字節(jié)
Chain?INPUT?(policy?ACCEPT?202?packets,?25187?bytes) ??pkts???bytes?target???prot?opt?in???out???source????????destination????? ???18???2885??????tcp?--?*???*????0.0.0.0/0??????0.0.0.0/0??????tcp?dpt:8080 Chain?FORWARD?(policy?ACCEPT?0?packets,?0?bytes) ??pkts???bytes?target???prot?opt?in???out???source????????destination????? Chain?OUTPUT?(policy?ACCEPT?184?packets,?45774?bytes) ??pkts???bytes?target???prot?opt?in???out???source????????destination????? ???12???8240??????tcp?--?*???*????0.0.0.0/0??????0.0.0.0/0??????tcp?spt:8080
重置統(tǒng)計數(shù)據(jù)
注意:這里是重置所有端口的統(tǒng)計數(shù)據(jù)
1、重置所有輸入端口
Iptable?-Z?INPUT
2、重置所有輸出端口
Iptable?-Z?OUTPUT
移除統(tǒng)計端口
1、移除輸入端口
iptables?-D?INPUT?-p?tcp?--dport?8080
2、移除輸出端口
iptables?-D?OUTPUT?-p?tcp?--sport?8080
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END