Назад | Перейти на главную страницу

Nagios - новый пользователь не получает включенных разрешений

Я следую простым шагам из руководств по всему Интернету:

а) добавить пользователя в Nagios с помощью команды htpasswd htpasswd.users username

б) в файле cgi.cfg добавьте этого пользователя в строки:

authorized_for_system_information=nagiosadmin, username
authorized_for_configuration_information=nagiosadmin, username
authorized_for_system_commands=nagiosadmin, username
authorized_for_all_services=nagiosadmin, username
authorized_for_all_hosts=nagiosadmin, username
authorized_for_all_service_commands=nagiosadmin, username
authorized_for_all_host_commands=nagiosadmin, username

c) перезапустите службу nagios3, даже перезапустите службу apache2

но когда я пытаюсь перечислить что-нибудь из веб-интерфейса nagios, он все равно выдает мне это раздражающее сообщение:

It appears as though you do not have permission to view information for any of the services you requested...
If you believe this is an error, check the HTTP server authentication requirements for accessing this CGI
and check the authorization options in your CGI configuration file.

Где может быть проблема?

Ознакомьтесь с FAQ Nagios по адресу Нет разрешения на просмотр конфигурации, в котором говорится:

Описание: если вы нажмете «Просмотреть конфигурацию» и получите: «« »Похоже, у вас нет разрешения на просмотр запрошенной информации о конфигурации ... Если вы считаете, что это ошибка, проверьте требования аутентификации HTTP-сервера. для доступа к этому CGI и проверьте параметры авторизации в вашем файле конфигурации CGI. "" "

Решение: вам необходимо установить "authorized_for_configuration_information" в cgi.cfg

По умолчанию в моей системе EL6 для «authorized_for_configuration_information» установлено значение «nagiosadmin». Многие сайты устанавливают это как authorized_for_configuration_information=*, который устраняет вашу проблему.

Также убедитесь, что вы правильно используете HTTP-аутентификацию. Видеть http://nagios.sourceforge.net/docs/3_0/cgiauth.html

Включение функции аутентификации / авторизации в CGI

Следующее, что вам нужно сделать, это убедиться, что CGI настроены для использования функций аутентификации и авторизации при определении того, к какой информации и / или командам пользователи имеют доступ. Это делается путем установки переменной use_authentication в файле конфигурации CGI на ненулевое значение. Пример:

use_authentication = 1

отредактируйте /usr/local/nagios/etc/cgi.cfg

добавьте имя пользователя без пробелов

authorized_for_system_information=nagiosadmin,username,username2

сохранить файл и перезапустить службу nagios, используя перезапуск службы nagios

  1. В терминале:

    sudo htpasswd -c /etc/nagios/htpasswd.users new_user
        # set password for user "new_user"
    
  2. В терминале:

    nano /usr/local/nagios/etc/cgi.cfg
    

    (в файле cgi.cfg ищите этот раздел):

    # GLOBAL HOST/SERVICE VIEW ACCESS
    # These two options are comma-delimited lists of all usernames that
    # can view information for all hosts and services that are being
    # monitored.  By default, users can only view information
    # for hosts or services that they are contacts for (unless you
    # you choose to not use authorization). You may use an asterisk (*)
    # to authorize any user who has authenticated to the web server.
    

    (в конце строки добавьте пользователя new_user):

    authorized_for_all_services=nagiosadmin,new_user
    authorized_for_all_hosts=nagiosadmin,new_user
    

    (сохранить и выйти из nano)

  3. Перезапустите службу nagios:

    sudo systemctl restart nagios.service
    

Теперь вы можете получить доступ к веб-странице с помощью «new_user» и контролировать все объекты.

Я также столкнулся с той же проблемой, и я решил запустить команду

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

убедитесь, что строка ниже в cgi.cfg в папке nagios

авторизованный_for_all_services = nagiosadmin, noc authorized_for_all_hosts = nagiosadmin, noc