zoukankan      html  css  js  c++  java
  • Nagios3完整配置文档

    第一章:简单快速安装nagios

    1.1 准备软件包

    在做安装之前确认要对该机器拥有root权限。 确认你安装好的linux系统上已经安装如下软件包再继续。

    Apache

    GCC编译器

    GD库与开发库

    Openssl-devel

    可以用yum命令来安装这些软件包,键入命令:

    yum –y install httpd gcc glibc glibc-common gd gd-devel

    1.2 操作过程

    1.2.1 建立nagios账号

    /usr/sbin/useradd nagios && passwd nagios

    创建一个用户组名为nagcmd用于从Web接口执行外部命令。将nagios用户和apache用户都加到这个组中。

    /usr/sbin/groupadd nagcmd

    /usr/sbin/usermod -G nagcmd nagios

    /usr/sbin/usermod -G nagcmd apache

    1.2.2 下载nagios和插件程序包

    下载Nagios和Nagios插件的软件包(访问http://www.nagios.org/download/ 站点以获得最新版本)

    cd /usr/local/src

    wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz

    wget http://nchc.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz

    1.2.3 编译与安装nagios

    cd /usr/local/src

    tar zxvf nagios-3.0.6.tar.gz

    cd nagios-3.0.6

    ./configure --with-command-group=nagcmd - -prefix=/usr/local/nagios

    make all

    make install

    make install-init

    make install-config

    make install-commandmode

    验证程序是否被正确安装。切换目录到安装路径(这里是/usr/local/nagios),看是否存在 etc、bin、 sbin、share、 var这五个目录,如果存在则可以表明程序被正确的安装到系统了。后表是五个目录功能的简要说明:

    bin

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

    etc

    Nagios配置文件位置,初始安装完后,只有几个*.cfg-sample文件

    3与2区别 对象配置文件都在etc/objects目录下

    sbin

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

    Share

    Nagios网页文件所在的目录

    Var

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

    var/archives

    Empty directory for the archived logs

    var/rw

    Empty directory for the external command file

    1.2.4 编译并安装nagios插件 nagios-plugins

    cd /usr/local/src

    tar zxvf nagios-plugins-1.4.13.tar.gz

    cd nagios-plugins-1.4.13

    ./configure --with-nagios-user=nagios --with-nagios-group=nagios

    --perfix=/usr/local/nagios

    make && make install

    验证:

    ls /usr/local/nagios/libexec

    会显示安装的插件文件,即所有的插件都安装在libexec这个目录下

    1.2.5 配置WEB接口

    方法一:直接在安装nagios时 make install-webconf

    创建一个nagiosadmin的用户用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它。

    htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

    重启Apache服务以使设置生效。

    service httpd restart

    方法二:在httpd.conf最后添加如下内容:

    #setting for nagios 20090325

    #setting by bbs.linuxtone.org

    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/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd test

    New password: (输入12345)

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

    Adding password for user test

    查看认证文件的内容

    less /usr/local/nagios/etc/htpasswd

    test:OmWGEsBnoGpIc 前半部分是用户名test,后面是加密后的密码

    本例添加的是test 用户名,需要改 cgi.cfg 配置文件,允许test用户

    authorized_for_system_information=test

    authorized_for_configuration_information=test

    authorized_for_system_commands=test

    authorized_for_all_services=test

    authorized_for_all_hosts=nagiosadmin,test

    authorized_for_all_service_commands=test

    authorized_for_all_host_commands=test

    如果有多用户,请用逗号格开

    1.2.6 启动nagios

    把Nagios加入到服务列表中以使之在系统启动时自动启动

    chkconfig --add nagios

    chkconfig nagios on

    验证Nagios的样例配置文件

    /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

    如果没有报错,可以启动Nagios服务

    service nagios start

    1.2.7 更改SELinux设置

    Fedora与SELinux(安全增强型Linux)同步发行与安装后将默认使用强制模式。这会在你尝试联入Nagios的CGI时导致一个"内部服务错误"消息。

    如果是SELinux处于强制安全模式时需要做

    getenforce

    令SELinux处于容许模式

    setenforce 0

    如果要永久性更变它,需要更改/etc/selinux/config里的设置并重启系统。

    不关闭SELinux或是永久性变更它的方法是让CGI模块在SELinux下指定强制目标模式:

    chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/

    chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

    1.2.8 测试

    登录 http://localhost/nagios/ 输入用户名和密码就可以正常登录了

    1.2.9 使用NRPE监控LINUX上的”本地信息”

    1.在被监控主机上

    增加用户

    useradd nagios

    设置密码

    passwd nagios

    2.安装nagios插件

    tar -zxvf nagios-plugins-***.tar.gz

    cd nagios-plugins-***

    ./configure

    make

    make install

    chown nagios.nagios /usr/local/nagios

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

    3.安装nrpe (监控机也安欣)

    tar -zxvf nrpe-***.tar.gz

    cd nrpe-2.8.1

    ./configure

    make all

    make install-plugin

    make install-daemon

    make install-daemon-config

    /usr/local/nagios/libexec/check_nrpe -H localhost

    会返回当前NRPE的版本

    # /usr/local/nagios/libexec/check_nrpe -H localhost

    NRPE v2.8.1

    在监控与被监控机上启动NRPE:

    /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

    连接远程NRPE:

    /usr/local/nagios/libexec/check_nrpe -H <IP_ADD>

    也就是在本地用check_nrpe连接nrpe daemon是正常的

    注:为了后面工作的顺利进行,注意本地防火墙要打开5666能让外部的监控机访问

    /usr/local/nagios/libexec/check_nrpe –h查看这个命令的用法

    可以看到用法是check_nrpe –H 被监控的主机 -c要执行的监控命令

    注意:-c后面接的监控命令必须是nrpe.cfg文件中定义的.也就是NRPE daemon只运行nrpe.cfg中所定义的命令

    打开nrpe.cfg下的远程登入:

    Vim /usr/local/nagios/nrpe.cfg

    Allowed_hosts=127.0.0.1,10.1.16.111

    注意,两个IP地址中间是逗号

  • 相关阅读:
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
    Evanyou Blog 彩带
  • 原文地址:https://www.cnblogs.com/reynold-lei/p/3229190.html
Copyright © 2011-2022 走看看