.实验描述

系统:
SUSE Linux Enterprise 10 64-bit
nagios
服务器
IP
192.168.1.122
所需软件:
nagios-3.2.0.tar.gz
                    nagios-cn-3.2.0.tar.bz2
                    nagios-plugins-1.4.15.tar.gz
                    apache2-2.2.3-16.21
                    apache2-mod_php5-5.2.5-9.20
.
安装
nagios
主程序
1.
创建用户及目录并设定权限
#groupadd nagios
#useradd -g nagios nagios
#mkdir /usr/local/nagios
#chown -R nagios.nagios /usr/local/nagios
2.
编译安装
# tar zxvf nagios-3.2.0.tar.gz
# cd nagios-3.2.0/
# ./configure --prefix=/usr/local/nagios/ --with-gd-lib=/usr/local/lib --with-gd-inc=/usr/local/include/
报错

解决方法:安装
GCC
,如下显示表示正常

# make all  
出现以下提示,然后按照提示逐步安装就
OK

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

# make install-init   ///etc/rc.d/init.d安装启动脚本

# make install-commandmode   //配置目录权限

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

# make install-webconf

3.
验证时否安装成功
切换目录到
/usr/local/nagios/
查看是否有以下几个文件存在,如果存在则表示程序被正确的安装到系统上啦
 

bin                                         nagios执行程序所在目录,nagios文件既为主程序
etc                                         nagios配置文件位置,初始安装完后,只有几个*.cfg文件
sbin                                       nagios cgi文件所在目录。也就是执行外部命令所需文件所在的目录
share                                    nagios网页文件所在的目录
var                                         nagios日志文件,spid等文件所在目录
.
安装插件
1.
编译安装
# tar zxvf nagios-plugins-1.4.15.tar.gz
# cd nagios-plugins-1.4.15/
# ./configure --prefix /usr/local/nagios/

# make && make install

# ls /usr/local/nagios/libexec/          \\显示一下内容表示插件安装成功

.
安装
apache2

# vim /etc/apache2/uid.conf \\
修改成一下内容

 

# vim /etc/apache2/httpd.conf   \\在最后面添加一下内容

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/sbin/htpasswd2 -c /usr/local/nagios/etc/htpasswd shilong

重启
apache
nagios
,输入访问地址
http://192.168.1.100/nagios
.
监控局域网主机(
windows
linux
都行)
1.
修改
nagios
主配置文件
# cd /usr/local/nagios/etc
# vim nagios.cfg

2.
添加配置文件
# vim /usr/local/nagios/etc/objects/hosts.cfg

define host {
        host_name                  192.168.1.1
        alias                       Hillstone Firewall \\别名
        address                    192.168.1.1   \\填写被监控主机IP
 
 
 
        contact_groups          admins         \\这个值是来自contacts.cfg文件里面,contactgroup_name后面的值
       check_command           check-host-alive 
        max_check_attempts       5
        notification_interval       10
        notification_period        24x7
        notification_options       d,u,r
   }
# vim /usr/local/nagios/etc/objects/servers.cfg

define service {
        host_name                       192.168.1.1
        service_description         check-host-alive
        check_period                   24x7
        max_check_attempts      4
        normal_check_interval    3
        retry_check_interval        2
        contact_groups                admins \\此处的值同上
        notification_interval        10
        notification_period          24x7
        notification_options        w,u,c,r
        check_command              check-host-alive   \\检查主机是否存活
        }
如果监控多个主机只需要在
hosts.cfg
添加多个
host,
并在
servers.cfg
里面也添加相关配置
3.
配置报警发送邮件
# vim /usr/local/nagios/etc/objects/contacts.cfg

.
配置所遇到的报错
1.
如果这里打开页面出现403错误,证明你的php没有安装(我这里就安装啦一个apache2-mod_php5-5.2.5-9.20然后把相关的依赖包都安装上去啦)。重启apache,nagios页面就出来啦。
2.nagios web
页面提示
It appears as though you do not have permission to view information for any of the services you requested...
打开
cgi.cfg
配置文件,里面有个参数
:
use_authentication=1
为了保障系统的安全性,
nagios
设置了这个参数,默认为
1,
改为
0
即可
3
页面显示

查看
nagios
进程是否启动。如果没有则进行以下操作
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
4.nagios
页面有部分是乱码
,
如图
:
 

发现是
apache
配置文件的编码问题
修改
/etc/apache2/httpd.conf
最后添加
AddDefaultCharset utf-8