Darkstatは、クロスプラットフォームで軽量、シンプルでリアルタイムなネットワーク統計ツールであり、ネットワークトラフィックをキャプチャし、使用状況に関する統計を計算し、レポートをHTTP経由で提供します。
Darkstatの特長:
- デフレート圧縮機能を備えた統合Webサーバー。
- ポータブルでシングルスレッドで効率的なWebベースのネットワークトラフィックアナライザー。
- Webインターフェースにはトラフィックグラフ、ホストごとのレポート、および各ホストのポートが表示されます。
- 子プロセスを使用した非同期リバースDNS解決のサポート。
- IPv6プロトコルのサポート。
必要条件:
- libpcap – ネットワークトラフィックのキャプチャ向けのポータブルなC/C++ライブラリ。
サイズが小さく、システムメモリリソースをほとんど使用せず、以下で説明するようにLinuxで簡単にインストール、設定、使用できます。
LinuxにDarkstatネットワークトラフィックアナライザーをインストールする方法
1. 幸運なことに、darkstatはRHEL/CentOSやDebian/Ubuntuなどの主要なLinuxディストリビューションのソフトウェアリポジトリに登録されています。
$ 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
に変更し、darkstatがリッスンするインターフェースをINTERFACEオプションで設定します。
そして、uncoment 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. 最後に、URL http://Server-IP:667 にアクセスしてdarkstatのWebインタフェースにアクセスします。

「on」と「off」ボタンをクリックすることで、グラフを自動的に再読み込みできます。
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親プロセスPPIDのIDを取得します:
$ pidof darkstat
次に、次のようにプロセスを終了させます:
$ sudo kill -SIGTERM 4790 OR $ sudo kill -15 4790
追加の使用オプションについては、darkstatのmanページを参照してください:
$ man darkstat
参照リンク:Darkstatホームページ
Linuxネットワークモニタリングに関連する以下の記事もお読みいただけます:
- Linuxパフォーマンスを監視するための20のコマンドラインツール
- Linuxパフォーマンスモニタリングツール13選
- Netdata – リアルタイムLinuxパフォーマンスモニタリングツール
- BCC – Linuxパフォーマンスおよびネットワークモニタリングのための動的ツール
以上です!この記事では、Linuxでdarkstatをインストールして使用して、ネットワークトラフィックをキャプチャし、使用状況を計算し、HTTP経由でレポートを分析する方法を説明しました。
質問やシェアしたい考えがありましたら、以下のコメントフォームをご利用ください。
Source:
https://www.tecmint.com/darkstat-web-based-linux-network-traffic-analyzer/