Linux下Nagios的安裝與配置(二)

三、實驗環境

Host NameOSIPSoftware
Nagios-ServerCentOS release 5.8 (Final)192.168.128.132Apache、Php、Nagios、nagios-plugins、nagios-cn
Nagios-LinuxCentOS release 5.8 (Final)192.168.128.133nagios-plugins、nrpe
Nagios-WindowsWindows XP192.168.120.47 NSClient++

Server 安裝了nagios軟件,對監控的數據做處理,並且提供web界面查看和管理。當然也可以對本機自身的信息進行監控。

Client 安裝了NRPE等客戶端,根據監控機的請求執行監控,然後將結果回傳給監控機。

防火牆已關閉/iptables: Firewall is not running.

SELINUX=disabled

四、實驗目標

wKiom1Mp0R6haCr2AAGSaJuvGlo107.jpg

五、Nagios服務端安裝

5.1 基礎支持套件:gcc glibc glibc-common gd gd-devel xinetd openssl-devel

   配置好本地yum源,掛載ISO鏡像文件

   # yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel

5.2 創建nagiosadmin用戶和用戶組

   # useradd -s /sbin/nologin nagiosadmin

   # mkdir /usr/local/nagios

   # chown -R nagiosadmin:nagiosadmin /usr/local/nagios

查看nagios 目錄的權限

   # ll -d /usr/local/nagios/

5.3 編譯安裝Nagios

   # wget http://nchc.dl.sourceforge.net/project/nagios/nagios-3.x/nagios-3.4.3/nagios-3.4.3.tar.gz

   # tar zxvf nagios-3.4.3.tar.gz

   # cd nagios

   # ./configure --prefix=/usr/local/nagios

   # make all

   # make install                                #命令對主程序,cgi及html進行安裝

   # make install-init                           #命令在/etc/rc.d/init.d/目錄中安裝啓動腳本

   # make install-commandmode        #命令來安裝和配置外部命令對Nagios主路徑操作的權限。(這裏所謂的外部命令主要是指Apache服務通過CGI來對Nagios的進行的操作。用戶將通過Web以執行CGI程序腳本的方式來對Nagios的檢測結果進行讀取和調用。)

   # make install-config                #命令在/usr/local/nagios/etc/下安裝nagios配置文件示例模版

   # chkconfig --add nagios

   # chkconfig --level 35 nagios on

   # chkconfig --list nagios

5.4 驗證程序是否被正確安裝

切換目錄到安裝路徑(這裏是/usr/local/nagios),看是否存在etc、bin、sbin、share、var 這五個目錄,如果存在則可以表明程序被正確的安裝到系統了。Nagios 各個目錄用途說明如下:

binNagios 可執行程序所在目錄
etcNagios 配置文件所在目錄
sbinNagios CGI 文件所在目錄,也就是執行外部命令所需文件所在的目錄
shareNagios網頁文件所在的目錄
libexecNagios 外部插件所在目錄
varNagios 日誌文件、lock 等文件所在的目錄
var/archivesNagios 日誌自動歸檔目錄
var/rw用來存放外部命令文件的目錄

# cd /usr/local/nagios/

# tree -L 1

.

|-- bin

|-- etc

|-- include

|-- libexec

|-- sbin

|-- share

`-- var

5.5 安裝Nagios 插件,下載地址(https://nagios-plugins.org/download/)

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

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

   # cd nagios-plugins-1.4.16

   # ./configure --prefix=/usr/local/nagios

   # make && make install

5.6 安裝nagios漢化包(nagios-cn-3.2.3.tar.bz2) (選裝)

   # tar -jxvf nagios-cn-3.2.3.tar.bz2
   # cd nagios-cn-3.2.3
   # ./configure
   # make && make install

5.7 安裝與配置Apache和Php

Apache 和Php 不是安裝nagios 所必須的,但是nagios提供了web監控界面,通過web監控界面可以清晰的看到被監控主機、資源的運行狀態,因此,安裝一個web服務是很必要的。
需要注意的是,nagios在nagios3.1.x版本以後,配置web監控界面時需要php的支持。這裏我們下載的nagios版本爲nagios-3.4.3,因此在編譯安裝完成apache後,還需要編譯php模塊,這裏選取的php版本爲php5.4.10。

a. 安裝Apache(編譯時入加 --with-included-apr 即可解決。----此處如果安裝系統時系統相關庫程序都安裝了,一般不需要;)

  # wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz

   # tar zxvf httpd-2.2.23.tar.gz

   # cd httpd-2.2.23

   # ./configure --prefix=/usr/local/apache2

   # make && make install

b. 安裝Php

   # wget http://cn2.php.net/distributions/php-5.4.10.tar.gz

   # tar zxvf php-5.4.10.tar.gz

   # cd php-5.4.10

   # ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs

   # make && make install

c. 配置apache
找到apache 的配置文件/usr/local/apache2/conf/httpd.conf

找到: User daemon             改爲:User nagiosadmin

       Group daemon                  Group nagiosadmin

<IfModule dir_module>

  DirectoryIndex index.html index.php          #添加index.php

</IfModule>

   AddType application/x-httpd-php .php          #增加此行

爲了安全起見,一般情況下要讓nagios 的web 監控頁面必須經過授權才能訪問,這需要增加驗證配置,即在httpd.conf 文件最後添加如下信息:

#setting for nagios

ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"

<Directory "/usr/local/nagios/sbin">

    AuthType Basic

    Options ExecCGI

    AllowOverride None

    Order allow,deny

    Allow from all

    AuthName "Nagios Access"

    AuthUserFile /usr/local/nagios/etc/htpasswd          //用於此目錄訪問身份驗證的文件

    Require valid-user

</Directory>

Alias /nagios "/usr/local/nagios/share"

<Directory "/usr/local/nagios/share">

    AuthType Basic

    Options None

    AllowOverride None

    Order allow,deny

    Allow from all

    AuthName "nagios Access"

    AuthUserFile /usr/local/nagios/etc/htpasswd

    Require valid-user

</Directory>

d. 創建apache目錄驗證文件

在上面的配置中,指定了目錄驗證文件htpasswd,下面要創建這個文件:

   # /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd david

這樣就在/usr/local/nagios/etc 目錄下創建了一個htpasswd 驗證文件,當通過http://ip/nagios/ 訪問時就需要輸入用戶名和密碼了。(此處需要對/usr/local/nagios/etc/cgi.cfg中後添加用戶david類似:“

authorized_for_all_host_commands=nagiosadmin,david” ,解決權限問題

e. 查看認證文件的內容

   # cat /usr/local/nagios/etc/htpasswd

f. 啓動apache 服務

   # /usr/local/apache2/bin/apachectl start

到這裏nagios 的安裝也就基本完成了,你可以通過web來訪問了http://192.168.128.132/nagios(輸入剛創建的帳號david)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章