Mit der Einrichtung von Nagios auf Ubuntu 24.04 erhältst du Zugriff auf Nagios Core – ein kostenloses Open-Source-Tool zur Überwachung von Netzwerken, Diensten und Anwendungen. Es nutzt den Nagios Remote Plugin Executor (NRPE), der nach dem Server-Client-Prinzip funktioniert, um entfernte Systeme zu analysieren und wichtige Kennzahlen wie CPU-Auslastung, Festplattenverbrauch und Netzwerkaktivität zu überwachen. Die erfassten Daten werden regelmäßig abgerufen und übersichtlich im Webinterface dargestellt.
Diese Anleitung zeigt dir Schritt für Schritt, wie du Nagios auf Ubuntu 24.04 installierst und die Überwachung eines entfernten Hosts einrichtest.
Voraussetzungen
Bevor du beginnst, stelle sicher, dass du folgendes zur Verfügung hast:
- Zwei Ubuntu-24.04-Systeme – eines für den Nagios-Server und eines als zu überwachender Remote-Host.
Passende Infrastruktur bei centron
Ubuntu-Server ohne eigene Hardware: ccloud³ VMs mit vollem Root-Zugriff ab 3,12 € im Monat, stundengenau abgerechnet und in Sekunden bereit. Cloud Server mieten →
Nagios Core aus dem Quellcode installieren und einrichten
Da Nagios Core nicht in den Standard-Repositories von Ubuntu 24.04 enthalten ist, musst du es manuell kompilieren und installieren. Folge diesen Schritten zur Einrichtung.
Stelle per SSH eine Verbindung zum vorgesehenen Nagios-Server her.
Benötigte Pakete installieren
Installiere zunächst alle erforderlichen Abhängigkeiten:
$ sudo apt install -y autoconf gcc libc6 make wget unzip apache2 php libapache2-mod-php libgd-dev openssl libssl-devProjektverzeichnis vorbereiten
Wechsle in dein Home-Verzeichnis:
$ cdErstelle ein neues Verzeichnis für die Nagios-Core-Dateien:
$ mkdir nagios-coreWechsle in das erstellte Verzeichnis:
$ cd nagios-coreQuellcode herunterladen
Lade den aktuellen Nagios-Core-Quellcode aus dem offiziellen Repository herunter:
$ wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.5.7.tar.gzEntpacke das Archiv:
$ tar xzf nagioscore.tar.gzListe den Verzeichnisinhalt auf, um die entpackten Dateien zu prüfen:
$ lsDu solltest eine Struktur wie folgt sehen:
nagioscore.tar.gz nagioscore-nagios-4.5.7
Wechsle in das entpackte Nagios-Verzeichnis (Versionsnummer ggf. anpassen):
$ cd nagioscore-nagios-4.5.7/Nagios konfigurieren und kompilieren
Führe das Konfigurationsskript aus, um Nagios in Apache zu integrieren:
$ sudo ./configure --with-httpd-conf=/etc/apache2/sites-enabledKompiliere die Nagios-Core-Komponenten:
$ sudo make allErstelle eine eigene Benutzer- und Gruppenzuweisung für Nagios:
$ sudo make install-groups-usersFüge den Benutzer www-data zur Nagios-Gruppe hinzu, damit Apache auf die Weboberfläche zugreifen kann:
$ sudo usermod -a -G nagios www-dataNagios auf dem Server installieren
Die folgenden Anweisungen zeigen dir, wie du Nagios samt aller benötigten Komponenten auf dem vorgesehenen Server installierst. Dazu gehört auch das Einrichten von Apache-Modulen und das Anlegen eines Benutzerkontos für den Zugriff auf das Web-Dashboard von Nagios.
Kernkomponenten von Nagios installieren
Installiere zuerst die Hauptanwendung von Nagios Core:
$ sudo make installRichte alle erforderlichen Konfigurationsskripte ein und starte den Nagios-Dienst:
$ sudo make install-daemoninitInstalliere das Modul, das die Ausführung externer Befehle über die Weboberfläche erlaubt:
$ sudo make install-commandmodeInstalliere die Konfigurationsdateien von Nagios:
$ sudo make install-configFüge die notwendigen Apache-Konfigurationsdateien hinzu:
$ sudo make install-webconfAktiviere das Rewrite-Modul von Apache:
$ sudo a2enmod rewriteAktiviere außerdem das CGI-Modul von Apache:
$ sudo a2enmod cgiLege einen neuen Benutzer nagiosadmin für die Anmeldung im Nagios-Dashboard an und vergib bei der Abfrage ein sicheres Passwort:
$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadminStarte Apache neu, damit die Änderungen wirksam werden:
$ sudo systemctl restart apache2NRPE auf einem entfernten Host installieren und einrichten
Um entfernte Systeme zu überwachen, nutzt Nagios den NRPE-Agenten. Dieser Dienst lauscht auf Anfragen vom Nagios-Server und liefert Systemmetriken zurück. Folge den Schritten, um NRPE auf einem separaten Ubuntu-24.04-Host zu installieren.
NRPE und Plugins auf dem Remote-System installieren
Stelle zuerst per SSH eine Verbindung zum Remote-Host her. Installiere dann NRPE sowie die benötigten Plugins:
$ sudo apt install nagios-plugins nagios-nrpe-server -yAktiviere und starte den NRPE-Dienst:
$ sudo systemctl enable --now nagios-nrpe-serverZugriff für den Nagios-Server in der NRPE-Konfiguration erlauben
Bearbeite die Konfigurationsdatei von NRPE, um zugelassene Hosts und ausführbare Plugins festzulegen:
$ sudo nano /etc/nagios/nrpe.cfgErgänze die allowed_hosts-Zeile um die öffentliche IP-Adresse deines Nagios-Servers:
allowed_hosts=127.0.0.1,::1,nagios_server_IPSpeichere die Datei, beende den Editor und starte NRPE neu, um die Änderungen zu übernehmen:
$ sudo systemctl restart nagios-nrpe-serverDamit ist der Zugriff für den Nagios-Server auf den entfernten Host freigeschaltet und die Überwachung aktiviert.
Nagios-Server zur Überwachung entfernter Hosts konfigurieren
Nachdem NRPE auf dem Remote-System installiert wurde, musst du auch die Nagios-Serverkonfiguration anpassen. So kann Nagios Daten vom Remote-Host erfassen.
Verzeichnis für Remote-Host-Konfigurationen erstellen
Lege zunächst ein separates Verzeichnis an, um Konfigurationsdateien für entfernte Hosts abzulegen:
$ sudo mkdir -p /usr/local/nagios/etc/servers/Erstelle eine neue Konfigurationsdatei für den entfernten Host:
$ sudo nano /usr/local/nagios/etc/servers/host.cfgFüge die folgende Konfiguration ein (ersetze centron und remote-host-ip mit tatsächlichem Hostnamen und IP):
define host {
use linux-server
host_name centron
alias First Remote Host
address remote-host-ip
max_check_attempts 5
check_period 24x7
notification_interval 30
notification_period 24x7
}Erklärung der Konfigurationsparameter:
- max_check_attempts: Maximale Anzahl an Prüfversuchen vor Status "Down"
- check_period: Zeitraum, in dem Prüfungen durchgeführt werden
- notification_interval: Zeit in Minuten zwischen Benachrichtigungen
- notification_period: Zeitrahmen für erlaubte Benachrichtigungen
Einbindung der Remote-Konfiguration in Nagios
Bearbeite die Hauptkonfigurationsdatei von Nagios, um das neue Verzeichnis zu aktivieren:
$ sudo nano /usr/local/nagios/etc/nagios.cfgFüge am Ende der Datei folgende Zeile ein:
cfg_dir=/usr/local/nagios/etc/serversÄnderungen übernehmen und Konfiguration prüfen
Starte Nagios neu, um die neue Konfiguration zu laden:
$ sudo systemctl restart nagiosÜberprüfe die Konfiguration auf Fehler:
$ sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfgErwartete Ausgabe:
Total Warnings: 0
Total Errors: 0
Alles sieht gut aus – beim Konfigurations-Check wurden keine schwerwiegenden Probleme festgestellt.
Starte Nagios ein letztes Mal neu, um sicherzustellen, dass alle Änderungen übernommen wurden:
$ sudo systemctl restart nagiosRemote-Host im Dashboard prüfen
Öffne die Weboberfläche erneut im Browser:
http://SERVER-IP/nagios
Gehe in der Navigation auf Hosts. Dort solltest du nun neben dem lokalen Host auch den neuen entfernten Host sehen.
Fazit
Du hast Nagios erfolgreich auf Ubuntu 24.04 installiert und so konfiguriert, dass sowohl lokale als auch entfernte Systeme überwacht werden. Die Weboberfläche bietet dir nun eine zentrale Übersicht über alle Hosts und deren Status.
Testen Sie Ihr Setup auf ccloud³
Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.