GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren und konfigurieren Sie Nagios unter Linux

Nagios ist eine beliebte Open-Source-Anwendung, die zur kontinuierlichen Überwachung von Systemen, Netzwerken, Diensten und Anwendungen verwendet wird. Es überwacht ständig den Status von Maschinen und verschiedenen Diensten. Im Falle eines Problems bietet es eine Frühwarnung, damit der Administrator die erforderlichen Maßnahmen ergreifen kann. Nagios führt alle Überprüfungen auf lokalen und Host-Rechnern mit externen Programmen durch, die als Plugins bekannt sind. Es stellt Ihnen auch eine Webschnittstelle zur Verfügung, mit der Sie den Status von Hosts und Diensten, den Verlauf und Protokolle anzeigen und Berichte erstellen können.

In diesem Beitrag erklären wir, wie man Nagios unter Linux installiert und konfiguriert und den Zustand anderer Linux-Server überwacht. Wir werden die beiden Debian 10 (Buster)-Server verwenden; beide im selben Netzwerk. Auf dem Überwachungsserver installieren wir den Nagios-Kern, das Nagios-Plugin und das check_nrpe-Plugin. Während wir uns auf dem Remote-Host befinden, installieren wir das Nagios-Plugin und NRPE.

Terminologien

Lassen Sie uns einige Terminologien verstehen, die Ihnen helfen, die Konfigurationen zu verstehen:

Host :Es handelt sich um ein Gerät, das überwacht werden muss, z. B. eine physische Maschine, Workstation oder ein Netzwerkgerät.

Service :Dies ist der Dienst oder die Ressource, die auf dem Host überwacht wird, z. B. HTTP, SMTP, POP, DNS, Anzahl der angemeldeten Benutzer, Speichernutzung usw.

Nagios-Plugin: Dies sind Skripte, die den Status eines Hosts oder Dienstes überprüfen und überprüfen, ob sie ordnungsgemäß funktionieren. Es gibt einige vordefinierte Plugins, die grundlegende Ressourcen wie Prozessorlast, Festplattennutzung, Ping-Raten usw. überprüfen können. Plugins befinden sich normalerweise in /usr/local/nagios/libexec Verzeichnis.

NRPE (Nagios Remote Plugin Executor)-Add-on: Das NRPE-Add-On führt die Plugins auf den Remote-Linux-Hosts aus, wodurch Nagios die lokalen Ressourcen (Festplattenspeicher, Speichernutzung usw.) im Auge behalten kann. Das NRPE-Add-on besteht aus:

  • NRPE-Daemon – Es läuft auf entfernten Linux/Unix-Hosts, die überwacht werden müssen
  • check_nrpe-Plugin – Es wird vom Nagios-Überwachungsserver verwendet

Sie müssen auf beiden Servern über sudo-Berechtigungen verfügen. Die Details unserer Maschinen sind wie folgt:

Nagios-Überwachungsserver:

  • Hostname:Nagios-Server,
  • IP-Adresse:192.168.72.158

Nagios-Host:

  • Hostname:Kunde
  • IP-Adresse:192.168.72.159

Schritt 1 – Installieren von Nagios Core auf dem Monitoring-Server

Führen Sie auf dem Nagios-Überwachungsserver die folgenden Schritte aus, um den Nagios-Core herunterzuladen und zu installieren.

1. Voraussetzungen installieren

Zuerst müssen wir Prerequisites auf dem Nagios-Überwachungsserver installieren. Aktualisieren Sie dazu die Paketliste mit dem folgenden Befehl im Terminal:

$ sudo apt update

Installieren Sie dann die erforderlichen Pakete:

$ sudo apt install -y autoconf gcc libc6 make wget unzip apache2 php libapache2-mod-php7.4 libgd-dev openssl libssl-dev

2. Laden Sie die Nagios-Quelle herunter

Navigieren Sie zu /tmp Verzeichnis:

$ cd /tmp

Laden Sie dann den Nagios-Quellcode mit wget herunter Befehl. Wir werden die derzeit verfügbare neueste Version von Nagios herunterladen, die 4.4.6 ist . Sie können die Nagios-Downloads besuchen, um nach der aktuellen stabilen Version zu suchen.

$ wget -O nagios.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.6.tar.gz

Die heruntergeladene Datei wird als nagios.tar.gz gespeichert im Verzeichnis /tmp Verzeichnis.

3. Quelle kompilieren

