本文轉載於我的個人博客,轉載請標明出處。
初衷
在騰訊雲的學生認證申請提交上去n天之后,終於得到了審批,所以迫不及待的想玩玩騰訊雲,作為一個搞網絡的,自然有一些關於網絡應用的小玩意,所以把以前部署過的一個網絡流量監控系統在騰訊雲上面跑跑,體驗一下騰訊雲,檢查一下騰訊雲的安全。
一. 工具簡介
相信用過linux的人都知道linux中一個常用的用來實時顯示系統中各個進程的資源占用情況的性能分析命令top。在網絡中有一個類似功能的軟件——ntopng(以前稱作ntop,加上ng(next generation)指下一代),他是一個網絡流量探針,來顯示網絡的使用情況,他基於libpcap,同時提供了非常炫酷的web展示界面給用戶,方便用戶分析網絡。
ntopng可以做哪些事情呢:
- 根據不同的標准划分網絡流量
- 展示網絡流量和IPv4/IPv6主機
- 對網絡吞吐率和應用協議等生成報告
- 顯示本機使用最多的協議,最多的交互主機,自主系統
- 將流量統計結果存儲
- 對每個流都有細粒度的分析
- 利用nDPI發現應用協議
- 展示IP地址的為知信息
- 展示IP流量子矩陣(通信雙方)
等等還有很多。
ntopng的系統構架如下圖,比較簡單,不再說了。
二. 先來看幾張效果圖
為了不暴露隱私,展示幾張網上的圖片.
三. 步驟
遠程登錄騰訊雲,執行下面的步驟
- 安裝需要預裝的庫:
- glib2 - GNU autotools/libtool - libgeoip - libpcap or PF_RING (optional but recommended) - redis (redis server) 2.2 or newer - GeoIP (optional) 1.4.8 or newer - wget (for 'make geoip') - libxml2-dev - libglib2.0-dev - libsqlite3-dev - libcurl-dev
apt-get install subversion libglib2.0 libxml2-dev libpcap-dev libtool rrdtool librrd-dev autoconf automake autogen redis-server wget libsqlite3-dev libhiredis-dev libgeoip-dev libcurl4-openssl-dev libpango1.0-dev libcairo2-dev libpng12-dev git
- 安裝nDPI:
git clone https://github.com/ntop/nDPI.git cd nDPI/ ./autogen.sh make
- 安裝ntopng
cd .. git clone https://github.com/ntop/ntopng.git cd ntopng ./autogen.sh ./configure make make install
- 在運行ntopng之前,確保先啟動了redis(ntopng的鍵值存儲區)
sudo /etc/init.d/redis-server restart
- 開啟ntopng:
sudo ./ntopng
這是默認開啟方式,ntopng在TCP/3000端口偵聽,使用下面的命令,可以證實:
sudo netstat -nap|grep ntopng
- 在本地web瀏覽器上輸入騰訊雲的公網IP:3000,然后會顯示登錄界面,默認的用戶名和密碼都是admin
四. 遇到的問題
遇到的問題主要是一些庫的安裝問題
問題:MySQL libraries not found, please install them as specified in README.compilation
解決:apt-get install libmysqlclient-dev
五. 總結
我買的是騰訊雲最low的配置了,整體來說,git clone的時候速度非常不好,並且十分不穩定,高則上M,低則失敗。但是apt-get是非常快的,整體來說還是非常不錯的,畢竟在雲計算的安全策略下可以做自己想做的事情了。。。