在作安裝以前確認要對該機器擁有root權限。 確認你安裝好的linux系統上已經安裝以下軟件包再繼續。
Apache
GCC編譯器
GD庫與開發庫
Openssl-devel
能夠用yum命令來安裝這些軟件包,鍵入命令:
yum –y install httpd gcc glibc glibc‐common gd gd‐devel
|
1.2.1 創建nagios帳號
/usr/sbin/useradd nagios && passwd nagios
|
建立一個用戶組名爲nagcmd用於從Web接口執行外部命令。將nagios用戶和apache用戶都加到這個組中。
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod ‐G nagcmd nagios
/usr/sbin/usermod ‐G nagcmd apache
|
1.2.2 下載nagios和插件程序包
下載Nagios和Nagios插件的軟件包(訪問http://www.nagios.org/download/ 站點以得到最新版本)
cd /usr/local/src
wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nagios‐3.0.6.tar.gz
wget http://nchc.dl.sourceforge.net/sourceforge/nagiosplug/nagios‐plugins‐1.4.13.tar.gz
|
1.2.3 編譯與安裝nagios
cd /usr/local/src
tar zxvf nagios‐3.0.6.tar.gz
cd nagios‐3.0.6
./configure ‐‐with‐command‐group=nagcmd ‐ ‐prefix=/usr/local/nagios
make all
make install
make install‐init
make install‐config
make install‐commandmode
|
驗證程序是否被正確安裝。切換目錄到安裝路徑(這裏是/usr/local/nagios),看是否存在 etc、bin、 sbin、 share、 var這五個目錄,若是存在則能夠代表程序被正確的安裝到系統了。後表是五個目錄功能的簡要說明:
bin
|
Nagios執行程序所在目錄,nagios文件即爲主程序
|
etc
|
Nagios配置文件位置,初始安裝完後,只有幾個*.cfg-sample文件
3與2區別 對象配置文件都在etc/objects目錄下
|
sbin
|
Nagios Cgi文件所在目錄,也就是執行外部命令所需文件所在的目錄
|
Share
|
Nagios網頁文件所在的目錄
|
Var
|
Nagios日誌文件、spid 等文件所在的目錄
|
var/archives
|
Empty directory for the archived logs
|
var/rw
|
Empty directory for the external command file
|
1.2.4 編譯並安裝nagios插件 nagios‐plugins
cd /usr/local/src
tar zxvf nagios‐plugins‐1.4.13.tar.gz
cd nagios‐plugins‐1.4.13
./configure ‐‐with‐nagios‐user=nagios ‐‐with‐nagios‐group=nagios
‐‐perfix=/usr/local/nagios
make && make install
|
驗證:
ls /usr/local/nagios/libexec
會顯示安裝的插件文件,即全部的插件都安裝在libexec這個目錄下
1.2.5 配置WEB接口
方法一:直接在安裝nagios時 make install‐webconf
建立一個nagiosadmin的用戶用於Nagios的WEB接口登陸。記下你所設置的登陸口令,一下子你會用到它。
htpasswd ‐c /usr/local/nagios/etc/htpasswd.users nagiosadmin
重啓Apache服務以使設置生效。
service httpd restart
方法二:在httpd.conf最後添加以下內容:
#setting for nagios 20090325
#setting by bbs.linuxtone.org
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
<Directory "/usr/local/nagios/sbin">
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd
//用於此目錄訪問身份驗證的文件
Require valid-user
</Directory>
Alias /nagios /usr/local/nagios/share
<Directory "/usr/local/nagios/share">
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd
//用於此目錄訪問身份驗證的文件
Require valid-user
</Directory>
|
/usr/local/apache2/bin/htpasswd ‐c /usr/local/nagios/etc/htpasswd test
New password: (輸入12345)
Re‐type new password: (再輸入一次密碼)
Adding password for user test
查看認證文件的內容
less /usr/local/nagios/etc/htpasswd
test:OmWGEsBnoGpIc 前半部分是用戶名test,後面是加密後的密碼
本例添加的是test 用戶名,須要改 cgi.cfg 配置文件,容許test用戶
authorized_for_system_information=test
authorized_for_configuration_information=test
authorized_for_system_commands=test
authorized_for_all_services=test
authorized_for_all_hosts=nagiosadmin,test
authorized_for_all_service_commands=test
authorized_for_all_host_commands=test
若是有多用戶,請用逗號格開
|
1.2.6 啓動nagios
把Nagios加入到服務列表中以使之在系統啓動時自動啓動
chkconfig ‐‐add nagios
chkconfig nagios on
驗證Nagios的樣例配置文件
/usr/local/nagios/bin/nagios ‐v /usr/local/nagios/etc/nagios.cfg
若是沒有報錯,能夠啓動Nagios服務
service nagios start
1.2.7 更改SELinux設置
Fedora與SELinux(安全加強型Linux)同步發行與安裝後將默認使用強制模式。這會在你嘗試聯入Nagios的CGI時致使一個"內部服務錯誤"消息。
若是是SELinux處於強制安全模式時須要作
getenforce
令SELinux處於允許模式
setenforce 0
若是要永久性更變它,須要更改/etc/selinux/config裏的設置並重啓系統。
不關閉SELinux或是永久性變動它的方法是讓CGI模塊在SELinux下指定強制目標模式:
chcon ‐R ‐t httpd_sys_content_t /usr/local/nagios/sbin/
chcon ‐R ‐t httpd_sys_content_t /usr/local/nagios/share/
1.2.8 測試
登陸 http://localhost/nagios/ 輸入用戶名和密碼就能夠正常登陸了
1.2.9 使用NRPE監控LINUX上的」本地信息」
1.在被監控主機上
增長用戶
useradd nagios
設置密碼
passwd nagios
2.安裝nagios插件
tar ‐zxvf nagios‐plugins‐***.tar.gz
cd nagios‐plugins‐***
./configure
make
make install
chown nagios.nagios /usr/local/nagios
chown ‐R nagios.nagios /usr/local/nagios/libexec
|
3.安裝nrpe (監控機也安裝)
tar ‐zxvf nrpe‐***.tar.gz
cd nrpe‐2.8.1
./configure
make all
make install‐plugin
make install‐daemon
make install‐daemon‐config
/usr/local/nagios/libexec/check_nrpe ‐H localhost
|
會返回當前NRPE的版本
# /usr/local/nagios/libexec/check_nrpe ‐H localhost
NRPE v2.8.1
|
在監控與被監控機上啓動NRPE:
/usr/local/nagios/bin/nrpe ‐c /usr/local/nagios/etc/nrpe.cfg ‐d
|
鏈接遠程NRPE:
/usr/local/nagios/libexec/check_nrpe ‐H <IP_ADD>
|
也就是在本地用check_nrpe鏈接nrpe daemon是正常的
注:爲了後面工做的順利進行,注意本地防火牆要打開5666能讓外部的監控機訪問
/usr/local/nagios/libexec/check_nrpe –h查看這個命令的用法
能夠看到用法是check_nrpe –H 被監控的主機 ‐c要執行的監控命令
注意:‐c後面接的監控命令必須是nrpe.cfg文件中定義的.也就是NRPE daemon只運行nrpe.cfg中所定義的命令
打開nrpe.cfg下的遠程登入:
Vim /usr/local/nagios/nrpe.cfg
Allowed_hosts=127.0.0.1,10.1.16.111
|
注意,兩個IP地址中間是逗號