【zabbix】部署nfsen監(jiān)控netflow

運維監(jiān)控/Zabbix/Ansible自動化運維/云撥測

netflow和sflow可以幫助我們分析網(wǎng)絡(luò)中的流量構(gòu)成葫笼,抓取實施帶寬使用情況祝闻,幫我們找出"hog"。作為collector的軟件一般都是收費的草添,例如solarwinds NTA酪劫,sflowTrend-Pro,ntopng商業(yè)版等珊蟀。不過也有開源的解決方案菊值,例如ntopng社區(qū)版和nfsen。

以下是基于cenos7.5部署nfsen的過程:

一、安裝nfsen 需要以下依賴:

rrdtool和perl模塊及所需組件

使用以下yum命令安裝:

yum -y install httpd php perl-rrdtool rrdtool rrdtool-devel rrdutils flex byacc perl-Socket6 perl-MailTools perl-Mail-Sender perl-Sys-Syslog perl-Module-Install.noarch

perl-Mail-Sender-0.8.23-1.el7.noarch.rpm和rrdutils-5.2.1-1.el6.rf.noarch.rpm 這兩個文件為rrdutils和perl-Mail-Sender腻窒,yum源無法安裝這兩個的時候使用昵宇,rpm -ivh 安裝即可。

二儿子、Web環(huán)境的部署:

vi /etc/httpd/conf/httpd.conf #修改apache配置文件

添加以下語句:

AddType application/x-tar .tgz #查找AddType

AddType application/x-httpd-php .php

index.php nfsen.php #查找index.html將index.php和nfsen.php加至句末

編寫測試頁面:

vi /var/www/html/index.php

內(nèi)容如下:

<?php

phpinfo();

?>

關(guān)閉防火墻或放通80端口瓦哎,關(guān)閉selinux

systemctl stop firewalld

setenforce 0

重新啟動httpd使配置生效

systemctl restart httpd

打開瀏覽器輸入該服務(wù)器的IP地址,可查看到界面為php測試界面即apache+php環(huán)境配置完畢典徊。

三杭煎、安裝Nfdump工具----用于抓包主要軟件

wget?http://downloads.sourceforge.net/project/nfdump/stable/nfdump-1.6.11/nfdump-1.6.11.tar.gz?下載

或使用附件:nfdump-1.6.11.tar.gz

使用以下命令安裝:

tar -zxf nfdump-1.6.11.tar.gz

cd nfdump-1.6.11

./configure --enable-nfprofile --enable-nftrack --with-rrdpath=/usr/local/rrdtool

make

make install

cp bin/nftrack /usr/local/bin/ #后面配置Portracker插件的時候需用到

使用nfdump -V命令能看到版本信息,表示安裝完成:

四卒落、安裝并配置Nfsen

wget?http://iweb.dl.sourceforge.net/project/nfsen/stable/nfsen-1.3.6p1/nfsen-1.3.6p1.tar.gz

下載

或使用附件:nfsen-1.3.6p1.tar.gz

mkdir -p /usr/local/nfsen

tar zxvf nfsen-1.3.6p1.tar.gz

cd nfsen-1.3.6p1/

cp etc/nfsen-dist.conf etc/nfsen.conf

修改Nfsen配置文件:

vi etc/nfsen.conf

內(nèi)容如下:

$BASEDIR = "/usr/local/nfsen";

$HTMLDIR = "/var/www/html/nfsen/";

$USER = "apache";

$WWWUSER = "apache";

$WWWGROUP = "apache";

%sources = (

'upstream1' => { 'port' => '9995', 'col' => '#0000ff', 'type' => 'netflow' },

'peer1' => { 'port' => '9996', 'IP' => '172.16.17.18' },

'peer2' => { 'port' => '9996', 'IP' => '172.16.17.19' },

); #9995為接收網(wǎng)絡(luò)設(shè)備netflow的端口

修改完成后羡铲,保存并退出。

安裝Nfsen:

./install.pl etc/nfsen.conf

