Read-only user access for specific host in Nagios

1. Create a read-only access account named guest for nagios.

sudo htpasswd /etc/nagios3/htpasswd.users guest

2. Edit /etc/nagios3/cgi.cfg.

authorized_for_read_only=guest
authorized_for_all_services=nagiosadmin,guest
authorized_for_all_hosts=nagiosadmin,guest

3. Restart nagios3 service.

sudo service nagios3 restart

4. To allow the read-only user to view certain host status, create a contact definition and assign to a specific host. Remember to remove the authorized to all hosts or services settings.

define contact{
        contact_name                    guest
        use                             generic-contact
        alias                           No Name
        service_notifications_enabled   1
        host_notifications_enabled      1
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    c,w,r
        host_notification_options       d,u,r
        email                           anonymous@domain.com
        }
define host{
        use                     linux-server
        host_name               localhost
        address                 127.0.0.1
        contacts                guest
        }

Comments