1.系统:CentOS 5.4  x64_x86

 

2.安装前准备:(关闭防火墙)

1).安装好apachephp,php-gd库。

#yum install httpd php php-gd

2).下载Nagios3.5.0,Nagios-plugins1.4.16,nrpe2.14,nsclient++

http://www.nagios.org/download/

#Nagios3.5.0,Nagios-plugins1.4.16,nrpe2.14安装在监控服务器上。

# http://www.nagios.org/download/addons/下载nrpensclient++插件。

# nrpe2.12安装在Linux/Unix被监控端。

# nsclient++安装在Windows被监控端。

创建用户和用户组

# useradd -s /sbin/nologin nagios

# mkdir /usr/local/nagios

# chown -R  nagios.nagios /usr/local/nagios

编译安装Nagios

# tar zxvf nagios-3.5.0.tar.gz

# cd nagios

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

       #指定Nagios的安装目录,这里指定将Nagios安装在/usr/local/nagios目录下

# make all

# make install

       # 使用make install来安装主程序,CGIHTML文件

# make install-init

       # 使用make install-init/etc/rc.d/init.d目录下创建Nagios启动脚本

# make install-commandmode

       # 使用make install-commandmode来配置目录权限

# make install-config

       # 使用make install-cofig来安装示例配置文件,安装的路径是/usr/local/nagios/etc

# make install-webconf

       #使用make install-webconf来安装apache的配置文件

nagios目录功能的简要说明:

bin      Nagios执行程序所在目录,nagios文件即为主程序

etc      Nagios配置文件位置

sbin    Nagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录

Share  Nagios网页文件所在的目录

var      Nagios日志文件、spid 等文件所在的目录

var/archives    日志归档目录

var/rw    用来存放外部命令文件

 

设置开机启动

# chkconfig --add nagios

# chkconfig nagios on

# chkconfig nagios --list

nagios           0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭

安装Nagios插件

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

# cd nagios-plugins-1.4.16

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

# make

# make install

配置Apache

(1)  首先在Apache配置文件/etc/httpd/conf/http.conf中修改Apache进程的启动用户为Nagios,即找到:

User apache        修改为:       User nagios

Group apache     修改为:       Group nagios

(2)  然后服务器支持首页index.php:

DirectoryIndex index.html index.html.var修改为:DirectoryIndex index.html index.php

(3)添加:AddType application/x-httpd-php .php

(4)打开 AddHandler cgi-script .cgi (取消#注释)

Nagiosweb验证

Nagios为了安全一般要求必须经过授权才可以访问Web监控界面,因此需要增减验证配置。

Nagios在编译make install-webconf时在/etc/httpd/conf.d下添加了nagios.conf配置文件。如果没有的话需要修改apache主配置文件添加如下内容:

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.users

   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.users

   Require valid-user

</Directory>

 创建Apache目录验证服务

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

New password: (输入密码)

Re-type new password: (再输入一次)

Adding password for user qfly

重启服务验证:

# service httpd restart

# service nagios restart