nagios监控-多用户管理

我们nagios监控的主机大概有200多台,包含几个合作厂家的机器,nagios平时都是我们这边在维护,其他厂家基本上不会上去看或作其他操作。最近一合作厂家希望可以访问nagios看看自己的机器的运行情况,对于我们这边来说也是希望可以为每个厂家分配一个不同的用户名,登录后都只能查看和管理自己机器的信息而不能查看其他厂家的主机信息。

    刚开始我想到在搭nagios的时候,用户验证是用apache来做的,接到这个需求后的第一反应是这个东西可能做不了。但接着一想,不应该啊,nagios本身至少会有一些用户配置的吧,于是看了下文档,还真的发现有:http://yourserverIP/nagios/docs/cgiauth.html

      对着文档配置后,可以实现需求,记录如下:

   (1)新增一个apache用户,如userA

     [root@service3F-38 ~]# htpasswd /usr/local/nagios/etc/htpasswd.users userA

   (2)更改cgi.cfg配置

     [root@service3F-38 ~]# vi /usr/local/nagios/etc/cgi.cfg

     use_authentication=1

     如果只允许查看,不允许管理,加上下面配置

     authorized_for_read_only=userA

   (3)将userA设为联系人

     [root@service3F-38 ~]# vi /usr/local/nagios/etc/objects/contacts.cfg  #添加如下配置

      define contact{

                     contact_name                   userA

                     use                                      generic-contact

                    alias                                     userA

            }

        (4)在属于userA的主机、服务配置文件的联系人中加入userA:

         [root@service3F-38 ~]# vi /usr/local/nagios/etc/objects/hosts.cfg

           define host {

              host_name web02-1.22@sh

              alias web02-1.22@sh

              address 10.1.1.22

              contacts userA

              contact_groups sys_admins

              check_command check-host-alive

              max_check_attempts 5

              notification_interval  3

              notification_period 24x7

              notification_options d,u,r

           }

      (5)重启nagios后生效

        [root@service3F-38 ~]#  /etc/init.d/nagios restart


你可能感兴趣的:(nagios)