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.
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.