Πώς να προσθέσετε απομακρυσμένο Linux στον διακομιστή Nagios χρησιμοποιώντας το πρόσθετο NRPE


Στο πρώτο μέρος του άρθρου της σειράς Nagios, εξηγήσαμε λεπτομερώς πώς να εγκαταστήσετε και να ρυθμίσετε την πιο πρόσφατη έκδοση του Nagios Core και του Nagios Plugins σε διανομές που βασίζονται σε RHEL, όπως ως CentOS Stream, Rocky Linux, AlmaLinux, και Fedora.

Σε αυτό το άρθρο, θα σας δείξουμε πώς να προσθέσετε έναν υπολογιστή Remote Linux και τις υπηρεσίες του στον κεντρικό υπολογιστή Nagios Core Monitoring χρησιμοποιώντας NRPE (Nagios Remote Plugin Executor) πράκτορας.

Ελπίζουμε να έχετε ήδη εγκαταστήσει και να λειτουργεί σωστά το Nagios Core. Εάν όχι, χρησιμοποιήστε τον παρακάτω οδηγό εγκατάστασης για να το εγκαταστήσετε στο σύστημα.

Εάν σκοπεύετε να προσθέσετε έναν απομακρυσμένο κεντρικό υπολογιστή Windows στον διακομιστή παρακολούθησης Nagios, χρησιμοποιήστε τον ακόλουθο οδηγό:

Αφού το εγκαταστήσετε, μπορείτε να προχωρήσετε περαιτέρω στην εγκατάσταση του παράγοντα NRPE στον κεντρικό υπολογιστή σας Remote Linux. Πριν προχωρήσουμε περαιτέρω, επιτρέψτε μας να σας δώσουμε μια σύντομη περιγραφή του NRPE.

Τι είναι το NRPE;

Η προσθήκη NRPE (Nagios Remote Plugin Executor) σάς επιτρέπει να παρακολουθείτε τυχόν απομακρυσμένες υπηρεσίες Linux/Unix, συσκευές δικτύου , ή πόρους όπως φόρτωση CPU, Αλλαγή, Χρήση μνήμης, Διαδικτυακοί χρήστες κ.λπ. σε τοπικό/απομακρυσμένο Linux μηχανές.

Εξάλλου, αυτοί οι τοπικοί πόροι δεν εκτίθενται κυρίως σε εξωτερικά μηχανήματα, πρέπει να εγκατασταθεί και να διαμορφωθεί ένας παράγοντας NRPE στα απομακρυσμένα μηχανήματα.

Σημείωση: Το πρόσθετο NRPE απαιτεί ότι οι Προσθήκες Nagios πρέπει να είναι εγκατεστημένες στον απομακρυσμένο υπολογιστή Linux. Χωρίς αυτά, ο δαίμονας NRPE δεν θα λειτουργήσει και δεν θα παρακολουθεί τίποτα.

Εγκατάσταση του NRPE Plugin σε Nagios Server και Remote Linux Host

Για να χρησιμοποιήσετε το NRPE, θα χρειαστεί να κάνετε ορισμένες πρόσθετες εργασίες τόσο στον Διακομιστή παρακολούθησης Nagios και στον Απομακρυσμένο κεντρικό υπολογιστή Linux στον οποίο είναι εγκατεστημένο το NRPE επί. Θα καλύψουμε και τα δύο μέρη εγκατάστασης ξεχωριστά.

Εγκατάσταση Nagios Plugins και NRPE σε απομακρυσμένο κεντρικό υπολογιστή Linux

Χρησιμοποιήστε τις παρακάτω οδηγίες για να εγκαταστήσετε τα Προσθήκες Nagios και τον δαίμονα NRPE στον Απομακρυσμένο κεντρικό υπολογιστή Linux.

Βήμα 1: Εγκαταστήστε τις Απαιτούμενες Εξαρτήσεις

Πρέπει να εγκαταστήσουμε τις απαιτούμενες βιβλιοθήκες όπως gcc, glibc, glibc-common, και GD και τις βιβλιοθήκες ανάπτυξής του χρησιμοποιώντας ο διαχειριστής πακέτων yum.

yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel tar wget
Βήμα 2: Δημιουργία χρήστη Nagios

Δημιουργήστε έναν νέο λογαριασμό χρήστη nagios και ορίστε έναν κωδικό πρόσβασης.

useradd nagios
passwd nagios
Βήμα 3: Εγκαταστήστε τα Nagios Plugins

Δημιουργήστε έναν κατάλογο για την εγκατάσταση του plugin nagios και όλες τις μελλοντικές του λήψεις.

mkdir /root/nagios
cd /root/nagios

Τώρα κατεβάστε το πιο πρόσφατο πακέτο Nagios Plugins με την εντολή wget.

wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
Βήμα 4: Εξαγωγή προσθηκών Nagios

Εκτελέστε την ακόλουθη εντολή tar για να εξαγάγετε τον πηγαίο κώδικα tarball.

tar -xvf nagios-plugins-2.3.3.tar.gz

Μετά, η εξαγωγή ενός νέου φακέλου θα εμφανιστεί σε αυτόν τον κατάλογο.

ls -l

total 2724
drwxr-xr-x. 15 root root    4096 Mar 11  2020 nagios-plugins-2.3.3
-rw-r--r--.  1 root root 2782610 Mar 11  2020 nagios-plugins-2.3.3.tar.gz
Βήμα 5: Μεταγλώττιση και εγκατάσταση προσθηκών Nagios

Στη συνέχεια, μεταγλωττίστε και εγκαταστήστε τα πρόσθετα nagios χρησιμοποιώντας τις ακόλουθες εντολές

cd nagios-plugins-2.3.3
./configure 
make
make install

Ορίστε τα δικαιώματα στον κατάλογο των προσθηκών χρησιμοποιώντας την εντολή chown.

chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec
Βήμα 6: Εγκατάσταση της προσθήκης NRPE

Για να εγκαταστήσετε το πρόσθετο nrpe, πρώτα, κατεβάστε το πιο πρόσφατο πρόσθετο NRPE ή χρησιμοποιήστε την ακόλουθη εντολή wget.

cd /root/nagios
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.2/nrpe-4.0.2.tar.gz

Αποσυσκευάστε τον πηγαίο κώδικα NRPE tarball.

tar xzf nrpe-4.0.2.tar.gz
cd nrpe-4.0.2

Μεταγλωττίστε και εγκαταστήστε το πρόσθετο NRPE.

./configure
make all

Σημείωση: Εάν εμφανιστεί το ακόλουθο σφάλμα κατά την εκτέλεση της εντολής "make all":

In file included from ../include/common.h:34,
                 from ./nrpe.c:38:
