1、前言
Darkstat - Nework Traffic Analyzer 簡單來說就是把通過指定網卡的封包利用圖表統計方式呈現,讓您可以很簡單的了解現在網卡上進、出的流量。Darkstat 特色:
- 使用圖表方式來呈現 Host、Port。
- 使用嵌入式網頁伺服器 (因此不需安裝 Web Server)。
- 預設使用 DNS 來解析分析到的 Host。
- 體積小、可攜式、單執行緒、高效率、不複雜。
Darkstat 成果展示畫面:
文章目錄
1、前言2、實作環境
3、安裝及設定
步驟1.下載 darkstat RPM
步驟2.安裝 darkstat RPM
步驟3.啟動 darkstat
4、補充: DarkStat 可用參數說明
5、參考
2、實作環境
- CentOS 5.1 (Linux 2.6.18-53.1.4.el5)
- darkstat-3.0.707-1.el5.rf
3、安裝及設定
步驟1.下載 darkstat RPM
至 RPM Search darkstat-3.0.707-1.el5.rf.i386.rpm 下載 darkstat-3.0.707-1.el5.rf.i386.rpm。# wget ftp://ftp.pbone.net/mirror/dries.studentenweb.org/apt/redhat/el5/en/i386/RPMS.dries/darkstat-3.0.707-1.el5.rf.i386.rpm
步驟2.安裝 darkstat RPM
利用 rpm 指令來安裝 DarkStat RPM。# rpm -ivh darkstat-3.0.707-1.el5.rf.i386.rpm
Preparing... ################################# 100%
1:darkstat ################################# 100%
步驟3.啟動 darkstat
# /usr/sbin/darkstat -i eth0
darkstat 3.0.707 (built with libpcap 2.4)
darkstat (21240): starting up
darkstat (21240): daemonizing to run in the background!
darkstat (21241): I am the main process
darkstat (21240): parent waiting
darkstat (21242): set uid/gid to 99/99
darkstat (21241): DNS child has PID 21242
darkstat (21241): caplen is 54
darkstat (21241): capturing in promiscuous mode
darkstat (21241): listening on 0.0.0.0:667
darkstat (21241): loaded 133 protos
darkstat (21241): loaded 4594 tcp and 4549 udp servs, from total 9158
darkstat (21241): chrooted into: /var/empty
darkstat (21241): set uid/gid to 99/99
darkstat (21241): local_ip update(eth0) = 61.60.59.58
darkstat (21241): entering main loop
darkstat (21240): parent done reading, calling waitpid
darkstat (21240): waitpid ret 0, status is 3
檢查 darkstat service 是否開啟服務的 Port (Default 667)。
# netstat -tnl |grep 667
tcp 0 0 0.0.0.0:667 0.0.0.0:* LISTEN
檢查 darkstat process 是否執行中。
# ps ax |grep darkstat
21241 ? Ss 0:00 /usr/sbin/darkstat -i eth0
21242 ? Ss 0:00 /usr/sbin/darkstat -i eth0
若要停止監聽的話則 kill 掉主行程即可,通常在啟動 darkstat 後第四行訊息就是說明該 process id 為 main process。
# /usr/sbin/darkstat -i eth0
darkstat 3.0.707 (built with libpcap 2.4)
darkstat (21240): starting up
darkstat (21240): daemonizing to run in the background!
darkstat (21241): I am the main process
4、補充: DarkStat 可用參數說明
- -i interface: 指定監聽的網路卡名稱。
- --debug: 開啟除錯模式。
- --no-promisc: 不使用混亂模式(promiscuous mode )。
- --no-dns: 不使用 DNS 來解析 IP -> Hostname 名稱。
- -p port: 指定 embedded webserver 使用的 Port (預設為 667)。
- -b bindaddr: 指定 embedded webserver 使用的 IP Address 預設使用 0.0.0.0。
- -f filter: 指定過濾 (packet filter),詳細過濾語法請參考 man tcpdump。
- -l network/netmask: 定義本地網段(local network),所以進入及出去的封包將會顯示在圖表(Graphs)中。
- --chroot dir: 指定 Chroot 資料夾。
- --user username: 指定執行服務的使用者 (預設使用 nobody)。
- --daylog filename: 指定 daily Log traffic statistics (必須配合 --chroot 設定)。
- --import filename: 匯入 darkstat database。
- --export filename: 匯出 darkstat database(必須配合 --chroot 設定)。
- --pidfile filename: 建立 darkstat process ID。