В настоящее время я настраиваю систему мониторинга Icinga, однако мне не хватает представления о том, как получить доступ к определенной странице, которая запрашивает аутентификацию при доступе по http, в основном к опции «Все проблемы» в Icinga.
Есть ли способ обойти аутентификацию (идея состоит в том, чтобы поместить эту страницу на страницу вращения, отображаемую на моем втором экране)?
заранее спасибо
Я предполагаю, что это типичный вопрос панели инструментов, который в прошлом был сложным.
Вариант, который вы ищете, - use_authentication = 0 в cgi.cfg - хотя, на самом деле, это плохая идея, учитывая вашу текущую настройку с авторизацией ваших существующих пользователей и т. Д.
Есть еще один способ добиться этого без ущерба для существующей установки - создать другую конфигурацию apache, обслуживающую ваш классический интерфейс, ниже «/ icinga-dashboard» и использовать Satisfy Any для авторизации, например ваша локальная сеть. Тем не менее, SetEnvIf для REMOTE_USER также потребуется, и некоторые более продвинутые знания apache в целом (или ваш предпочтительный веб-сервер).
Более простой метод (но немного больше накладных расходов) будет заключаться в установке классического пользовательского интерфейса как отдельного приложения, имеющего собственный cgis / html и только читающего источник данных из Icinga Core, обслуживая только то, что вам нужно. Поскольку мы используем классический пользовательский интерфейс при разработке слоев совместимости с Icinga2, мы наконец сделали это с выпуском Icinga 1.9 - вы можете установить классический пользовательский интерфейс в автономном режиме, следуя этой документации: 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 = адрес хоста (если есть). Пример: 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
}