Anmerkungen
Wenn Sie Konfigurationsdateien erstellen oder anpassen, beachten Sie bitte folgendes:
- Zeilen, die mit einem '#'-Zeichen beginnen, werden als Kommentar betrachtet und nicht verarbeitet
- Variablennamen müssen am Zeilenanfang beginnen - "white space" sind vor dem Namen NICHT erlaubt
- Variablennamen sind abhängig von Groß- und Kleinschreibung
Beispielkonfiguration
Hinweis: eine Beispiel-CGI-Konfigurationsdatei
(/usr/local/nagios/etc/cgi.cfg) wird für Sie installiert, wenn Sie der Schnellstart-Anleitung für Fedora, OpenSuse oder Ubuntu folgen.
Position der Konfigurationsdatei
Als Standard erwartet Nagios, 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). Wie man das macht können Sie in der Apache-Dokumentation nachlesen.
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/nagios/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/nagios/share |
Dies ist der vollständige Pfad zu den HTML-Dateien von Nagios auf Ihrer Workstation oder Ihrem Server. Nagios nimmt an, dass die Dokumentation
und die Bilddateien (die von den CGIs benutzt werden) in Unterverzeichnissen namens docs/ und images/ gespeichert sind.
Format: |
url_html_path=<Pfad> |
Beispiel: |
url_html_path=/nagios |
Wenn Sie Nagios ü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 Nagios-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. Ich möchte 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 Nagios-Befehlen zu hindern.
Das CGI wird keine Befehle ausführen, wenn Authentifizierung deaktiviert ist, aber ich würde 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.
- 0 = die Authentifizierungsfunktionalität nicht nutzen
- 1 = die Authentifizierungs- und Autorisierungsfunktionalität nutzen (Default)
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.
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.
- 0 = Benutzern erlauben, den Autorennamen zu bei der Erteilung von Befehlen zu ändern
- 1 = Benutzer daran hindern, den Autorennamen zu ändern (default)
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/nagios/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> Value | Layout Method |
0 | User-defined coordinates |
1 | Depth layers |
2 | Collapsed tree |
3 | Balanced tree |
4 | Circular |
5 | Circular (Marked Up) |
6 | Circular (Balloon) |
Statuswrl CGI Include World |
Format: |
statuswrl_include=<vrml_file> |
Beispiel: |
statuswrl_include=myworld.wrl |
Diese Option erlaubt es Ihnen, Ihre eigenen Objekte in der generierten VRML-Welt einzusetzen. Es wird angenommen, dass sich die Datei in dem Pfad
befindet, der in der physical_html_path-Direktive angegeben ist.
Anmerkung: diese Datei muss eine vollqualifizierte VRML-Welt sein (d.h. Sie können sie in einem VRML-Browser ansehen).
Standard-Statuswrl-Layout-Methode |
Format: |
default_statuswrl_layout=<layout_number> |
Beispiel: |
default_statuswrl_layout=4 |
Diese Option erlaubt es Ihnen, die Standard-Layout-Methode anzugeben, die in der statuswrl CGI benutzt wird.
Gültige Optionen sind:
<layout_number> Value | Layout Method |
0 | User-defined coordinates |
2 | Collapsed tree |
3 | Balanced tree |
4 | Circular |
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.
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/nagios/share/media).
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.
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.
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.
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/.
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.
Siehe auch:
Konfigurationsübersicht, Informationen zu den CGIs,
Authentifizierung und Autorisierung in den CGIs, CGI-Kopf- und Fußzeilen