-----------------------------------主要软件应用-------------------------

FreeBSD  apache22 php5 php5-extension Ngios  Nagios-plugin  Nrpe  NSCclient++

-----------------------------------------系统安装-------------------------

1. FreeBSD采用最小化安装

2. 更新ports

# portsnap fetch

#portsnap extract

---------------------------------------------软件安装------------------------

1.  Nagios

#  cd /usr/ports//net-mgmt/nagios/

#  make instal clean

//此过程会询问建立用户和组nagios

2.  Nagios-plugin

#  cd /usr//net-mgmt/nagios-plugin/

#  make install

3.  NRpe  下载地址为:  http://www.nagios.org/download/addons    

  //如果所要监控的服务器中有linux,不要直接使用ports 安装,因为ports安装过后,其格式为check_nrpe2, 但是linux 采用源码安装的为check_nrpe. 从而导致两者之间不能通信

#  cd /usr/local

#  tar zxvf nrpe-2.12.tar.gz

#  cd nrpe-2.12

#   ./configure

#   make 

#   make install

网页服务器的安装请参考前人的文章

------------------------------------------------配置文件-------------------------

1. 查看/var/spool/nagios/下有没如下文件或文件夹,没则建立

drwxrwxr-x  2 nagios  nagios    3072 Apr 23 00:00 archives

drwxrwxr-x  2 nagios  nagios     512 Apr 23 13:53 checkresults

-rw-r--r--  1 nagios  nagios    1416 Feb  2 15:15 dead.letter

-rw-r--r--  1 nagios  nagios       0 Jan 27 11:30 nagios.debug

-rw-r--r--  1 nagios  nagios       4 Apr 21 16:45 nagios.lock

-rw-r--r--  1 nagios  nagios   19371 Apr 23 13:45 nagios.log

-rw-r--r--  1 nagios  nagios       0 Jan 26 14:31 object.cache

-rw-r--r--  1 nagios  nagios       0 Jan 26 14:31 object.precache

-rw-r--r--  1 nagios  nagios  125106 Apr 21 16:45 objects.cache

-rw-------  1 nagios  nagios  203289 Apr 23 13:45 retention.dat

drwxrwxr-x  2 nagios  nagios     512 Apr 21 16:45 rw

-rw-rw-r--  1 nagios  nagios  202933 Apr 23 13:53 status.dat

-rw-r--r--  1 nagios  nagios       0 Apr 21 16:45 status.sav

2. 

#  ee /usr/local/etc/nagios/nagios.cfg  //添加如下两行

   cfg_file=/usr/local/etc/nagios/objects/linux.cfg

cfg_file=/usr/local/etc/nagios/objects/windows.cfg

3.

#  cd /usr/local/etc/nagios/object/

#  ee linux.cfg

 ```````````````````````````````````````````````````````````````````````````````````````````

 define hostgroup{

        hostgroup_name  linux-servers ; The name of the hostgroup

        alias           linux Servers ; Long name of the group

        members         vici01,vici02,vici04

        }

###################### Server CPU Check ######################

define service{

        use                            generic-service 

        host_name                      vici01,vici02,vici04

        service_description            CPU Load

check_command        check_nrpe!check_load

       }

###################### / Driver Space ######################## 

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       vici01,vici02,vici04

        service_description             / Drive Space

check_command check_nrpe!check_/

        }

###################### Ping Check #######################

define service{

        use                             generic-service

        host_name                       vici01,vici02,vici04

        service_description             PING

        check_command                   check_ping!100.0,20%!500.0,60%

        }

###################### mysql Check #######################

define service{

        use                             generic-service

        host_name                       vici01

        service_description             Mysql

check_command check_mysql  

        }

#################### Host define config#################

                          

define host{

        use                     linux-server         

        host_name               vici01

        alias                   vicidial01 Server

        address                 192.168.2.xx

       }

define host{

        use                     linux-server

        host_name               vici02

        alias                   vicidial02 Server

        address                 192.168.2.xx

        }

define host{

        use                     linux-server

        host_name               vici04

        alias                   vicidial04 Server

        address                 192.168.1.xx

        }

`````````````````````````````````````````````````````````````````````````````````````````````````

4. 

#  ee windows.cfg