Extrahieren Sie das heruntergeladene Archiv nagios.tar.gz mit dem folgenden Befehl:

$ tar -xzf nagios.tar.gz

Wechseln Sie mit der cd in den entpackten Ordner Befehl:

$ cd nagioscore-nagios-4.4.6/

Führen Sie die Konfiguration aus -Skript und gibt den Pfad zum Konfigurationsverzeichnis des Apache-Servers an:

$ ./configure --with-httpd-conf=/etc/apache2/sites-enabled

Sobald das Konfigurationsskript ausgeführt wurde, sehen Sie die folgende Zusammenfassung am Ende der Ausgabe:

Ihre Konfigurierung Skript kann fehlschlagen, falls eine Voraussetzung fehlt. Installieren Sie in diesem Fall die fehlenden Voraussetzungen und führen Sie das Skript erneut aus.

Kompilieren Sie nun Nagios mit dem folgenden Befehl:

$ alles machen

4. Benutzer und Gruppe erstellen

Erstellen Sie nun Benutzer und Gruppe für Nagios.

$ sudo make install-groups-users 

Der obige Befehl erstellt einen Systembenutzer und eine Gruppe Nagios.

Wir müssen auch den Benutzer „www-data hinzufügen ” zu den Nagios Gruppe.

$ sudo usermod -a -G nagios www-data

5. Installieren von Binärdateien

Verwenden Sie dann den folgenden Befehl, um Binärdateien zu installieren:

$ sudo make install

6. Dienst / Daemon installieren

Um Dienstdateien zu installieren, verwenden Sie den folgenden Befehl:

$ sudo make install-daemoninit

7. Befehlsmodus installieren

Um die externe Befehlsdatei zu installieren und zu konfigurieren, verwenden Sie den folgenden Befehl:

$ sudo make install-commandmode

8. Konfigurationsdateien installieren

Um dann die Nagios-Beispielkonfiguration zu installieren, verwenden Sie den folgenden Befehl:

$ sudo make install-config

9. Apache-Konfigurationsdateien installieren

Dies installiert die Apache-Konfigurationsdateien, verwenden Sie den folgenden Befehl:

$ sudo make install-webconf

Aktivieren Sie nun die Apache-Module mit den folgenden Befehlen:

$ sudo a2enmod neu schreiben
sudo a2enmod cgi

Nagiosadmin-Benutzerkonto für das Webinterface erstellen:

Jetzt erstellen wir ein Apache-Benutzerkonto, das auf die Nagios-Weboberfläche zugreifen kann.

$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Legen Sie nun das Passwort für den nagiosadmin fest Benutzerkonto. Dieses Passwort wird für den Zugriff auf die Webschnittstelle von Nagios verwendet.

Starten Sie dann Apache neu, damit die Konfigurationsänderungen wirksam werden:

$ sudo systemctl reset apache2

Jetzt haben wir die Nagios Core Engine erfolgreich installiert.

Schritt 2 – Installieren des Nagios-Plugins auf dem Monitoring-Server

Damit der Nagios-Kern richtig funktioniert, müssen Sie das Nagios-Plugin installieren.

Nagios-Plugin herunterladen

Navigieren Sie auf dem Nagios-Server zu /tmp Verzeichnis:

$ cd /tmp

Laden Sie dann den Nagios-Plugin-Quellcode mit wget herunter Befehl. Wir werden die derzeit verfügbare neueste Version des Nagios-Plugins herunterladen, nämlich 2.3.3. Sie können die Github-Seite besuchen, um die neueste stabile Version zu finden.

$ wget -O Nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.3.3/nagios-plugins-2.3.3.tar. gz

Die heruntergeladene Datei wird als Nagios-plugins.tar.gz gespeichert im Verzeichnis /tmp Verzeichnis.

Kompilieren

Extrahieren Sie das heruntergeladene Archiv Nagios-plugins.tar.gz mit dem folgenden Befehl:

$ tar zxf nagios-plugins.tar.gz

Navigieren Sie mit cd zum extrahierten Ordner Befehl:

$ cd nagios-plugins-2.3.3/

Führen Sie die Konfiguration aus Skript:

$ sudo ./configure

Kompilieren Sie nun das Nagios-Plugin mit dem folgenden Befehl:

$ sudo make 
$ sudo make install

Schritt 3 – Installieren des check_nrpe-Plugins auf dem Monitoring-Server

