Darkstat – 基於Web的Linux網絡流量分析器

Darkstat 是一個跨平台、輕量、簡單、實時網絡統計工具,它可以捕捉網絡流量、計算關於使用情況的統計數據,並通過 HTTP 服務報告。

Darkstat 功能:

  • 集成的 Web 服務器,具有壓縮功能。
  • 便携式、單線程和高效的基於 Web 的網絡流量分析器。
  • Web 界面顯示流量圖表、每個主機的報告及每個主機的端口。
  • 支持使用子进程異步進行反向 DNS 解析。
  • 支持 IPv6 協議。

要求:

  • libpcap – 一個便携式的 C/C++ 網絡流量捕捉庫。

由於尺寸小巧,它使用非常少的系統記憶體資源,且在 Linux 下的安裝、配置和使用都非常簡單,如下所述。

如何在 Linux 中安裝 Darkstat 網絡流量分析器

1. 幸運的是,darkstat 可在主流 Linux 分發版的軟體倉庫中找到,如 RHEL/CentOS 和 Debian/Ubuntu。

$ sudo apt-get install darkstat		# Debian/Ubuntu
$ sudo yum install darkstat		# RHEL/CentOS
$ sudo dnf install darkstat		# Fedora 22+

2. 安装 darkstat 後,您需要在主配置文件 /etc/darkstat/init.cfg 中對它進行配置。

$ sudo vi /etc/darkstat/init.cfg

注意,為了本教程的目的,我們將只解釋必要的以及重要的配置選項,讓您開始使用此工具。

現在將 START_DARKSTAT 的值從 no 更改為 yes,並使用 INTERFACE 選項設定 darkstat 將監聽的介面。

請取消註釋DIR=”/var/lib/darkstat”和DAYLOG=”–daylog darkstat.log”選項以指定其目錄和日誌文件。

START_DARKSTAT=yes
INTERFACE="-i ppp0"
DIR="/var/lib/darkstat"
# File will be relative to $DIR:
DAYLOG="--daylog darkstat.log"

3.暫時啟動darkstat守護程序並將其啟用為系統啟動時的操作如下。

------------ On SystemD ------------ 
$ sudo systemctl start darkstat
$ sudo /lib/systemd/systemd-sysv-install enable darkstat
$ sudo systemctl status darkstat

------------ On SysV Init ------------
$ sudo /etc/init.d/darkstat start
$ sudo chkconfig darkstat on
$ sudo /etc/init.d/darkstat status

4. 默認情況下,darkstat聆聽端口667,因此在防火牆上打開該端口以允許訪問。

------------ On FirewallD ------------
$ sudo firewall-cmd --zone=public --permanent --add-port=667/tcp
$ sudo firewall-cmd --reload

------------ On IPtables ------------
$ sudo iptables -A INPUT -p udp -m state --state NEW --dport 667 -j ACCEPT
$ sudo iptables -A INPUT -p tcp -m state --state NEW --dport 667 -j ACCEPT
$ sudo service iptables save

------------ On UFW Firewall ------------
$ sudo ufw allow 667/tcp
$ sudo ufw reload

5.最後,通過訪問URLhttp://Server-IP:667訪問darkstat Web界面。

Darkstat Network Traffic Analyzer

您可以通過單擊onoff按鈕來自動重新加載圖形。

在Linux命令行中管理Darkstat

在這裡,我們將解釋一些從命令行中操作darkstat的重要示例。

6.要在eth0界面上收集網絡統計信息,可以像下面這樣使用-i標誌。

$ darkstat -i eth0

7.要在特定端口上提供Web頁面,請包含-p標誌,如下所示。

$ darkstat -i eth0 -p 8080

8.要監視特定服務的網絡統計信息,請使用-f或過濾器標誌。下面示例中的指定過濾器表達式將捕獲與SSH服務相關的流量。

$ darkstat -i eth0 -f "port 22"

最後但同樣重要的是,如果您希望以正確的方式關閉darkstat;建議向darkstat父進程發送SIGTERM或SIGINT信號。

首先,使用 pidof 命令 获取 darkstat 的父进程 IDPPID):

$ pidof darkstat

然后像这样终止该进程:

$ sudo kill -SIGTERM 4790
OR
$ sudo kill -15 4790

欲了解更多用法选项,请阅读 darkstat 手册:

$ man darkstat

参考链接:Darkstat 主页

您可能也想阅读以下关于 Linux 网络监控的相关文章:

  1. 20 个用于监控 Linux 性能的命令行工具
  2. 13 个 Linux 性能监控工具
  3. Netdata – 实时 Linux 性能监控工具
  4. BCC – Linux 性能和网络监控的动态工具

就是这样!在本文中,我们解释了如何在 Linux 中安装和使用 darkstat 来捕获网络流量、计算使用情况并分析 HTTP 报告。

如果您有任何问题或想法要分享,请使用下方的评论表单?

Source:
https://www.tecmint.com/darkstat-web-based-linux-network-traffic-analyzer/