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
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.
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
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
Ö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 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
Ö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.
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
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.
Wenn du das richtige Passwort eingegeben hast, wird dir das Nagios Dashboard angezeigt.
Klicke auf das Menü Hosts und du siehst den Localhost mit dem Status UP.
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.
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.