Jetzt installieren wir check_nrpe Plugin auf unserem Nagios-Server.

Plugin-Quelle herunterladen

Navigieren Sie auf dem Nagios-Server zu /tmp Verzeichnis:

$ cd /tmp

Laden Sie dann den Quellcode von check_nrpe mit dem Befehl wget herunter. Wir werden die neueste verfügbare Version von check_nrpe herunterladen, die 4.0.3 ist. Sie können die Github-Seite besuchen, um die neueste stabile Version zu finden.

$ wget -O Nagios-nrpe.tar.gz https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.3/nrpe-4.0.3.tar.gz

Die heruntergeladene Datei wird als Nagios-nrpe.tar.gz gespeichert im Verzeichnis /tmp Verzeichnis.

Kompilieren der Quelle

Extrahieren Sie das heruntergeladene Archiv nagios.tar.gz mit dem folgenden Befehl:

$ tar -xzf Nagios-nrpe.tar.gz

Navigieren Sie mit cd zum extrahierten Ordner Befehl:

$ cd nrpe-4.0.3/

Führen Sie die Konfiguration aus Skript:

$ sudo ./configure

Kompilieren Sie nun die check_nrpe mit dem folgenden Befehl:

$ sudo make check_nrpe

$ sudo make install-plugin

Schritt 4 – Konfiguration von Nagios

Jetzt konfigurieren wir die Hauptkonfigurationsdatei von Nagios. Bearbeiten Sie die Nagios-Konfigurationsdatei nagios.cfg mit dem folgenden Befehl:

$ sudo nano /usr/local/nagios/etc/nagios.cfg

Suchen Sie nun die folgende Zeile in der Datei und kommentieren Sie sie aus, indem Sie das # entfernen Zeichen vom Anfang der Zeile.

#cfg_dir=/usr/local/nagios/etc/servers

Die obige Zeile gibt das Verzeichnis an, das eine Konfigurationsdatei für alle Hosts enthält, die der Nagios-Server überwachen wird. Speichern und schließen Sie nun die Konfigurationsdatei.

Jetzt erstellen wir das Verzeichnis in dem oben definierten Pfad:

$ sudo mkdir /usr/local/nagios/etc/servers

E-Mail-Kontakte konfigurieren

Jetzt konfigurieren wir die Kontakte, die bei jedem Ereignis benachrichtigt werden sollen. Bearbeiten Sie die Konfiguration der Nagios-Kontakte mit dem folgenden Befehl:

Um Benachrichtigungen vom Nagios-Überwachungsserver zu erhalten, müssen Sie die Kontakte konfigurieren. Öffnen Sie die Kontakte Konfigurationsdatei und geben Sie die E-Mail-Adresse an, an die Sie die E-Mails von Nagios erhalten möchten:

$ sudo nano /usr/local/nagios/etc/objects/contacts.cfg

Ersetzen Sie in der E-Mail-Anweisung [email protected]localhost mit Ihrer eigenen E-Mail-Adresse und speichern und schließen Sie dann die Datei.

check_nrpe konfigurieren

Nun, um check_nrpe zu verwenden plugin, fügen wir einen neuen Befehl im Befehl hinzu Konfigurationsdatei. Bearbeiten Sie die Befehlskonfigurationsdatei commands.cfg mit dem folgenden Befehl:

$ sudo nano /usr/local/nagios/etc/objects/commands.cfg  

Hängen Sie die folgenden Zeilen an das Ende der commands.cfg an Datei und dann speichern und schließen:

