Linux下Nagios的安装与配置(二)

三、实验环境

Host Name OS IP Software
Nagios-Server CentOS release 5.8 (Final) 192.168.128.132 Apache、Php、Nagios、nagios-plugins、nagios-cn
Nagios-Linux CentOS release 5.8 (Final) 192.168.128.133 nagios-plugins、nrpe
Nagios-Windows Windows XP 192.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 各个目录用途说明如下:

bin Nagios 可执行程序所在目录
etc Nagios 配置文件所在目录
sbin Nagios CGI 文件所在目录,也就是执行外部命令所需文件所在的目录
share Nagios网页文件所在的目录
libexec Nagios 外部插件所在目录
var Nagios 日志文件、lock 等文件所在的目录
var/archives Nagios 日志自动归档目录
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)


你可能感兴趣的:(linux,防火墙,服务端,客户端,nagios,nagios安装)