UnixPower on Networking
  http://www.unix-power.net/

 
 Top - Linux - CentOS FlowViewerの設定



■FlowViewerのインストール


flow-toolsでCLIではフローを表示することができますが見やすいようにグラフ化を行います。これにはFlowScanというツールもありますが、FlowViewerのほうが詳細に条件などを指定して表示することができますのでこちらのみインストールします。これはyumからインストールすることができませんので以下のサイトからtarファイルをダウンロードします。

http://sourceforge.jp/projects/sfnet_flowviewer/releases/
( FlowViewer_4.2.tar )

依存関係として以下のソフトウェアが必要です。SiLKとlibfixbufはIPFIXを使用する場合のみ必要で、使用しない場合は不要なのでここではインストールしません。また、RRDtoolも既にインストールされているという前提です。

#   flow-tools  http://code.google.com/p/flow-tools (If collecting v5 only)
#   SiLK        http://tools.netsa.cert.org/silk    (If collecting IPFIX)
#   libfixbuf   http://tools.netsa.cert.org/silk    (If collecting IPFIX)
#   gd          http://www.libgd.org/Downloads
#   GD          http://search.cpan.org/~lds/GD-2.30
#   GD::Graph   http://search.cpan.org/~mverb/GDGraph-1.43
#   GD::Text    http://search.cpan.org/~mverb/GDTextUtil-0.86/Text
#   RRDtool     http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub


これらはyumからインストールを行います。

# yum install rrdtool gd perl-GD perl-GD-Graph perl-GD-Text-Util


上記以外にもブラウザから閲覧しますので当然のごとくWebサーバ ( Apache ) が必要となりますので注意してください。

続いて以下のようにFlowViewer本体をインストールします。まずtarファイルをサーバにアップロードし解凍します。

# tar xvf FlowViewer_4.2.tar
# cd FlowViewer_4.2
# ls

FG_button.png                  FlowTracker_Relay.cgi
FT_button.png                  FlowTracker_Replay.cgi
FV.cgi                         FlowTracker_Thumbnail
FV_Relay.cgi                   FlowViewer.cgi
FV_button.png                  FlowViewer.css
FlowGrapher.cgi                FlowViewer_CleanASCache
FlowGrapher_Colors             FlowViewer_CleanFiles
FlowGrapher_Main.cgi           FlowViewer_CleanHostCache
FlowGrapher_Relay.cgi          FlowViewer_Configuration.pm
FlowGrapher_Replay.cgi         FlowViewer_Main.cgi
FlowGrapher_Sort.cgi           FlowViewer_Relay.cgi
FlowTracker.cgi                FlowViewer_Replay.cgi
FlowTracker_AltDashboard       FlowViewer_Save.cgi
FlowTracker_Collector          FlowViewer_SaveManage.cgi
FlowTracker_Dashboard.cgi      FlowViewer_Sort.cgi
FlowTracker_Display.cgi        FlowViewer_UI.pm
FlowTracker_DisplayPublic.cgi  FlowViewer_Utilities.pm
FlowTracker_Dumper.cgi         Flow_Working
FlowTracker_Grapher            NamedInterfaces_Devices
FlowTracker_Group.cgi          NamedInterfaces_Exporters
FlowTracker_Main.cgi           README
FlowTracker_Management.cgi     logs
FlowTracker_Recreate           tools


解凍したファイルをApacheのドキュメントルートディレクトリに移動します。

# mv FlowViewer_4.2 /var/www/html/FlowViewer


続いてFlowViewer_Configuration.pmファイルを自身の環境に合わせて編集します。cgiファイルは特に制限は設けずどこでも動くように設定しています。

# vi FlowViewer_Configuration.pm

# Path variable

$ENV{PATH}              .= ':/usr/local/bin:/usr/sbin';

# Server

$FlowViewer_server    = "192.168.12.20"; # (IP address or hostname)

# Service

$FlowViewer_service   = "http";           # (http, or https)

# Directories and Files:

$reports_directory       = "/var/www/html/FlowViewer";
$reports_short           = "/FlowViewer";
$graphs_directory        = "/var/www/html/FlowGrapher";
$graphs_short            = "/FlowGrapher";
$tracker_directory       = "/var/www/html/FlowTracker";
$tracker_short           = "/FlowTracker";
$old_tracker_directory   = "/var/www/html/FlowTracker_4.1";
$cgi_bin_directory    = "/var/www/html/FlowViewer";
$cgi_bin_short        = "/FlowViewer";
$work_directory = "/var/www/html/FlowViewer/Flow_Working";

$work_short = "/FlowViewer/Flow_Working"; $save_directory = "/var/www/html/FlowViewer_Saves"; $save_short = "/FlowViewer_Saves"; $names_directory = "/var/www/html/FlowViewer"; $filter_directory = "/var/www/html/FlowTracker_Files/FlowTracker_Filters"; $rrdtool_directory = "/var/www/html/FlowTracker_Files/FlowTracker_RRDtool"; $dashboard_directory = "/var/www/html/FlowViewer_Dashboard"; $dashboard_short = "/FlowViewer_Dashboard"; #$flow_data_directory = "/var/flow-tools"; $exporter_directory = "/var/flow-tools"; $flow_bin_directory = "/usr/bin"; $rrdtool_bin_directory = "/usr/bin"; $silk_data_directory = "/data/flows"; $silk_bin_directory = "/usr/local/bin"; $sensor_config_directory = "/etc"; # General parameters $version = "4.2"; $no_devices_or_exporters = "N"; #@devices = ("router_1"); # for flow-tools @ipfix_devices = ("router_ipfix_1","router_ipfix_2"); # for SiLK, if none: @exporters = ("127.0.0.1:FlowTest");


上記の設定に合わせて必要なディレクトリを作成しておきます。

# pwd
/var/www/html
# mkdir FlowGrapher FlowTracker FlowViewer_Saves
# mkdir -p FlowTracker_Files/FlowTracker_Filters
# mkdir FlowTracker_Files/FlowTracker_RRDtool

# chown -R apache.apache Flow*


後はブラウザから以下のURLにアクセスします。IPアドレスは置き換えてください。

http://192.168.12.20/FlowViewer/FV.cgi

そうすると以下の画面が表示されます。画面真ん中上の「FlowViewer」をクリックします。




以下の画面が表示されます。最低限必要な設定でNetFlow Sourceのところで送信元のデバイスを選択します。




画面下の「Generate Textual Report」をクリックします。




そうすると指定した時間内のフローがテキストベースで表示されます。


これらはあくまでテキストベースで表示するものですが、グラフで表示することも可能です。最初のFV.cgiアクセス画面から「FlowGrapher」をクリックします。


ここでも同様にソースデバイスを選択しておきます。


その後、Generate Graph Reportをクリックします。


画面が切り替わってテキストと合わせてグラフも表示されるようになります。


その他、FlowTrackerというのも実装されていますが、私にとっては上記2つで必要十分なので試していません。時間があれば試してみたいと考えています。



 関連記事
 NetFlowの設定
 Flexible NetFlowの設定
 flow-toolsのインストール
 FlowViewerのインストール
 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.