Icinga

Optionen CGI-Konfigurationsdatei

Anmerkungen

Wenn Sie Konfigurationsdateien erstellen oder anpassen, beachten Sie bitte folgendes:

  1. Zeilen, die mit einem '#'-Zeichen beginnen, werden als Kommentar betrachtet und nicht verarbeitet

  2. Variablennamen müssen am Zeilenanfang beginnen - "white space" sind vor dem Namen NICHT erlaubt

  3. Variablennamen sind abhängig von Groß- und Kleinschreibung

Beispielkonfiguration

Hinweis: eine Beispiel-CGI-Konfigurationsdatei (/usr/local/icinga/etc/cgi.cfg) wird für Sie installiert, wenn Sie der Schnellstart-Anleitung folgen.

Position der Konfigurationsdatei

Als Standard erwartet Icinga, dass die CGI-Konfigurationsdatei cgi.cfg heißt und zusammen mit der Hauptkonfigurationsdatei im Verzeichnis für die Konfigurationsdateien liegt. Wenn Sie den Namen der Datei oder die Position ändern müssen, dann können Sie Apache so konfigurieren, dass eine Umgebungsvariable namens NAGIOS_CGI_CONFIG übergeben wird (die auf die korrekte Position der CGIs verweist). Lesen Sie in der Apache-Dokumentation nach, wie das zu tun ist.

Variablen der Konfigurationsdatei

Nachfolgend finden Sie Beschreibungen jeder Option der Hauptkonfigurationsdatei...

Position der Hauptkonfigurationsdatei

Format:

main_config_file=<file_name>

Beispiel:

main_config_file=/usr/local/icinga/etc/nagios.cfg

Dies gibt die Position Ihrer Hauptkonfigurationsdatei an. Die CGIs müssen wissen, wo sie zu finden ist, um Informationen zu Konfigurationsinformationen, aktuellen Host- und Service-Zuständen usw. zu bekommen.

vollständiger (physical) HTML-Pfad

Format:

physical_html_path=<Pfad>

Beispiel:

physical_html_path=/usr/local/icinga/share

Dies ist der vollständige Pfad zu den HTML-Dateien von Icinga auf Ihrer Workstation oder Ihrem Server. Icinga nimmt an, dass die Dokumentation und die Bilddateien (die von den CGIs benutzt werden) in Unterverzeichnissen namens docs/ und images/ gespeichert sind.

URL-HTML-Pfad

Format:

url_html_path=<Pfad>

Beispiel:

url_html_path=/nagios

Wenn Sie Icinga über einen Web-Browser mit einem URL wie http://www.myhost.com/nagios, aufrufen, sollte dieser Wert /nagios sein. Grundsätzlich ist es der Pfadanteil des URL, der zum Aufruf der Icinga-HTML-Seiten benutzt wird.

Nutzung der Authentifizierung

Format:

use_authentication=<0/1>

Beispiel:

use_authentication=1

Diese Option kontrolliert, ob die CGIs die Authentifizierungs- und Autorisierungsfunktionalität nutzen, um den Zugang von Benutzern zu Informationen und Befehlen zu prüfen oder nicht. Wir möchten dringend raten, dass Sie die Authentifizierungsfunktionalität für die CGIs nutzen. Wenn Sie sich entscheiden, die Authentifizierung nicht zu nutzen, dann stellen Sie sicher, dass das command CGI entfernt wird, um nicht autorisierte Benutzer an der Ausführung von Icinga-Befehlen zu hindern. Das CGI wird keine Befehle ausführen, wenn Authentifizierung deaktiviert ist, aber wir würden trotzdem dazu raten, das CGI zu entfernen, damit man auf der sicheren Seite ist. Mehr Informationen zur Einstellung der Authentifizierung und der Konfiguration von Autorisierung für die CGIs finden Sie hier.

Standard-Benutzername

Format:

default_user_name=<username>

Beispiel:

default_user_name=guest

Das Setzen dieser Variable definiert einen Standard-Benutzernamen, der die CGIs aufrufen kann. Dies erlaubt es Leuten in einer sicheren Domäne (d.h. hinter einer Firewall) die CGIs aufzurufen, ohne dass sie sich am Web-Server authentifizieren müssen. Sie können das benutzen, um die Basis-Authentifizierung zu verhindern, wenn Sie keinen sicheren Server einsetzen, weil Basis-Authentifizierung Passwörter im Klartext über das Internet überträgt.

Wichtig: Definieren Sie keinen Standard-Benutzernamen, solange Sie nicht einen sicheren Web-Server haben und sicher sind, dass sich jeder, der die CGIs aufruft, in irgendeiner Weise authentifiziert hat. Wenn Sie diese Variable definieren, dann wird jeder, der sich am Web-Server authentifiziert, alle Rechte dieses Benutzers erben!

Zugang zu System/Prozessinformationen

Format:

authorized_for_system_information=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_system_information=nagiosadmin,theboss

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die System/Prozessinformationen im extended information CGI ansehen können. Benutzer in dieser Liste sind nicht automatisch autorisiert, System/Prozessbefehle zu erteilen. Wenn Sie möchten, dass Benutzer auch System/Prozessbefehle erteilen können, dann müssen Sie diese der authorized_for_system_commands-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Zugang zu System/Prozessbefehlen

Format:

authorized_for_system_commands=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_system_commands=nagiosadmin

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die System/Prozessbefehle über das command CGI erteilen können. Benutzer in dieser Liste sind nicht automatisch autorisiert, System/Prozessinformationen anzusehen. Wenn Sie möchten, dass Benutzer auch System/Prozessinformationen ansehen können, dann müssen Sie diese der authorized_for_system_information-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Zugang zu Konfigurationsinformationen

Format:

authorized_for_configuration_information=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_configuration_information=nagiosadmin

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die Konfigurationsinformationen im configuration CGI ansehen können. Benutzer in dieser Liste können Informationen zu allen konfigurierten Hosts, Hostgruppen, Kontakten, Kontaktgruppen, Zeitfenstern und Befehlen ansehen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Global Host Information Access

Format:

authorized_for_all_hosts=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_all_hosts=nagiosadmin,theboss

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die Status- und Konfigurationsinformationen im für alle Hosts ansehen können. Benutzer in dieser Liste sind automatisch autorisiert, Informationen zu allen Services anzusehen. Benutzer in dieser Liste sind nicht automatisch berechtigt, Befehle für alle Hosts oder Services zu erteilen. Wenn Sie möchten, dass Benutzer auch Befehle für alle Hosts oder Services erteilen können, dann müssen Sie diese der authorized_for_all_host_commands-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Zugang zu globalen Host-Befehlen

Format:

authorized_for_all_host_commands=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_all_host_commands=nagiosadmin

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die Befehle für alle Hosts über das command CGI erteilen können. Benutzer in dieser Liste sind auch automatisch autorisiert, Befehle für alle Services zu erteilen. Benutzer in dieser Liste sind nicht automatisch berechtigt, Status- oder Konfigurationsinformationen für alle Hosts oder Services anzusehen. Wenn Sie möchten, dass Benutzer auch Status- und Konfigurationsinformationen für alle Hosts oder Services ansehen können, dann müssen Sie diese der authorized_for_all_hosts-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Zugang zu globalen Service-Informationen

Format:

authorized_for_all_services=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_all_services=nagiosadmin,theboss

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die Status- und Konfigurationsinformationen für alle Services ansehen können. Benutzer in dieser Liste sind nicht automatisch autorisiert, Informationen zu allen Hosts anzusehen. Benutzer in dieser Liste sind nicht automatisch berechtigt, Befehle für alle Services zu erteilen. Wenn Sie möchten, dass Benutzer auch Befehle für alle Services erteilen können, dann müssen Sie diese der authorized_for_all_service_commands-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Zugang zu globalen Service-Befehlen

Format:

authorized_for_all_service_commands=<user1>,<user2>,<user3>,...<usern>

Beispiel:

authorized_for_all_service_commands=nagiosadmin

Dies ist eine Komma-separierte Liste von Namen von authentifizierten Benutzern, die Befehle für alle Services über das command CGI erteilen können. Benutzer in dieser Liste sind nicht automatisch autorisiert, Befehle für alle Hosts zu erteilen. Benutzer in dieser Liste sind nicht automatisch berechtigt, Status- oder Konfigurationsinformationen für alle Hosts anzusehen. Wenn Sie möchten, dass Benutzer auch Status- und Konfigurationsinformationen für alle Services ansehen können, dann müssen Sie diese der authorized_for_all_services-Variable hinzufügen. Mehr Informationen, wie man Authentifizierung einrichtet und Autorisierung für die CGIs konfiguriert, finden Sie hier.

Autorennamen sperren

Format:

lock_author_names=[0/1]

Beispiel:

lock_author_names=1

Diese Option erlaubt es Ihnen, Benutzer daran zu hindern, den Autorennamen zu ändern, wenn sie Kommentare, Bestätigungen und geplanten Ausfallzeiten über das Web-Interface eingeben. Wenn diese Option aktiviert ist, können Benutzer nicht mit der Befehlsanfrage verbundene Autorennamen ändern.

Statusmap CGI Background Image

Format:

statusmap_background_image=<image_file>

Beispiel:

statusmap_background_image=smbackground.gd2