```````````````````````````````````````````````````````````````````````````````````````````````

define hostgroup{

        hostgroup_name  windows-servers ; The name of the hostgroup

        alias           windows Servers ; Long name of the group

       members         axisoft-symatec,axiadsvr01

        }

###################### Server Uptime Check ######################

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01        service_description             Uptime

check_command check_nt!UPTIME

        }

##################### Server CPU Check #########################

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01        service_description             CPU Load

check_command check_nt!CPULOAD!-l 5,80,90

        }

##################### Server Memory Check ######################

 

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01        service_description             Memory Usage

check_command check_nt!MEMUSE!-w 80 -c 90

        }

###################### C Driver Space ######################## 

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01        service_description             C:\ Drive Space

check_command check_nt!USEDDISKSPACE!-l c -w 98 -c 99

        }

################## D Driver Check #########################

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01

        service_description             D:\ Drive Space

check_command check_nt!USEDDISKSPACE!-l d -w 98 -c 99

        }

################ E Driver Check ###########################

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axisoft-symatec,axiadsvr01        service_description             E:\ Drive Space

check_command check_nt!USEDDISKSPACE!-l e -w 98 -c 99

        }

###################### F Driver Check ########################

define service{

        use                             generic-service         ; Name of service template to use

        host_name                       axiadsvr01

        service_description             F:\ Drive Space

check_command check_nt!USEDDISKSPACE!-l f -w 98 -c 99

        }

###################### Ping Check #######################

define service{

        use                             generic-service         ; Name of service template to use

        host_name               axisoft-symatec,axiadsvr01    

    service_description             PING

check_command check_ping!100.0,20%!500.0,60%  

        }

######################## Host define config#################

define host{

        use                     windows-server         

        host_name               axisoft-symatec

        alias                   endpoint

        address                 192.168.2.xx

        }

define host{

        use                     windows-server         

        host_name               axiadsvr01

        alias                   AD Server

        address                 192.168.2.xx

        }                   

``````````````````````````````````````````````````````````````````````````````````````````````````

4.

# ee /usr/local/nagios/nrpe.cfg

log_facility=daemon

pid_file=/var/spool/nagios/nrpe.pid

server_port=5666

nrpe_user=nagios

nrpe_group=nagios

allowed_hosts=127.0.0.1 192.168.xx.xx

dont_blame_nrpe=0

debug=0

command_timeout=60

connection_timeout=300

command[check_users]=/usr/local/libexec/nagios/check_users -w 5 -c 10

command[check_load]=/usr/local/libexec/nagios/check_load -w 15,10,5 -c 30,25,20

command[check_/]=/usr/local/libexec/nagios/check_disk -w 10% -c 5% -p /

command[check_var]=/usr/local/libexec/nagios/check_disk -w 10% -c 5% -p /var

command[check_tmp]=/usr/local/libexec/nagios/check_disk -w 10% -c 5% -p /tmp

command[check_usr]=/usr/local/libexec/nagios/check_disk -w 10% -c 5% -p /usr

command[check_home]=/usr/local/libexec/nagios/check_disk -w 10% -c 5% -p /home

command[check_zombie_procs]=/usr/local/libexec/nagios/check_procs -w 5 -c 10 -s Z

command[check_total_procs]=/usr/local/libexec/nagios/check_procs -w 150 -c 200 

`````````````````````````````````````````````````````````````````````````````````````````````````

5.

#  ee /usr/local/etc/apache22/Include/nagios.cfg

````````````````````````````````````````````````````````````````````````````````````````

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

<Directory "/usr/local/www/nagios/cgi-bin">

AuthType Basic

Options ExecCGI

AllowOverride None

Order allow,deny

Allow from all

AuthName "Nagios Access"

AuthUserFile /usr/local/etc/nagios/htpasswd.users

Require valid-user

</Directory>

Alias /nagios "/usr/local/www/nagios"

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

AuthType Basic

Options None

AllowOverride None

Order allow,deny

Allow from all

AuthName "nagios Access"

AuthUserFile /usr/local/etc/nagios/htpasswd.users

Require valid-user

</Directory>
至此,服务器端已完成,客户端待续```````````

linux 下的客户端安装,请参照如下附件: