Dies ist eine alte Version des Dokuments!
NagiosQL ist eine Konfigurations-Oberfläche für Nagios auf LAMP-Basis.
Bei der Installation von NagiosQL wird davon ausgegangen, dass bereits Nagios, Nagiosgraph und NagVis entsprechend des Artikels „Installation Nagios 4, Nagiosgraph, NagVis, Loghost“ installiert wurden.
apt-get install mysql-server phpmyadmin
Es werden spezielle PHP Module benötigt: ‐ session ‐ MySQL (php5‐mysql) ‐ gettext ‐ filter ‐ ftp (optional – für FTP Verbindung zu entfernten Servern) ‐ SSH (PECL Modul – optional – für SSH/SCP Verbindung zu entfernten Servern)
Welche Module installiert sind, lässt sich mit php -m
anzeigen. Im vorliegenden Fall muss nur SSH nachinstalliert werden
apt-get install libssh2-php
Abweichend von den Vorschlägen in der Installationsanleitung von NagiosQL wird die Verzeichnisstruktur analog zur Nagios-Installation unter /usr/local/nagiosql
angelegt.
#!/bin/bash # Verzeichnisse: mkdir /usr/local/nagiosql mkdir /usr/local/nagiosql/etc mkdir /usr/local/nagiosql/etc/hosts mkdir /usr/local/nagiosql/etc/services mkdir /usr/local/nagiosql/etc/backup mkdir /usr/local/nagiosql/etc/backup/hosts mkdir /usr/local/nagiosql/etc/backup/services # Berechtigungen: chown -R www-data.nagcmd /usr/local/nagiosql/etc # Berechtigungen der Nagios-Installation anpassen: chown -R www-data.nagcmd /usr/local/nagios/etc/nagios.cfg chown -R www-data.nagcmd /usr/local/nagios/etc/cgi.cfg chown -R www-data.nagcmd /usr/local/nagios/etc/resource.cfg chown -R www-data.nagcmd /usr/local/nagios/var/rw/nagios.cmd
Kontrolle der /etc/php5/apache2/php.ini
(angegebene Parameter sollen gesetzt sein)
; vi /etc/php5/apache2/php.ini ;... file_uploads = On ;... session.auto_start = 0 ;... date.timezone = "Europe/Berlin" ;... ;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;; extension = ssh2.so ; ...
Die eigentliche Apache-Config wird unter /etc/apache2/config-available/nagiosql.conf
angelegt. Bei der Zugriffsberechtigung wird direkt auf die Nagios-Authentifizierung zurückgegriffen, um einen einheitlichen Benutzer zu haben. Bei Bedarf kann natürlich auch eine eigene Berechtigungsstruktur aufgebaut werden.
# NAGIOSQL Alias /nagiosql "/usr/local/nagiosql/share" <Directory "/usr/local/nagiosql/share"> Options None AllowOverride None Order allow,deny Allow from all # Order deny,allow # Deny from all # Allow from 127.0.0.1 AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory>
Wie 'neuerdings' üblich wird die Config dann per Command aktiviert und die Config neu geladen:
a2enconf nagiosql service apache2 reload
NagiosQL wird nun entpackt und ins Webserververzeichnis /usr/local/nagiosql/share
verschoben und die Verzeichnisberechtigungen entsprechend angepasst.
cd /install tar xvf nagiosql_320.tar.gz mv nagiosql32 /usr/local/nagiosql/share chown -R www-data /usr/local/nagiosql/share chmod 750 /usr/local/nagiosql/share/config
NagiosQL sollte nun im Browser unter http://.../nagiosql
aufrufbar und dort der Installations Assistent sichtbar sein. In den Nun folgenden Dialogen sind lediglich die Kennwörter für MySQL und für den ersten NagiosQL-Benutzer zu hinterlegen. Außerdem sind die Verzeichnisse entsprechend der o.g. Anpassungen anzugeben. Die Haken für „Importiere Nagios Beispiel Konfiguration“ und „Erstelle NagiosQL Verzeichnisse“ werden gesetzt.