Nagios ist ein kostenloses Open-Source-Überwachungstool, das uns hilft, Dienste und Anwendungen zu überwachen, die auf Windows, Linux, Routern und anderen Netzwerkgeräten ausgeführt werden.
Mithilfe der grafischen Oberfläche von Nagios können Sie grundlegende Dienste (FTP, HTTP, SSH usw.) und Attribute (Systemlast, Speicher, CPU-Auslastung usw.) überwachen.
In diesem Beitrag werden wir sehen, wie man Nagios auf CentOS 8 / RHEL 8 installiert und wie man Anwendungsdienste mit Nagios-Plugins überwacht.
Voraussetzungen
Nagios erfordert Webserver (httpd), PHP, Compiler und Entwicklungsbibliotheken.
Installieren Sie alle Pakete mit einem einzigen Befehl.
yum -y install httpd php gcc glibc glibc-common wget perl gd gd-devel unzip zip tar
Erstellen Sie einen Benutzer und eine Gruppe, um die Ausführung externer Befehle über die Webschnittstelle zuzulassen. Fügen Sie den Benutzer und den Apache-Benutzer als Teil der erstellten Gruppe hinzu.
useradd nagios groupadd nagcmd usermod -a -G nagcmd nagios usermod -a -G nagcmd apache
Installieren Sie Nagios
Laden Sie den Nagios Core über das Terminal von der offiziellen Website herunter.
cd /tmp/ wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.5.tar.gz tar -zxvf nagios-4.4.5.tar.gz cd /tmp/nagios-4.4.5/
Kompilieren und installieren Sie Nagios Core auf Ihrem System.
./configure --with-nagios-group=nagios --with-command-group=nagcmd make all make install make install-init make install-config make install-commandmode
Installieren Sie das Nagios-Webinterface
Installieren Sie die Nagios-Webschnittstelle mit dem folgenden Befehl.
make install-webconf
Erstellen Sie ein Benutzerkonto (nagiosadmin) für die Nagios-Weboberfläche. Merken Sie sich das Passwort, das Sie für diesen Benutzer festgelegt haben – Sie werden es später brauchen.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Starten Sie den Apache-Webserver neu.
systemctl restart httpd systemctl enable httpd
Nagios konfigurieren
Nagios legt Konfigurationsdateien im Verzeichnis /usr/local/nagios/etc ab. Die Standardkonfigurationen sollten für Nagios problemlos funktionieren.
Wir werden nur eine Änderung vornehmen, bevor wir fortfahren.
Bearbeiten Sie die Konfigurationsdatei /usr/local/nagios/etc/objects/contacts.cfg und ändern Sie die mit der Nagiosadmin-Kontaktdefinition verknüpfte E-Mail-Adresse in Ihre E-Mail-Adresse, um Benachrichtigungen zu erhalten.
vi /usr/local/nagios/etc/objects/contacts.cfg
Ersetzen Sie das E-Mail-Adressfeld, um die Benachrichtigung zu erhalten.
define contact { contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default values from generic-contact template (defined above) alias Nagios Admin ; Full name of user email [email protected] ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** }
Nagios-Plugins installieren
Laden Sie Nagios-Plugins in das /tmp-Verzeichnis herunter und extrahieren Sie es.
cd /tmp wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz tar -zxvf nagios-plugins-2.2.1.tar.gz cd /tmp/nagios-plugins-2.2.1/
Kompilieren und installieren Sie die Nagios-Plugins.
./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install
Nagios starten
Überprüfen Sie die Nagios-Beispielkonfigurationsdateien.
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Ausgabe:
Nagios Core 4.4.5 Copyright (c) 2009-present Nagios Core Development Team and Community Contributors Copyright (c) 1999-2009 Ethan Galstad Last Modified: 2019-08-20 License: GPL Website: https://www.nagios.org Reading configuration data... Read main config file okay... Read object config files okay... Running pre-flight check on configuration data... Checking objects... Checked 8 services. Checked 1 hosts. Checked 1 host groups. Checked 0 service groups. Checked 1 contacts. Checked 1 contact groups. Checked 24 commands. Checked 5 time periods. Checked 0 host escalations. Checked 0 service escalations. Checking for circular paths... Checked 1 hosts Checked 0 service dependencies Checked 0 host dependencies Checked 5 timeperiods Checking global event handlers... Checking obsessive compulsive processor commands... Checking misc settings... Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check
Wenn keine Fehler vorliegen, starten Sie den Nagios-Dienst.
systemctl start nagios
Nagios beim Systemstart aktivieren.
systemctl enable nagios
Überprüfen Sie den Status des Nagios-Dienstes mit dem folgenden Befehl.
systemctl status nagios
SELinux
Prüfen Sie, ob sich SELinux im Enforcing-Modus befindet.
getenforce
Ändere den SELinux-Modus auf Permissive oder Disable.
setenforce 0
Um diesen SELinux-Modus dauerhaft zu machen, ändern Sie /etc/selinux/config und starten Sie das System neu.
Firewall
Erstellen Sie eine Firewall-Regel, um den Webserver-Zugriff durch die Firewall zuzulassen.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Greifen Sie auf die Nagios-Weboberfläche zu
Greifen Sie über die folgende URL auf die Nagios-Webschnittstelle zu.
http://ip-add-re-ss/nagios/Sie müssen den zuvor angegebenen Benutzernamen (nagiosadmin) und das Kennwort verwenden, um auf die Nagios-Webschnittstelle zuzugreifen.
Die Nagios-Konsole sieht wie folgt aus.
Nachdem Sie sich bei der Nagios-Weboberfläche angemeldet haben, klicken Sie im linken Bereich auf Hosts, um eine Liste der Systeme anzuzeigen, die von Nagios überwacht werden.
Da wir Nagios keinen Host hinzugefügt haben, überwacht es nur den Localhost selbst.
Klicken Sie im linken Bereich auf Dienste, um den Status aller Dienste zu überprüfen, die mit Nagios überwacht werden.
Schlussfolgerung
In diesem Beitrag haben Sie gelernt, wie man Nagios auf CentOS 8 / RHEL 8 installiert und Nagios konfiguriert, um die Dienste mit Hilfe von Nagios-Plugins zu überwachen. In diesem Moment überwacht Nagios den Server selbst. Sie können das Remote-Linux-System auch mit Nagios mit dem NRPE-Add-on überwachen.