So installierst du das Nagios Monitoring Tool unter Debian 12

Nagios ist ein Open-Source-Überwachungssystem für den Zustand und die Leistung der IT-Infrastruktur. Es liefert Echtzeitwarnungen und Statusübersichten für Server, Netzwerke und Anwendungen und ermöglicht eine proaktive Problemlösung.

In dieser Anleitung erfährst du, wie du Nagios auf einem Debian 12 Server installierst. Du wirst Nagios unter Debian über den Paketmanager installieren, anstatt es manuell zu kompilieren.

Voraussetzungen

Bevor du beginnst, solltest du sicherstellen, dass du Folgendes hast:

  • Einen Debian 12 Server.
  • Einen Nicht-Root-Benutzer mit sudo-Rechten.

Installation von Nagios unter Debian

Um Nagios zu installieren, kannst du es manuell installieren, indem du es selbst kompilierst. Oder du kannst Nagios auch über einen Paketmanager wie APT installieren. In diesem Beispiel wirst du Nagios unter Debian 12 über das APT-Repository installieren, was schneller und einfacher ist.

Um zu beginnen, führe den folgenden Befehl aus, um deinen Debian-Paketindex zu erneuern und zu aktualisieren.

sudo apt update

Repo aktualisieren

Sobald der Paketindex aktualisiert ist, führst du den folgenden Befehl aus, um Nagios, das Monitoring-Plugin und das Nagios NRPE-Plugin über das Debian-Repository zu installieren.

sudo apt install nagios4 nagios4-common monitoring-plugins-contrib nagios-nrpe-plugin

Gib Y ein, um mit der Installation fortzufahren. Damit installierst du die Abhängigkeiten für Nagios, zu denen auch der Apache-Webserver und PHP 8.2 gehören.

nagios auf debian 12 installieren

Wenn Nagios installiert ist, führe den folgenden systemctl-Befehl aus, um den nagios4-Dienst zu aktivieren.

sudo systemctl enable nagios4

Überprüfe dann den nagios4 Dienst mit dem folgenden Befehl, um sicherzustellen, dass der Dienst läuft. Du solltest sehen, dass der nagios4-Dienst den Status aktiv (läuft) und aktiviert hat.

sudo systemctl is-enabled nagios4
sudo systemctl status nagios4

Nagios-Dienst prüfen

Jetzt kannst du auch den Status des Apache-Webservers überprüfen, um sicherzustellen, dass er installiert ist und läuft, indem du den folgenden Befehl ausführst.

sudo systemctl is-enabled apache2
sudo systemctl status apache2

apache2 Dienst prüfen

Öffne schließlich deinen Webbrowser und besuche deine Nagios-Installation http://192.168.5.15/nagios4. Du solltest das Nagios-Dashboard wie das folgende sehen:

Nagios Dashboard

Nagios Konfigurationsdateien und Verzeichnisse

Da du Nagios über das APT Debian Repository installiert hast, solltest du die Verzeichnisstruktur und die Konfiguration deiner Nagios-Installation kennen.

Im Folgenden findest du Konfigurationsdateien und Verzeichnisse für Nagios, die du kennen musst:

  • /etc/nagios4: die Standardkonfiguration für die Nagios-Installation.
  • /etc/apache2/conf-available/nagios4-cgi.conf: Die Nagios-Konfiguration für die Integration des Apache-Webservers.
  • /etc/nagios-plugins: Das Verzeichnis für das Nagios Monitoring Plugin.
  • /usr/lib/nagios/plugins: Speicherort der Prüfbefehle für das Nagios Monitoring Plugin.

Aktiviere die Nagios-Authentifizierung

Standardmäßig ist die Authentifizierung bei Nagios deaktiviert, aber nur das lokale Netzwerk kann auf deine Installation zugreifen. In diesem Beispiel wirst du die Authentifizierung für Nagios aktivieren. Auf diese Weise können nur Benutzer mit dem richtigen Benutzernamen und Passwort auf das Nagios-Dashboard zugreifen.

Öffne die Datei /etc/nagios4/cgi.conf mit dem folgenden nano-Editor-Befehl.

sudo nano /etc/nagios4/cgi.conf

Suche die Zeile use_authentication und ändere den Wert auf 1, um die Nagios-Authentifizierung zu aktivieren.

# AUTHENTICATION USAGE
# This option controls whether or not the CGIs will use any
# Authentication when displaying host and service information, as
# well as committing commands to Nagios for processing.
#
# Read the HTML documentation to learn how the authorization works!
#
# NOTE: It is a really *bad* idea to disable authorization, unless
# you plan on removing the command CGI (cmd.cgi)! Failure to do
# so will leave you wide open to kiddies messing with Nagios and
# possibly hitting you with a denial of service attack by filling up
# your drive by continuously writing to your command file!
#
# Setting this value to 0 will cause the CGIs to *not* use
# authentication (bad idea), while any other value will make them
# use the authentication functions (the default).