define command{

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

Starten Sie nun den Nagios-Dienst:

$ sudo systemctl Nagios.service starten

Schritt 5 – Zugriff auf die Nagios-Weboberfläche

Greifen Sie nun auf die Nagios-Webschnittstelle zu, indem Sie die folgende Adresse in einem beliebigen Webbrowser aufrufen:

http://nagios-server-ip/nagios

In unserem Szenario wäre es:

http://192.168.72.158/nagios

In der Authentifizierung erforderlich geben Sie nagiosadmin ein wie den Benutzernamen und das Passwort, die Sie zuvor festgelegt haben.

Sobald Sie sich bei der Webschnittstelle angemeldet haben, sehen Sie die Standardwebseite von Nagios. Gehen Sie zu den Hosts in der linken Seitenleiste, um die überwachten Hosts anzuzeigen.

Derzeit sehen Sie nur einen Host „localhost “, das ist der Nagios-Server selbst. Um andere Hosts zu überwachen, müssen Sie das NRPE installieren Dämon auf ihnen.

Schritt 6 – Einrichtung des Remote-Hosts

Jetzt müssen Sie das Nagios-Plugin installieren und NRPE auf den Hosts, die auf dem Nagios-Server überwacht werden müssen.

1. Installieren Sie das Nagios-Plugin auf dem Remote-Host

Befolgen Sie auf dem Remote-Host (Client), der überwacht werden muss, die folgenden Schritte, um das Nagios-Plugin zu installieren.

1. Aktualisieren Sie zuerst das apt:

$ sudo apt update

2. Führen Sie dann den folgenden Befehl aus, um die erforderlichen Pakete zu installieren:

$ sudo apt install autoconf gcc libmcrypt-dev make libssl-dev dc build-essential gettext

3. Navigieren Sie nun zu /tmp und laden Sie das Nagios-Plugin herunter.

$ cd /tmp
$ wget -O Nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.3.3/nagios-plugins-2.3.3.tar. gz

4. Extrahieren Sie das heruntergeladene Archiv:

$ tar -zxf nagios-plugins.tar.gz

5. Wechseln Sie in den extrahierten Ordner und führen Sie die Konfigurierung aus Skript:

$ cd nagios-plugins-2.3.3// 
$ sudo ./configure

6. Kompilieren Sie das Plugin:

$ sudo make 
$ sudo make install

2. Installieren Sie den NRPE-Daemon auf dem Remote-Host

Führen Sie die folgenden Schritte aus, um NRPE auf dem Remote-Host zu installieren.

1. Aktualisieren Sie zuerst das apt:

$ sudo apt update

2. Geben Sie den folgenden Befehl aus, um die Voraussetzungen zu installieren:

$ sudo apt install -y autoconf automake gcc libc6 libmcrypt-dev make libssl-dev

3. Navigieren Sie nun zu /tmp und NRPE herunterladen.

$ cd /tmp 
$ wget -O nrpe.tar.gz https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.3/nrpe-4.0.3.tar. gz

4. Extrahieren Sie das heruntergeladene Archiv:

$tar xzf nrpe.tar.gz

5.  Gehen Sie in den extrahierten Ordner und führen Sie das Konfigurationsskript aus:

$ sudo ./configure --enable-command-args

6. Kompilieren Sie das NRPE mit den folgenden Befehlen:

$ sudo alles machen
$ make install-groups-users

$ sudo make install

$ sudo make install-config

$ sudo make install-init

3. Firewall konfigurieren

Wenn jetzt eine Firewall auf Ihrem Remote-Host läuft, müssen Sie Port 5666 (von NRPE verwendet) über diese öffnen.

$ sudo ufw erlaubt 5666/tcp

4. NRPE-Konfiguration aktualisieren

Öffnen Sie nun die NRPE-Konfigurationsdatei im Remote-Host:

$ sudo nano /usr/local/nagios/etc/nrpe.cfg

Sie müssen die folgenden Einträge finden und ändern:

Client-IP-Adresse hinzufügen:

server_address=192.168.72.159

IP-Adresse des Nagios-Servers hinzufügen:

allowed_hosts=127.0.0.1,192.168.72.158

Ersetzen Sie außerdem /dev/vda1 mit Ihrem Root-Dateisystem:

command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

Starten Sie dann den NRPE-Dienst:

$ sudo systemctl start nrpe.service

Überprüfen Sie nun, ob der NRPE-Dienst ordnungsgemäß ausgeführt wird:

$ sudo systemctl status nrpe.service

Das aktive (wird ausgeführt) in der folgenden Ausgabe zeigt, dass der Dienst ohne Probleme erfolgreich ausgeführt wird. Sie können auch sehen, dass der NRPE Verbindungen von 192.168.72.158 zulässt das ist die IP-Adresse des Nagios-Servers.

Überprüfen Sie nun, ob die check_nrpe auf dem Nagios-Server kann mit dem NRPE auf dem entfernten Host kommunizieren , führen Sie diesen Befehl auf dem Nagios-Server aus :

$ /usr/local/nagios/libexec/check_nrpe -H remote_host_ip

Sie sollten die folgende ähnliche Ausgabe erhalten (NRPE-Versionsnummer).

Schritt 7 – Hostkonfiguration zum Nagios-Server hinzufügen

Jetzt müssen Sie auf dem Nagios-Überwachungsserver separate Konfigurationsdateien in /usr/local/nagios/etc/servers erstellen / für alle entfernten Hosts, die Sie überwachen müssen.

Für unseren Host-Rechner erstellen wir eine neue Konfigurationsdatei client.cfg :

$ sudo nano /usr/local/nagios/etc/servers/client.cfg

Mandant ersetzen mit dem Namen Ihres Hosts:

Fügen Sie nun Host-Definition hinzu in die neue Konfigurationsdatei, die den Wert von host_name ersetzt mit dem Remote-Hostnamen, alias mit einer kurzen Beschreibung und der Adresse mit der IP-Adresse des entfernten Hosts.

Diese Konfiguration prüft, ob der Host-Rechner aktiv oder heruntergefahren ist.

 Host definieren {

Linux-Server verwenden

Hostname Client

Alias-Client-Rechner

Adresse 192.168 .72.159

max_check_attempts 5

}

Fügen Sie nun Dienstdefinition hinzu in die Konfigurationsdatei zum Überwachen des entfernten Hosts. Ersetzen Sie den Wert von host_name mit dem entfernten Hostnamen.

Hinweis: Diese Dienstdefinitionen verwenden die in /usr/local/nagios/etc/nrpe.cfg vorkonfigurierten Befehle Datei auf dem entfernten Host.

Fügen Sie den folgenden Dienstblock hinzu, um die CPU-Last zu überwachen auf dem entfernten Host

Dienst definieren {

generischen Dienst verwenden

Hostname Client

Dienstbeschreibung CPU-Last

check_command check_nrpe! check_load

}


c auf dem Remote-Host:
Dienst definieren{

generischen Dienst verwenden

Hostname Client

Dienstbeschreibung Prozesse insgesamt

check_command check_nrpe! check_total_procs

}

Fügen Sie den folgenden Dienstblock hinzu, um die Festplattennutzung zu überwachen auf dem entfernten Host:

define service { 
use general-service     

host_name                       client
      service_description             Check Disk
      check_command                   check_nrpe!check_disk

}

Fügen Sie den folgenden Dienstblock hinzu, um die Anzahl der Benutzer zu überwachen derzeit angemeldet auf dem entfernten Host:

define service { 
use general-service     

host_name                       client
      service_description             Aktuelle Benutzer
      check_command                   check_nrpe!check_users





Speichern und schließen Sie nun die Konfigurationsdatei.

Starten Sie den Nagios-Dienst neu, um die Konfigurationsänderungen zu übernehmen:

$ sudo systemctl Nagios neu starten

Rufen Sie nun das Webinterface mit http://nagios-server-ip/nagios auf. Warten Sie eine Weile und Ihr Remote-Host wird der Nagios-Weboberfläche hinzugefügt.

Gehen Sie zu Hosts aus der linken Navigationsleiste und Sie sehen Ihren Remote-Host dort aufgelistet.

Gehen Sie dann zu den Diensten und Sie sehen den Status aller Dienste für einen Host, den Sie für die Überwachung konfiguriert haben.

In diesem Beitrag haben wir erklärt, wie Sie die Nagios-Überwachungslösung unter Linux installieren und konfigurieren. Wir haben auch erklärt, wie Sie Remote-Hosts für die Überwachung einrichten. Jetzt können Sie den Zustand von Linux-Hosts und den darauf ausgeführten Diensten ganz einfach überwachen.

Klicken Sie hier, wenn Sie daran interessiert sind, Ihre Server mit Zabbix zu überwachen.


Debian
  1. So installieren und konfigurieren Sie Nagios unter Ubuntu 18.04

  2. So installieren und konfigurieren Sie Nagios unter CentOS 7

  3. So installieren und konfigurieren Sie Elasticsearch unter Rocky Linux 8

  4. Wie installiere und konfiguriere ich Samba unter Ubuntu Linux?

  5. So installieren und konfigurieren Sie EMC PowerPath unter Linux

So installieren und konfigurieren Sie Memcached unter Ubuntu Linux

So installieren und konfigurieren Sie Redis auf einem Linux-System

So installieren und konfigurieren Sie Nagios unter Ubuntu Linux

So installieren und konfigurieren Sie TeamViewer unter Ubuntu Linux

So installieren und konfigurieren Sie Flameshot unter Ubuntu Linux

So installieren und konfigurieren Sie den DNS-Server unter Linux