執(zhí)行安裝命令后儡毕,回車使用默認配置安裝即可也切。

安裝時若報一個204行限制訪問的錯誤,需要修改install.pl腰湾,注釋掉203-205這三行:

vi install.pl

if ( scalar @out != 2 ) {

die "Error getting nfdump version";

}

然后重新執(zhí)行安裝即可雷恃。

五、Nfsen插件PortTracker配置

新建PortTracker數(shù)據(jù)存放目錄:

mkdir /usr/local/nfsen/ports-db

chown -R apache:apache /usr/local/nfsen/ports-db/

編輯PortTracker.pm修改$PORTSDBDIR目錄:

注意:該目錄為解壓nfsen-1.3.6p1.tar.gz后cd nfsen-1.3.6p1的目錄费坊。

vi contrib/PortTracker/PortTracker.pm

修改的內(nèi)容如下:

my $PORTSDBDIR = "/usr/local/nfsen/ports-db";

復(fù)制PortTracker插件至相應(yīng)目錄:

cp contrib/PortTracker/PortTracker.pm /usr/local/nfsen/plugins/

cp contrib/PortTracker/PortTracker.php /var/www/html/nfsen/plugins/

修改Nfsen配置文件添加插件信息:

vi /usr/local/nfsen/etc/nfsen.conf

內(nèi)容如下:

@plugins = (

[ 'live', 'PortTracker' ],

);

生成PortTracker測試數(shù)據(jù):

(執(zhí)行完此命令后倒槐,需要等待一段時間)

sudo -u apache /usr/local/bin/nftrack -I -d /usr/local/nfsen/ports-db/

執(zhí)行完成后如下圖所示:

啟動Nfsen:

/usr/local/nfsen/bin/nfsen start

ps -ef | grep nfsen 可以看到nfsen的進程

讓apache加載nfsen:

vi /etc/httpd/conf/httpd.conf #修改apache配置文件

修改后的內(nèi)容如下:

DocumentRoot "/var/www/html/nfsen"

修改完成后,保存并退出附井。

重新啟動httpd使配置生效

systemctl restart httpd

打開瀏覽器輸入該服務(wù)器的IP地址讨越,可查看到界面為nfsen的界面。

部署nfsen完成永毅。

六把跨、附加:使用flowexport把cenos網(wǎng)卡的流量發(fā)到9995端口就行監(jiān)控

https://www.flowtraq.com/?flowtra官網(wǎng),可下載flowexport

附件:flowexport_linux_x86_64.bin

上傳flowexport_linux_x86_64.bin 到任意目錄下

chmod +x flowexport_linux_x86_64.bin 授權(quán)

執(zhí)行以下命令:把網(wǎng)卡ens160的流量發(fā)到127.0.0.1的9995端口沼死,發(fā)送間隔最小30秒最大60秒:

./flowexport_linux_x86_64.bin -i ens160 -nf5 127.0.0.1 9995 -a 30 -e 60

ping ens160網(wǎng)卡的IP着逐,即可產(chǎn)生一些icmp的流量,大概1分鐘后意蛀,可在nfsen界面上看到流量圖有流量了耸别。

七、附加:安裝HostStats插件

用hoststats,可以根據(jù)時間來顯示流量狀況.

安裝編譯需要的環(huán)境

yum -y install gcc gcc-c++ gcc-g77

附件:libnfdump.tar.gz 和hoststats-1.1.5.tar.gz

tar zxvf hoststats-1.1.5.tar.gz

cd hoststats-1.1.5

上傳libnfdump.tar.gz到該目錄下

./install-libnfdump.sh

mkdir /var/www/html/hoststats/

./configure

make

make install

這個時候會提示要確認安裝路徑,輸入/var/www/html/hoststats/

chown apache:apache -R /var/www/html/hoststats

啟動

/var/www/html/hoststats/hoststats start

重新啟動Nfsen:

/usr/local/nfsen/bin/nfsen stop

/usr/local/nfsen/bin/nfsen start

如要添加到/etc/rc.local,開機啟動:

echo ‘/var/www/hoststats/hoststats start‘ >> /etc/rc.local

以上步驟完成后,稍等幾分鐘,即可在plugins菜單上看到界面.

如出現(xiàn)提示錯誤:Fatal error: Call to undefined function mb_convert_encoding() in /var/www/html/nfsen/plugins/HostStats/libs/Nette/Utils/Strings.php on line 61

解決方法:

1.首先安裝 php-mbstring庫文件:

yum install php-mbstring

2.之后县钥,修改/etc/php.ini文件太雨,在里面加一句

extension=mbstring.so

3.保存后重啟httpd服務(wù)。

service httpd restart

關(guān)于界面操作教程魁蒜,以下網(wǎng)址參考:

http://blog.sina.com.cn/s/blog_704836f40102w9xa.html

//////////////////////////////////////////////////////////////////////////////////////////////

11囊扳、若需修改時間顯示粒度及設(shè)置filter輸入框字符限制(默認50字符)可修改如下:

vim /var/www/html/nfsen/details.php

1277行 <textarea name="filter" id="filter" multiline="true" wrap="phisical" rows="6" cols="50" maxlength="100"><?php

vim /var/www/html/nfsen/nfsenutil.php

430行 ( time() - $_SESSION['PluginListUpdate'] < 600 ) ) {

456行 ( time() - $_SESSION['ProfileListUpdate'] < 600 ) ) {

633行 ( time() - $_SESSION['DefaultFiltersUpdate'] < 600 ) ) {

12吩翻、web頁面如需設(shè)置用戶名密碼登陸可按如下配置:

vim /etc/httpd/conf/httpd.conf

在最后添加如下(開啟http的訪問驗證功能):

<Directory /var/www/html/nfsen>

Options Indexes FollowSymLinks

allowoverride authconfig

order allow,deny

allow from all

</Directory>

然后設(shè)置訪問限制配置文件:

vim /var/www/html/nfsen/.htacces

編寫如下內(nèi)容:

Authname "Authorized users only. All activity may be monitored and reported!"

Authtype basic

Authuserfile /etc/httpd/conf/.htpasswd

require valid-user

配置訪問用戶名及密碼:

htpasswd -bc /etc/httpd/conf/.htpasswd 用戶名 密碼

其他插件安裝參考:

http://www.mamicode.com/info-detail-1331877.html

附件:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市锥咸,隨后出現(xiàn)的幾起案子狭瞎,更是在濱河造成了極大的恐慌,老刑警劉巖搏予,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件熊锭,死亡現(xiàn)場離奇詭異,居然都是意外死亡雪侥,警方通過查閱死者的電腦和手機碗殷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來速缨,“玉大人锌妻,你說我怎么就攤上這事⊙” “怎么了仿粹?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長原茅。 經(jīng)常有香客問我吭历,道長,這世上最難降的妖魔是什么擂橘? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任晌区,我火速辦了婚禮,結(jié)果婚禮上通贞,老公的妹妹穿的比我還像新娘朗若。我一直安慰自己,他們只是感情好滑频,可當(dāng)我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著唤冈,像睡著了一般峡迷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上你虹,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天绘搞,我揣著相機與錄音,去河邊找鬼傅物。 笑死夯辖,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的董饰。 我是一名探鬼主播蒿褂,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼圆米,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了啄栓?” 一聲冷哼從身側(cè)響起娄帖,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎昙楚,沒想到半個月后近速,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡堪旧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年削葱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片淳梦。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡析砸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谭跨,到底是詐尸還是另有隱情干厚,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布螃宙,位于F島的核電站蛮瞄,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏谆扎。R本人自食惡果不足惜挂捅,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望堂湖。 院中可真熱鬧闲先,春花似錦、人聲如沸无蜂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽斥季。三九已至训桶,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間酣倾,已是汗流浹背舵揭。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留躁锡,地道東北人午绳。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像映之,于是被迫代替她去往敵國和親拦焚。 傳聞我的和親對象是個殘疾皇子蜡坊,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容