/usr/include/openssl/err.h:413:15: note: declared here
  413 | unsigned long ERR_get_error_line_data(const char **file, int *line,
      |               ^~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/ld: /tmp/ccWQBjHb.o: in function `init_ssl':
/root/nagios/nrpe-4.0.2/src/./nrpe.c:474: undefined reference to `get_dh2048'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:48: nrpe] Error 1

Στη συνέχεια, πρέπει να απενεργοποιήσετε το SSL για τη διαμόρφωση nrpe με σημαία ./configure --disable-ssl όπως φαίνεται.

./configure --disable-ssl
make all

Στη συνέχεια, εγκαταστήστε τον δαίμονα της προσθήκης NRPE και δείγμα αρχείων διαμόρφωσης.

make install-plugin
make install-daemon
make install-config

Εγκαταστήστε τον δαίμονα NRPE στο systemd ως υπηρεσία.

make install-init
Βήμα 7: Διαμόρφωση της προσθήκης NRPE

Τώρα ανοίξτε το αρχείο /usr/local/nagios/etc/nrpe.cfg και προσθέστε τον τοπικό κεντρικό υπολογιστή και τη διεύθυνση IP του Nagios Διακομιστής παρακολούθησης.

allowed_hosts=127.0.0.1,192.168.102

Στη συνέχεια, ενεργοποιήστε και επανεκκινήστε την υπηρεσία nrpe.

systemctl enable nrpe
systemctl restart nrpe
Βήμα 8: Ανοίξτε τη θύρα NRPE στο Τείχος προστασίας

Βεβαιωθείτε ότι το τείχος προστασίας στον τοπικό υπολογιστή θα επιτρέψει την πρόσβαση στον δαίμονα NRPE από απομακρυσμένους διακομιστές. Για να το κάνετε αυτό, εκτελέστε την ακόλουθη εντολή iptables.

firewall-cmd --zone=public --add-port=5666/tcp
firewall-cmd --zone=public --add-port=5666/tcp --permanent
Βήμα 8: Επαληθεύστε το NRPE Daemon Locally

Εκτελέστε την ακόλουθη εντολή netstat για να επαληθεύσετε ότι ο δαίμονας NRPE λειτουργεί σωστά στο systemd.


# netstat -at | grep nrpe
OR
netstat -na | grep "5666"


tcp        0      0 0.0.0.0:nrpe            0.0.0.0:*               LISTEN     
tcp6       0      0 [::]:nrpe               [::]:*                  LISTEN 

Εάν λάβετε έξοδο παρόμοια με την παραπάνω, σημαίνει ότι λειτουργεί σωστά. Εάν όχι, φροντίστε να ελέγξετε τα παρακάτω πράγματα.

  • Βεβαιωθείτε ότι η καταχώρηση nrpe έχει προστεθεί σωστά στο αρχείο/etc/services.
  • Οι allowed_hosts περιέχουν μια καταχώρηση για τη "nagios_ip_address" στο αρχείο /usr/local/nagios/etc/nrpe.cfg.
  • Ελέγξτε για σφάλματα στα αρχεία καταγραφής συστήματος για περίπου nrpe και διορθώστε αυτά τα προβλήματα.

Στη συνέχεια, επαληθεύστε ότι ο δαίμονας NRPE λειτουργεί σωστά εκτελώντας την εντολή "check_nrpe" που είχε εγκατασταθεί νωρίτερα για σκοπούς δοκιμής.

/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1

Θα λάβετε την ακόλουθη συμβολοσειρά στην οθόνη, σας δείχνει ποια έκδοση του NRPE είναι εγκατεστημένη:

NRPE v4.0.2
Βήμα 9: Προσαρμόστε τις εντολές NRPE

Το προεπιλεγμένο αρχείο διαμόρφωσης NRPE που εγκαταστάθηκε έχει διάφορους ορισμούς εντολών που θα χρησιμοποιηθούν για την παρακολούθηση αυτού του μηχανήματος. Το δείγμα αρχείου ρυθμίσεων βρίσκεται στη διεύθυνση.

vi /usr/local/nagios/etc/nrpe.cfg

Ακολουθούν οι προεπιλεγμένοι ορισμοί εντολών που βρίσκονται στο κάτω μέρος του αρχείου διαμόρφωσης. Προς το παρόν, υποθέτουμε ότι χρησιμοποιείτε αυτές τις εντολές. Μπορείτε να τα ελέγξετε χρησιμοποιώντας τις παρακάτω εντολές.

/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_users

USERS OK - 1 users currently logged in |users=1;5;10;0
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_load

OK - load average: 3.90, 4.37, 3.94|load1=3.900;15.000;30.000;0; load5=4.370;10.000;25.000;0; load15=3.940;5.000;20.000;0;
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_hda1

DISK OK - free space: /boot 154 MB (84% inode=99%);| /boot=29MB;154;173;0;193
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_total_procs

PROCS CRITICAL: 297 processes
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_zombie_procs

PROCS OK: 0 processes with STATE = Z

Μπορείτε να επεξεργαστείτε και να προσθέσετε νέους ορισμούς εντολών επεξεργάζοντας το αρχείο διαμόρφωσης NRPE. Τέλος, εγκαταστήσατε με επιτυχία και ρυθμίσατε τον παράγοντα NRPE στον Απομακρυσμένο κεντρικό υπολογιστή Linux.

Τώρα είναι ώρα να εγκαταστήσετε ένα στοιχείο NRPE και να προσθέσετε ορισμένες υπηρεσίες στον Διακομιστή παρακολούθησης Nagios

Εγκατάσταση NRPE στον διακομιστή παρακολούθησης Nagios

Τώρα συνδεθείτε στον Διακομιστή παρακολούθησης Nagios σας. Εδώ θα χρειαστεί να κάνετε τα ακόλουθα πράγματα:

  • Εγκαταστήστε την προσθήκη check_nrpe.
  • Δημιουργήστε έναν ορισμό εντολής Nagios χρησιμοποιώντας την προσθήκη check_nrpe.
  • Δημιουργήστε έναν κεντρικό υπολογιστή Nagios και προσθέστε ορισμούς υπηρεσίας για την παρακολούθηση του απομακρυσμένου κεντρικού υπολογιστή Linux.
Βήμα 1: Εγκαταστήστε το πρόσθετο NRPE στο Nagios

Μεταβείτε στον κατάλογο λήψης nagios και πραγματοποιήστε λήψη της πιο πρόσφατης προσθήκης NRPE ή χρησιμοποιήστε την ακόλουθη εντολή wget.

cd /root/nagios
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.2/nrpe-4.0.2.tar.gz

Αποσυσκευάστε τον πηγαίο κώδικα NRPE tarball.

tar xzf nrpe-4.0.2.tar.gz
cd nrpe-4.0.2

Μεταγλώττιση και εγκατάσταση του πρόσθετου NRPE.

./configure
make all
make install-plugin
make install-daemon
make install-init
Βήμα 2: Επαληθεύστε το NRPE Daemon Remotely

Βεβαιωθείτε ότι η προσθήκη check_nrpe μπορεί να επικοινωνήσει με τον δαίμονα NRPE στον απομακρυσμένο κεντρικό υπολογιστή Linux. Προσθέστε τη Διεύθυνση IP στην παρακάτω εντολή με τη διεύθυνση IP του κεντρικού υπολογιστή σας Remote Linux.

/usr/local/nagios/libexec/check_nrpe -H <remote_linux_ip_address>

Θα λάβετε πίσω μια συμβολοσειρά που σας δείχνει ποια έκδοση του NRPE είναι εγκατεστημένη στον απομακρυσμένο κεντρικό υπολογιστή, όπως αυτό:

NRPE v4.0.2

Εάν λάβετε ένα σφάλμα λήξης χρονικού ορίου προσθήκης, ελέγξτε τα παρακάτω πράγματα.

  • Βεβαιωθείτε ότι το τείχος προστασίας σας δεν εμποδίζει την επικοινωνία μεταξύ του απομακρυσμένου κεντρικού υπολογιστή και του κεντρικού υπολογιστή παρακολούθησης.
  • Βεβαιωθείτε ότι ο δαίμονας NRPE έχει εγκατασταθεί σωστά στο systemd.
  • Βεβαιωθείτε ότι οι κανόνες του τείχους προστασίας κεντρικού υπολογιστή απομακρυσμένου Linux αποκλείουν την επικοινωνία του διακομιστή παρακολούθησης με τον δαίμονα NRPE.

Προσθήκη απομακρυσμένου κεντρικού υπολογιστή Linux στον διακομιστή παρακολούθησης Nagios

Για να προσθέσετε έναν απομακρυσμένο κεντρικό υπολογιστή, πρέπει να δημιουργήσετε δύο νέα αρχεία "hosts.cfg" και "services.cfg" κάτω από το "/usr/local/nagios/ etc/” τοποθεσία.

Βήμα 1: Δημιουργία αρχείου κεντρικού υπολογιστή και υπηρεσιών Nagios
cd /usr/local/nagios/etc/
touch hosts.cfg
touch services.cfg

Τώρα προσθέστε αυτά τα δύο αρχεία στο κύριο αρχείο διαμόρφωσης Nagios. Ανοίξτε το αρχείο nagios.cfg με οποιοδήποτε πρόγραμμα επεξεργασίας.

vi /usr/local/nagios/etc/nagios.cfg

Τώρα προσθέστε τα δύο αρχεία που δημιουργήθηκαν πρόσφατα όπως φαίνεται παρακάτω.

You can specify individual object config files as shown below:
cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg
Βήμα 2: Διαμόρφωση αρχείου κεντρικού υπολογιστή και υπηρεσιών Nagios

Τώρα ανοίξτε το αρχείο hosts.cfg και προσθέστε το προεπιλεγμένο όνομα προτύπου κεντρικού υπολογιστή και ορίστε τους απομακρυσμένους κεντρικούς υπολογιστές όπως φαίνεται παρακάτω. Βεβαιωθείτε ότι έχετε αντικαταστήσει το όνομα_κεντρικού υπολογιστή, το ψευδώνυμο και τη διεύθυνση με τα στοιχεία του διακομιστή απομακρυσμένου κεντρικού υπολογιστή σας.

vi /usr/local/nagios/etc/hosts.cfg
## Default Linux Host Template ##
define host{
name                            linux-box               ; Name of this template
use                             generic-host            ; Inherit default values
check_period                    24x7        
check_interval                  5       
retry_interval                  1       
max_check_attempts              10      
check_command                   check-host-alive
notification_period             24x7    
notification_interval           30      
notification_options            d,r     
contact_groups                  admins  
register                        0                       ; DONT REGISTER THIS - ITS A TEMPLATE
}

## Default
define host{
use                             linux-box               ; Inherit default values from a template
host_name                       tecmint		        ; The name we're giving to this server
alias                           CentOS 6                ; A longer name for the server
address                         5.175.142.66            ; IP address of Remote Linux host
}

Στη συνέχεια, ανοίξτε το αρχείο services.cfg και προσθέστε τις ακόλουθες υπηρεσίες προς παρακολούθηση.

vi /usr/local/nagios/etc/services.cfg
define service{
        use                     generic-service
        host_name               tecmint
        service_description     CPU Load
        check_command           check_nrpe!check_load
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     Total Processes
        check_command           check_nrpe!check_total_procs
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     Current Users
        check_command           check_nrpe!check_users
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     SSH Monitoring
        check_command           check_nrpe!check_ssh
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     FTP Monitoring
        check_command           check_nrpe!check_ftp
        }
Βήμα 3: Διαμόρφωση ορισμού εντολών NRPE

Τώρα πρέπει να δημιουργηθεί ο ορισμός εντολών NRPE στο αρχείο commands.cfg.

vi /usr/local/nagios/etc/objects/commands.cfg

Προσθέστε τον ακόλουθο ορισμό εντολής NRPE στο κάτω μέρος του αρχείου.

###############################################################################
NRPE CHECK COMMAND
#
Command to use NRPE to check remote host systems
###############################################################################

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

Τέλος, επαληθεύστε τα αρχεία διαμόρφωσης Nagios για τυχόν σφάλματα.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Total Warnings: 0
Total Errors:   0

Τέλος, επανεκκινήστε το Nagios για να εφαρμόσετε πρόσφατες αλλαγές διαμόρφωσης:

systemctl restart nagios
Βήμα 4: Παρακολούθηση απομακρυσμένου Linux στο Nagios

Τώρα μεταβείτε στη διεπαφή Nagios Monitoring Web στη διεύθυνση "http://Your-server-IP-address/nagios" ή "http://FQDN/nagios ” και δώστε το όνομα χρήστη “nagiosadmin ” και τον κωδικό πρόσβασης. Ελέγξτε ότι ο Απομακρυσμένος κεντρικός υπολογιστής Linux προστέθηκε και παρακολουθείται.

συμπέρασμα

Αυτό είναι! Προς το παρόν, στο επόμενο άρθρο μου, θα σας δείξω πώς να προσθέσετε έναν κεντρικό υπολογιστή Windows στον Διακομιστή παρακολούθησης Nagios. Εάν αντιμετωπίζετε δυσκολίες κατά την προσθήκη του απομακρυσμένου κεντρικού υπολογιστή στο Nagios.

Παρακαλούμε σχολιάστε τα ερωτήματα ή το πρόβλημά σας μέσω της ενότητας σχολίων, μέχρι τότε μείνετε συντονισμένοι στο linux-console.net για περισσότερα τέτοια πολύτιμα άρθρα.