︿
Top

1、前言

Darkstat - Nework Traffic Analyzer 簡單來說就是將通過網卡的封包利用圖表方式呈現,讓您可以很簡單的了解目前網路卡上面進、出的流量。


Darkstat 功能特色:

  • 使用圖表方式來呈現 Host、Port。
  • 使用嵌入式網頁伺服器 (因此不需要安裝 Web Server)。
  • 預設使用 DNS 來解析分析到的 Host。
  • 體積小、可攜式、單執行緒、高效率、不複雜。

Darkstat 成果展示畫面:





文章目錄

1、前言
2、實作環境
3、安裝及設定
          步驟1.安裝 darkstat 套件
          步驟2.編輯 /etc/rc.conf
          步驟3.啟動 darkstat
4、Darkstat 參數說明
5、參考
6、Me FAQ
          Q1.無法安裝 darkstat?




2、實作環境

  • FreeBSD 5.4-RELEASE-p7
  • darkstat-3.0.707




3、安裝及設定

步驟 1. 安裝 darkstat 套件

切換至 Ports Tree 路徑安裝 darkstat 套件。
cd /usr/ports/net-mgmt/darkstat    //切換到安裝路徑
make install clean                  //安裝套件並清除暫存檔案




步驟 2. 編輯 /etc/rc.conf

修改 /etc/rc.conf 檔以便系統重新開機時能自動啟動 Darkstat 服務。
vi /etc/rc.conf
 darkstat_enable="YES"        //開機啟動 Darkstat 服務
 darkstat_interface="em0"     //指定監聽的網卡名稱




步驟 3. 啟動 darkstat

鍵入如下指令即可開始對指定網路卡進行監聽的動作。
/usr/local/etc/rc.d/darkstat.sh start
 Starting darkstat.
 darkstat 3.0.707 (built with libpcap 2.4)
 darkstat (03360): starting up
 darkstat (03360): daemonizing to run in the background!
 darkstat (03360): parent waiting
 darkstat (03361): I am the main process
 darkstat (03362): set uid/gid to 65534/65534
 darkstat (03361): DNS child has PID 3362
 darkstat (03361): caplen is 54
 darkstat (03361): capturing in promiscuous mode
 darkstat (03361): listening on 0.0.0.0:667
 darkstat (03361): loaded 131 protos
 darkstat (03361): loaded 1002 tcp and 968 udp servs, from total 1975
 darkstat (03361): chrooted into: /var/run/darkstat
 darkstat (03361): set uid/gid to 65534/65534
 darkstat (03361): local_ip update(em0) = 61.60.59.58
 darkstat (03361): entering main loop
 darkstat (03360): parent done reading, calling waitpid
 darkstat (03360): waitpid ret 0, status is 0


檢查 Darkstat Service 是否啟動。
/usr/local/etc/rc.d/darkstat.sh status
 darkstat is running as pid 3361.


檢查 Darkstat Service 是否開啟服務的 Port (Default Listen Port 667)。
sockstat |grep 667
 nobody   darkstat   3361  10 tcp4   *:667                 *:*


檢查 Darkstat Process 是否執行中。
ps ax |grep darkstat
 3361  ??  Ss     0:00.01 /usr/local/sbin/darkstat -i em0 --chroot /var/run/darkstat --pidfile darkstat.pid --user nobody
 3362  ??  Is     0:00.00 darkstat: DNS child (darkstat)






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





5、參考






6、Me FAQ

Q1. 無法安裝 darkstat?

Error Message:
無法安裝 darkstat 並出現如下錯誤訊息?
cd /usr/ports/net-mgmt/darkstat ; make install clean
 On FreeBSD before 6.2 ports system unfortunately can not set default X11BASE by itself so please help it a bit by setting X11BASE=${LOCALBASE}
 in make.conf.On the other hand, if you do wish to use non-default X11BASE, please set variable USE_NONDEFAULT_X11BASE. *** Error code 1 Stop.


Ans:
因為本次安裝的機器為 FreeBSD 5.4-RELEASE-p7 而訊息也很清楚說明,若您在更新 Port Tree 後且您的 FreeBSD 版本為 6.2 以前的話,那麼在安裝此套件時會安裝 X11 套件若不想安裝 X11 套件的話可以把相關的參數加到 /etc/make.conf 內。
vi /etc/make.conf          //視個人需求加入吧
 X11BASE=${LOCALBASE}         //會安裝 X11 相關套件
 USE_NONDEFAULT_X11BASE=yes   //不安裝 X11 相關套件

    文章標籤: