close

現場(環境):CentOS 7.4        套件Nagios

 


Step 1. 安裝相關使用、編譯套件等前置作業

# yum install wget httpd php glibc glibc-common gd gd-devel make net-snmp unzip openssl-devel gcc

 

新增Nagios使用帳號

#useradd nagios -p nagios

#usermod -a -G nagios apache

 


Step 2. 下載Nagios主程式

 

連結到官網,找Nagios主程式

網址:https://www.nagios.org/

 

點選Download

 

拉到頁尾。可以下載。

可以填寫資料註冊,要點選下方skip to download也可以。

 

目前提供的有兩個版本。

最新版是nagios-4.3.4 (2017) / 前一版是nagios-4.2.4(2016)

雖然最新版已經推出快一年,但習慣上還是會先抓前一版。

避免有BUG發生。

有了連結後。我們就可以抓取Nagios Core回來安裝

 


Step 3. nagios 4.2.4 安裝

 

解壓縮

#tar -zxvf nagios-4.2.4.tar.gz

#cd nagios-4.2.4

 

開始進行編譯&安裝

#./configure

 

#make all

#make install

 

#make install-init

 

#make install-config

#make install-commandmode

#make install-webconf

 

基本上後面的make指令幾乎都是修改設定值。

 

另外在參考網址內有提到3D MAP的功能被拿掉(statuswrl CGI)

也能夠重新下載Cortona3D跟修正設定檔的方式拉回來。

這邊就先不說明。

 


Step 4. 安裝Nagios Plugin

主要的Script&監控伺服器的規則都寫在這邊。

建議要安裝。不然你監控起來會很麻煩。

Nagios Plugin 前置套件

#yum install epel-release

#yum install perl-Net-SNMP

#yum install openssl-devel radiusclient-ng-devel libdbi libdbi-devel samba-devel libsmbclient-devel samba-client net-snmp-devel net-snmp-utils gnutls-devel openldap-devel postgresql-devel

 

接著一樣連上官網下載Nagios-plugins

 

如果擔心版本太新。也可以直接抓舊的版本

wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz

解壓縮

#tar -zxvf nagios-plugins-2.1.4.tar.gz

#cd nagios-plugins-2.1.4

編譯&安裝

#./configure

#make && make install

安裝完成的檔案會存放在 /usr/local/nagios/libexec

 


Step 5. 設定登入Nagios WEB端帳號

 

建立 htpasswd.users檔案,變創建登入帳號

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagios

 

修改帳號登入的設定檔

# vim /usr/local/nagios/etc/cgi.cfg

預設是nagiosadmin,這邊修改成我們上面更改的nagios

這邊設定檔內有nagiosadmin的地方都要修改

(這邊是先舉出哪種的要修改,實際上要修改的地方蠻多的)

 

重啟伺服器Nagios & httpd伺服器。

# systemctl restart nagios

# systemctl restart httpd

之後就可以透過瀏覽器連線上去。

http://[Nagios IP]/nagios

輸入剛剛透過htpasswd建立的帳號密碼。就可以登入了。

看到Host的地方,

如果剛剛cgi.cfg內設定檔沒有把所有nagiosadmin都改成nagios帳號。

就會出現下面沒有權限看資料的狀況。

 

這個時候就直接把檔案內關於nagiosadmin帳號的值都直接替換吧

#sed -i “s/nagiosadmin/nagios/”  /usr/local/nagios/etc/cgi.cfg

#systemctl restart nagios

 

如果帳號都有修改好。表示權限都會是正常的。

會像下圖一樣正常出現畫面。

 


接著是設定的部份

我們先在要監控的主機上安裝NRPE  (TCP-5666 Port)

這個套件很好用,可以讓我們透過遠端叫被監控端執行指令回收資訊。

當然用的好。也可以用於遠端重啟服務上面。

被監控端以CentOS 7做範例

 

先下載NRPE套件

網址: https://github.com/NagiosEnterprises/nrpe

# git clone https://github.com/NagiosEnterprises/nrpe.git

# cd nrpe/

編譯並安裝

#./configure

 

輸入make可以看到。可以安裝什麼東西

#make all

 

進行安裝

# make install-groups-users

# make install

# make install-plugin

這個動作是把plugin內相關指令帶到/usr/local/nagios/libexec

 

# make install-daemon

 

#make install-config

將相關設定範本設定安裝到/usr/local/nagios/etc

 

#make install-inetd

檢視你的inetd類型。並將他安裝於適當位置

 

#make install-init

確認適合的init類型,並安裝啟動腳本

 

接著可以透過systemctl啟動nrpe服務。

#systemctl start nrpe

確認一下服務是否有啟動 (TCP -5666)

 

檢查一下現在nrpe是不是有正確運作

#/usr/local/nagios/libexec/check_nrpe -H localhost

要確認別台主機的狀況只要將-H 後面的IP 更換就好。

關於Server & Client的串接。下一篇再繼續說。

 


 

因為安裝NRPE通常是要讓Server端做連結。

所以我們要開放外部連線

原本只開放 127.0.0.1 (localhost) 。我們加上Nagios Server & IP

 

設定完後重啟nrpe服務

#systemctl restrat nrpe

到這邊基本設定完成,後續如果有要有特殊查詢指令

例如讓服務重啟、要主機運行什麼監測,

都要加在/usr/local/nagios/libexec/ 這個路徑下。

 


這邊先準備安裝Web端管理介面(NConf)

參考網址內有詳細的作法,

也有提到這個必須安全的網路環境中開啟比較好。

#yum install mariadb-server perl-DBI perl-DBD-MySQL php-mysql -y

#systemctl enable mariadb

#systemctl start mariadb

 

設定資料庫連線

#mysql_secure_installation

 

Linux 指令餵mysql指令到資料庫中。

(也可以登進資料庫做啦 -e後面帶的就是資料庫語法)

# mysql -u root -p -e "create database Nconf;"

 

# mysql -u root -p -e "grant all privileges on NConf.* to nconf@localhost identified by "nconf";"

# mysql -u root -p -e “flush privileges;”

更新權限

 

資料庫這邊才安裝的原因,是因為Nagios預設是將檔案儲存在裝置中,

而不是存在資料庫中,若是要儲存再資料庫中需要靠其他方法設定(NDoUtils)。

 

設定PHP.ini

# vim /etc/php.ini

Off 更改為 On

 

接著再添加兩行

=!==

short_open_tag = On (修改)

register_globals = Off (新增)

magic_quotes_gpc = Off (新增)

==!=

 

下載NConf安裝包

下載網址:https://sourceforge.net/projects/nconf/files/nconf/1.3.0-0/

# tar -zxvf nconf-1.3.0-0.tgz

# mv nconf /usr/local/nagios/share/

# chown apache:apache -R /usr/local/nagios/share/nconf

 

下面兩個是SElinux的相關設定。可依需求設定

# chcon -t usr_t -R /usr/local/nagios/share/nconf

# chcon -t httpd_sys_rw_content_t /usr/local/nagios/share/nconf/config

 

接著重啟Apache 服務就可以開始WEB端安裝

#systemctl restart httpd

 

接著透過瀏覽器連接到安裝頁面

http://[Nagios IP位址]/nagios/nconf/INSTALL.php

 

依照Step 進行相關操作

確認版本是否支援

 

資料庫連線

依照剛剛在Mariadb那邊建立的資料做填寫。

 

按下Next後會確認。都OK就可以下一步

 

 

這邊要確認各安裝路徑

 

這邊要依安裝檔狀況調整

 

是否要驗證登入

 

Summary

這邊確認都沒有問題就可以按下Finish

 

再來因為我們的安裝&更新的檔案都還在Web目錄下。

所以現在要續將他移除掉,不然就出現這個Error畫面。

# cd /usr/local/nagios/share/nconf/

# rm -rf INSTALL INSTALL.php UPDATE UPDATE.php

然後重整瀏覽器頁面

就可以看到登入頁面,預設帳號為admin,密碼則是剛剛輸入的。

 

 

接著就可以用WBE進行設定

 

關於安裝部份的操作先介紹到這邊。

<本篇完>

 

 

參考網址:

http://bigpxuan.blogspot.tw/2016/12/centos-7-nagios-4.html

 

 

 

 

 

 

 

arrow
arrow
    全站熱搜

    IT001 發表在 痞客邦 留言(0) 人氣()