Diese Option erlaubt es Ihnen, ein Bild anzugeben, das als Hintergrund im statusmap CGI benutzt wird, wenn Sie die Layout-Methode mit benutzerdefinierten Koordinaten benutzen. Das Hintergrundbild ist nicht in anderen Layout-Methoden verfügbar. Es wird angenommen, dass sich das Bild im HTML-Image-Pfad befindet (d.h. in /usr/local/icinga/share/images). Dieser Pfad wird automatisch durch das Anhängen von "/images" an den in der physical_html_path-Direktive ermittelt. Anmerkung: Die Bilddatei kann im GIF-, JPEG-, PNG- oder GD2-Format sein. Das GD2-Format (vorzugsweise im unkomprimierten Format) wird empfohlen, weil es die CPU-Belastung reduziert, wenn das CGI das Kartenbild generiert.

Standard-Statusmap-Layout-Methode

Format:

default_statusmap_layout=<layout_number>

Beispiel:

default_statusmap_layout=4

Gültige Werte sind:

<layout_number>-Wert

Layout-Methode

0

User-defined coordinates

1

Depth layers

2

Collapsed tree

3

Balanced tree

4

Circular

5

Circular (Marked Up)

6

Circular (Balloon)

CGI-Aktualisierungsrate

Format:

refresh_rate=<rate_in_seconds>

Beispiel:

refresh_rate=90

Diese Option erlaubt es Ihnen, die Anzahl von Sekunden zwischen Seitenaktualisierungen für die status-, statusmap- und extinfo-CGIs festzulegen.

Audio-Alarme

Format:

host_unreachable_sound=<sound_file>

host_down_sound=<sound_file>

service_critical_sound=<sound_file>

service_warning_sound=<sound_file>

service_unknown_sound=<sound_file>

Beispiele:

host_unreachable_sound=hostu.wav

host_down_sound=hostd.wav

service_critical_sound=critical.wav

service_warning_sound=warning.wav

service_unknown_sound=unknown.wav

Diese Option erlaubt es Ihnen, eine Audio-Datei anzugeben, die in Ihrem Browser abgespielt wird, wenn es ein Problem gibt, während Sie das status CGI ansehen. Wenn es mehrere Probleme gibt, wird die Datei für das kritischste Problem abgespielt. Das kritischste Problem sind ein oder mehrere nicht erreichbare Host, während das am wenigsten kritische Problem Services in einem UNKNOWN-Zustand sind (beachten Sie die Reihenfolge im obigen Beispiel). Audio-Dateien werden im media-Unterverzeichnis Ihres HTML-Verzeichnisses erwartet (d.h. /usr/local/icinga/share/media).

Ping-Syntax

Format:

ping_syntax=<command>

Beispiel:

ping_syntax=/bin/ping -n -U -c 5 $HOSTADDRESS$

Diese Option legt fest, welche Syntax benutzt wird, wenn ein Host vom WAP-Interface aus ange"ping"t wird (mit Hilfe des statuswml CGI. Sie müssen den kompletten Pfad zum ping-Binary zusammen mit allen benötigten Optionen angeben. Das $HOSTADDRESS$-Makro wird durch die Adresse des Hosts ersetzt, bevor der Befehl ausgeführt wird.

Escape HTML Tags Option

Format:

escape_html_tags=[0/1]

Beispiel:

escape_html_tags=1

Diese Option legt fest, ob HTML-Tags in Host- und Service-(Plugin-)Ausgaben in CGIs unberücksichtigt bleiben oder nicht. Wenn Sie diese Option aktivieren, wird die Plugin-Ausgabe keine anklickbaren Hyperlinks enthalten.

Notes URL Target

Format:

notes_url_target=[target]

Beispiel:

notes_url_target=_blank

Diese Option legt den Namen des Ziel-Frames fest, in dem Anmerkungs-URLs angezeigt werden sollen. Gültige Optionen umfassen _blank, _self, _top, _parent oder jeden anderen gültigen Zielnamen.

Action URL Target

Format:

action_url_target=[target]

Beispiel:

action_url_target=_blank

Diese Option legt den Namen des Ziel-Frames fest, in dem Aktions-URLs angezeigt werden sollen. Gültige Optionen umfassen _blank, _self, _top, _parent oder jeden anderen gültigen Zielnamen.

Splunk-Integrationsoption

Format:

enable_splunk_integration=[0/1]

Beispiel:

enable_splunk_integration=1

Diese Option legt fest, ob die Integration mit Splunk im Web-Interface aktiviert ist oder nicht. Wenn sie aktiviert ist, werden an verschiedenen Stellen "Splunk It"-Links in den CGIs angezeigt (Log-Datei, Alarmhistorie, Host-/Service-Details, usw.). Das ist nützlich, wenn Sie nach den Ursachen suchen, warum ein bestimmtes Problem auftrat. Für mehr Informationen über Splunk besuchen Sie http://www.splunk.com/.

Splunk-URL

Format:

splunk_url=<path>

Beispiel:

splunk_url=http://127.0.0.1:8000/

Diese Option wird benutzt, um den Basis-URL zu Ihrem Splunk-Interface zu definieren. Dieser URL wird von den CGIs benutzt, wenn Links erzeugt werden, falls die enable_splunk_integration-Option aktiviert ist.