Wie installiere ich Nagios Core auf CentOS

Nagios ist eine Open-Source-Software für die System- und Netzwerküberwachung. Nagios kann die Aktivität eines Hosts und seiner Dienste überwachen und eine Warnung/Benachrichtigung ausgeben, wenn auf dem Server etwas Schlimmes passiert. Nagios kann auf Linux-Betriebssystemen laufen, und wir werden den CentOS 8 Server verwenden.

Dieses Tutorial zeigt dir, wie du Nagios Core auf einem CentOS 8 System installierst. Wir installieren Nagios Core 4.4.5 aus dem EPEL Repository und fügen dann den CentOS 8 Host Monitor zum Nagios Server hinzu.

Voraussetzungen

  • 2 CentOS 8 Server
    • Nagios Server – Hostname: hakase-nagios mit einer IP: 10.5.5.20
    • CentOS-Client – Hostname: client01 mit einer IP: 10.5.5.21
  • Root-Rechte

Was wir tun werden:

  • EPEL Repository installieren
  • Installiere Nagios Core 4.4.5
  • Nagios Plugin und NRPE Plugin installieren
  • Host zur Überwachung zum Nagios Server hinzufügen
  • Konfiguration für Host-Monitor hinzufügen
  • Testen

Schritt 1 – Installiere das EPEL Repository

Zuerst fügen wir das Repository EPEL (Extra Package for Enterprise Linux) zum CentOS 8 System hinzu. Wir werden Nagios-Pakete aus dem EPEL-Repository installieren.

Installiere das EPEL-Repository mit dem unten stehenden dnf-Befehl.

sudo dnf install epel-release

Sobald die Installation abgeschlossen ist, überprüfe alle verfügbaren Repositorys auf dem System.

sudo dnf repolist

Und schon hast du das EPEL-Repository zum CentOS 8-System hinzugefügt.

Schritt 2 – Nagios Core installieren und konfigurieren

In diesem Schritt installieren und konfigurieren wir die neueste stabile Version von Nagios Server 4.4.5 auf dem CentOS 8 System. Dazu verwenden wir das nagios-Paket aus dem EPEL-Repository.

Überprüfe alle verfügbaren Pakete mit dem Namen „nagios“.

dnf search nagios

Überprüfe dann die Details des Pakets „nagios“.

dnf info nagios

Du erhältst die folgenden Informationen über das Nagios-Paket.

– Nagios Core 4.4.5 installieren und konfigurieren

Installiere „nagios“ mit dem unten stehenden dnf-Befehl.

sudo dnf install nagios

Sobald die Installation abgeschlossen ist, gehe in das Verzeichnis „/etc/nagios“ und bearbeite die Konfigurationsdatei „nagios.cfg“.

cd /etc/nagios/
vim nagios.cfg

Entferne das Kommentarzeichen in der folgenden Zeile.

cfg_dir=/etc/nagios/servers

Speichere und schließe sie.

Erstelle nun ein neues Verzeichnis, in dem alle Host-Monitor-Konfigurationen gespeichert werden.

mkdir -p /etc/nagios/servers

Bearbeite dann die Kontaktkonfigurationsdatei „objects/contacts.cfg“.

vim objects/contacts.cfg

Ändere die E-Mail-Adresse durch deine eigene.

email       root@yourdomain.com

Speichere und schließe.

Und schon hast du den Nagios Server konfiguriert.

– Nagios-Authentifizierung einrichten

Für die Authentifizierung verwendet Nagios die grundlegende httpd-Authentifizierung, die vom Apache2-Webserver bereitgestellt wird.

Erstelle nun eine neue Apache-Basisauthentifizierung für den Benutzer „nagiosadmin“ mit dem Befehl htpasswd (siehe unten).

htpasswd  /etc/nagios/passwd nagiosadmin

Gib dein sicheres Passwort ein und wiederhole es. Damit ist die Basisauthentifizierung für den Nagios Server erstellt.

Als nächstes gehst du in das Verzeichnis „/var/www/html“ und erstellst die Datei index.html.

cd /var/www/html
echo "This is index.html for Apache" > index.html

Starte dann den httpd-Dienst und füge ihn zum Systemstart hinzu.

systemctl enable --now httpd
systemctl status httpd

Und schon hast du einen neuen Benutzer „nagiosadmin“ für Nagios Server angelegt.

– Firewall einrichten

Füge die neuen Dienste http und https zur Liste der Firewalld-Dienste hinzu.

firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent

Lade die Firewalld neu.

firewall-cmd --reload

Jetzt hast du die http- und https-Dienste zur Firewalld hinzugefügt. Dadurch kann der Nagios Server über den Webbrowser erreicht werden.

Schritt 3 – Installiere das NRPE Plugin und die Nagios Plugins

Der NRPE (Nagios Remote Plugin Executor) ist ein Nagios-Agent, der es einem entfernten System ermöglicht, das Skript „Nagios Plugins“ auf dem entfernten Überwachungssystem auszuführen.

Installiere Nagios Plugins und NRPE Plugins mit dem folgenden Befehl.

sudo dnf install nagios-plugins nrpe nagios-plugins-nrpe

Sobald die Installation abgeschlossen ist, werden wir einige Nagios Plugins für die grundlegende Serverüberwachung installieren, z. B. den ssh-Dienst, den Speicherplatz, die Benutzeranmeldung usw.

Um alle verfügbaren Nagios Plugins zu erhalten, führe den folgenden Befehl aus.

dnf search nagios-plugins

Jetzt kannst du die Nagios-Plugins mit dem unten stehenden Bash-Loop-Befehl installieren.

for i in users uptime ssh ping procs load http swap disk; do dnf install nagios-plugins-$i -y; done

Wenn die Installation abgeschlossen ist, gehe in das Verzeichnis „/etc/nagios“ und bearbeite die Konfigurationsdatei „objects/commands.cfg“.

cd /etc/nagios/
vim objects/commands.cfg

Füge die folgende Konfiguration am Ende der Zeile ein.

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

Speichere und schließe.

Starte nun den Nagios-Dienst und füge ihn zum Systemstart hinzu.

systemctl enable --now nagios

Überprüfe danach den Status des Nagios-Dienstes.

systemctl status nagios

Du wirst sehen, dass der Nagios-Dienst aktiv ist und läuft.

Öffne nun deinen Webbrowser und gib die Nagios Server URL wie folgt ein.

http://10.5.5.20/nagios/

Melde dich mit dem Benutzer „nagiosadmin“ und deinem Passwort an.

Sobald du dich eingeloggt hast, siehst du das Nagios-Dashboard wie unten abgebildet.

Damit hast du den Nagios Server 4.4.5 auf dem CentOS 8 System installiert.

Schritt 4 – Hinzufügen des zu überwachenden Hosts zum Nagios Server

In diesem Schritt fügen wir das CentOS 8 System zum Nagios Server hinzu. Wir fügen den CentOS 8 Server „client01“ mit der IP-Adresse „10.5.5.21“ zum Nagios Server hinzu.

Um den Host zum Nagios Server hinzuzufügen, musst du das NRPE und die Nagios Plugins auf dem Server installieren.

Installiere auf dem System „client01“ den NRPE-Server mit dem folgenden Befehl.

sudo dnf install nrpe

Danach installierst du einige Nagios-Plugins mit dem folgenden Bash-Loop-Befehl.

for i in users uptime ssh ping procs load http swap disk; do dnf install nagios-plugins-$i -y; done

Sobald die Installation abgeschlossen ist, gehst du in das Verzeichnis „/etc/nagios“ und bearbeitest die nrpe-Konfigurationsdatei „nrpe.conf“.

cd /etc/nagios/
vim nrpe.conf

Entferne den Kommentar in der Zeile „server_address“ und ändere den Wert mit der IP-Adresse „10.5.5.21“ von „client01“.

server_address = 10.5.5.71

Füge in der Zeile „allowed_hosts“ die IP-Adresse des Nagios-Servers „10.5.5.20“ hinzu.

allowed_hosts=127.0.0.1,::1,10.5.5.70

Definiere einige Nagios-Befehle für die grundlegende Überwachung wie unten beschrieben.

command[check_root]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ping]=/usr/lib64/nagios/plugins/check_ping -H 10.5.5.71 -w 100.0,20% -c 500.0,60% -p 5
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh -4 10.5.5.71
command[check_http]=/usr/lib64/nagios/plugins/check_http -I 10.5.5.71

Speichere und schließe.

Starte nun den NRPE-Dienst und füge ihn zum Systemstart hinzu.

systemctl enable --now nrpe

Überprüfe den Status des NRPE-Dienstes.

systemctl status nrpe

Du wirst sehen, dass der NRPE-Dienst gestartet ist und läuft.

Als Nächstes fügst du den nrpe-Port zur Firewalld hinzu und lädst die Firewalld-Konfiguration neu.

firewall-cmd --add-port=5666/tcp --permanent
firewall-cmd --reload

Damit hast du die NRPE-Konfiguration auf dem Host-Monitor „client01“ abgeschlossen.

Gehe nun zurück zum Nagios Server Terminal und überprüfe den Host „client01“ mit dem unten stehenden Befehl nagios nrpe.

/usr/lib64/nagios/plugins/check_nrpe -H 10.5.5.21
/usr/lib64/nagios/plugins/check_nrpe -H 10.5.5.21 -c check_ping

Als Ergebnis erhältst du die NRPE-Version auf dem ‚client01‘-Host und der Ping-Befehl zum ‚client01‘ war erfolgreich.

Schritt 5 – Hinzufügen der Konfiguration für den Host Monitor

Gehe zurück zum Nagios Server, gehe in das Verzeichnis „/etc/nagios/server“ und erstelle eine neue Konfiguration „client01.cfg“.

cd /etc/nagios/servers/
vim client01.cfg

Füge die folgende Konfiguration darin ein.

define host {
        use                          linux-server
        host_name                    client01
        alias                        CentOS Host
        address                      10.5.5.12
        register                     1
}
define service {
host_name                       client01
service_description             PING
check_command                   check_nrpe!check_ping
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24x7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24x7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check Users
check_command                   check_nrpe!check_users
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24x7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24x7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check SSH
check_command                   check_nrpe!check_ssh
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24x7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24x7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check Root / Disk
check_command                   check_nrpe!check_root
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24x7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24x7
notifications_enabled           1
register                        1
}

define service {
host_name                       client01
service_description             Check HTTP
check_command                   check_nrpe!check_http
max_check_attempts              2
check_interval                  2
retry_interval                  2
check_period                    24x7
check_freshness                 1
contact_groups                  admins
notification_interval           2
notification_period             24x7
notifications_enabled           1
register                        1
}

Speichere und schließe.

Starte nun den Nagios-Dienst neu.

sudo systemctl restart nagios

Damit hast du die Konfiguration für den Host ‚client01‘ zum Nagios Server hinzugefügt.

Schritt 6 – Testen

Öffne deinen Webbrowser und logge dich in das Nagios Dashboard ein.

http://10.5.5.20/nagios/

Klicke auf das Menü „Hosts“ und du bekommst den „client01“ in der Host-Liste angezeigt.

Klicke nun auf den Namen des Hosts ‚client01‘ und du erhältst Details zu den Diensten, die für den ‚client01‘ Server überwacht werden.

Damit hast du Nagios 4.4.5 auf dem CentOS 8 System installiert und den zu überwachenden Host „client01“ zum Nagios Server hinzugefügt.

Referenz

Das könnte dich auch interessieren …