Анонимный доступ к icinga cgi
В настоящее время я настраиваю систему мониторинга Icinga, однако мне не хватает представления о том, как получить доступ к определенной странице, которая запрашивает аутентификацию при доступе по http, главным образом, опции "Все проблемы" на Icinga.
Могу ли я в любом случае обойти аутентификацию (идея заключается в том, чтобы поместить эту страницу на страницу вращения, отображаемую на моем втором экране)?
заранее спасибо
2 ответа
Я думаю, это типичный вопрос о приборной панели, который был сложным в прошлом.
Опция, которую вы ищете, - это use_authentication=0 в cgi.cfg - хотя, на самом деле, это плохая идея, учитывая ваши текущие настройки с авторизацией ваших существующих пользователей и тому подобное.
Есть еще один способ добиться этого без ущерба для существующей установки - создайте другую конфигурацию apache, обслуживающую ваш классический пользовательский интерфейс ниже "/icinga-dashboard", и используйте для авторизации Satisfy Any, например, в вашей локальной сети. Тем не менее, SetEnvIf для REMOTE_USER также потребуется, и некоторые более сложные знания Apache в целом (или предпочитаемый вами веб-сервер).
Более простым методом (но немного более затратным) будет установка Classic UI в качестве отдельного приложения, имеющего собственный cgis / html и считывающего только источник данных из Icinga Core, который обслуживает только то, что вам нужно. Поскольку мы используем классический пользовательский интерфейс при разработке слоев совместимости Icinga2, мы наконец-то сделали это с выпуском Icinga 1.9 - вы можете установить Classic UI Standalone, следуя следующей документации: https://wiki.icinga.org/display/howtos/Setting+up+Icinga+Classic+UI+Standalone
Я бы посоветовал вам использовать плагин check_http для мониторинга веб-страницы, которая запрашивает у вас аутентификацию.Check_http
Плагин имеет такую функциональность, чтобы проверять работоспособность веб-страницы с параметрами, переданными вместе с ним.
Ex: check_http -I <ipaddress of server> -H host_name.com -u /index.html -a username:password
Где, -I = IP-адрес сервера
-H = имя хоста
-u = URL для хоста (если он есть). Пример: www.myhost.com/index.html
-a = для аутентификации.
Определите команду для таких
# 'check_http' command definition
define command{
command_name check_http_test
command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$ -a username:password
}
Определить услугу:
define service{
use local-service ; Name of service template to use
host_name hostname
service_description HTTP_AUTH
check_command check_http_test
notifications_enabled 0
}