use_authentication=1

Speichere und schließe die Datei, wenn du fertig bist.

Starte als Nächstes den Nagios4-Dienst mit dem folgenden Befehl neu, damit er wirksam wird.

sudo systemctl restart nagios4

Jetzt kann nur noch der Benutzer„nagiosadmin“ auf deine Nagios-Installation zugreifen. Du kannst weiterhin auf das Nagios-Dashboard zugreifen, aber die Berichts- und Überwachungsseite wird dadurch verweigert.

Apache Basic Auth für Nagios einrichten

Nachdem du die Nagios-Authentifizierung auf dem Nagios-Teil aktiviert hast, musst du im nächsten Schritt die Authentifizierung auf dem Apache-Webserver über basic_auth einrichten.

Führe zunächst den folgenden Befehl aus, um die erforderlichen Module cgi, cgid und rewrite zu aktivieren.

sudo a2enmod cgi cgid rewrite

cgi und Rewrite Modul aktivieren

Öffne die Apache-Konfigurationsdateien für die Nagios-Installation /etc/apache2/conf-available/nagios4-cgi.conf mit dem folgenden nano-Editor-Befehl.

sudo nano /etc/apache2/conf-available/nagios4-cgi.conf

Suche die Zeile„<DirectoryMatch … </DirectoryMatch>“ und ersetze die Standardkonfiguration durch die folgende. In diesem Fall aktivierst du das Apache basic_auth Modul Nagios Webinhalte. Die Datenbankbenutzer, die in der Datei /etc/nagios4/htdigest.users verwendet werden sollen.

<DirectoryMatch (/usr/share/nagios4/htdocs|/usr/lib/cgi-bin/nagios4|/etc/nagios4/stylesheets)>
 Options FollowSymLinks
 DirectoryIndex index.php index.html
 AllowOverride AuthConfig
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Core"
AuthType Basic
AuthUserFile /etc/nagios4/htdigest.users
Require valid-user
Require all denied

</DirectoryMatch>

Speichere die Datei und beende den Editor, wenn du fertig bist.

Als nächstes führst du den folgenden Befehl aus, um einen neuen Benutzer nagiosadmin für Apache basic auth anzulegen. Standardmäßig erlaubt Nagios nur dem Benutzer nagiosadmin, Nagios anzuzeigen und zu verwalten.

sudo htpasswd /etc/nagios4/htdigest.users nagiosadmin

Gib dein Passwort ein und wiederhole es.

Apache-Nagios-Authentifizierung einrichten

Führe abschließend den folgenden Befehl aus, um den apache2-Dienst neu zu starten und deine Änderungen zu übernehmen. Überprüfe anschließend, ob der Apache-Dienst läuft.

sudo systemctl restart apache2
sudo systemctl status apache2

Apache-Dienst prüfen

Wenn du diesen Schritt abgeschlossen hast, wirst du aufgefordert, auf deine Nagios-Installation zuzugreifen.

Zugriff auf die Nagios-Installation mit aktivierter Authentifizierung

Gehe zurück zu deinem Webbrowser und lade deinen Nagios-Tab neu. Wenn deine Konfiguration erfolgreich war, wirst du zur Eingabe des Apache basic_auth Moduls aufgefordert.

Gib den Benutzer nagiosadmin mit deinem Passwort ein und klicke dann auf Anmelden, um fortzufahren.

Anmeldung bei Nagios

Wenn du das richtige Passwort eingegeben hast, wird dir das Nagios Dashboard angezeigt.

Nagios Dashboard

Klicke auf das Menü Hosts und du siehst den Localhost mit dem Status UP.

Nagios Hosts Liste

Jetzt klickst du auf das Menü Dienste und siehst die Standard-Systemüberwachung von Nagios, die die Systemauslastung, eingeloggte Benutzer, den HTTP-Status, Ping, die Festplattenauslastung der Root-Partition, den SSH-Status, den SWAP-Status und die Gesamtanzahl der Prozesse auf dem System umfasst.

Nagios Dienste

Fazit

Glückwunsch und gut gemacht! Du hast die Installation des Nagios Monitoring Tools auf dem Debian 12 Server abgeschlossen. Du hast Nagios über das Debian APT-Repository installiert, das die einfachste Möglichkeit bietet, Nagios zu installieren. Außerdem hast du die Authentifizierung für Nagios aktiviert und das Apache basic_auth Modul zur Sicherung deiner Nagios-Installation implementiert.

Von nun an kannst du Hosts über Nagios hinzufügen und überwachen, oder du kannst das NRPE-Plugin nutzen, um entfernte Hosts über Nagios zu überwachen.

Das könnte dich auch interessieren …