1.系统:CentOS 5.4 x64_x86
2.安装前准备:(关闭防火墙)
1).安装好apache,php,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/下载nrpe和nsclient++插件。
# 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来安装主程序,CGI和HTML文件
# 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 (取消#注释)
Nagios的web验证
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