NRPE Eklentisini Kullanarak Nagios Sunucusuna Uzak Linux Nasıl Eklenir


Nagios serisi makalemizin ilk bölümünde, RHEL tabanlı dağıtımlarda Nagios Core ve Nagios Plugins'in en son sürümünün nasıl kurulacağını ve yapılandırılacağını ayrıntılı olarak açıkladık. CentOS Stream, Rocky Linux, AlmaLinux ve Fedora olarak.

Bu makalede, NRPE (Nagios Core Monitoring) kullanarak Uzak Linux makinesini ve hizmetlerini Nagios Core Monitoring ana bilgisayarına nasıl ekleyeceğinizi göstereceğiz. >Nagios Remote Plugin Executor) aracısı.

Nagios Core'u zaten yüklediğinizi ve düzgün şekilde çalıştırdığınızı umuyoruz. Değilse, lütfen sisteme kurmak için aşağıdaki kurulum kılavuzunu kullanın.

Nagios izleme sunucusuna uzak bir Windows ana bilgisayarı eklemeyi planlıyorsanız aşağıdaki kılavuzu kullanın:

Yükledikten sonra, NRPE aracısını Remote Linux ana makinenize yükleme işlemine devam edebilirsiniz. Daha ileri gitmeden önce size NRPE'nin kısa bir tanımını verelim.

NRPE nedir?

NRPE (Nagios Remote Plugin Executor) eklentisi, tüm uzak Linux/Unix hizmetlerini, ağ cihazlarını izlemenize olanak tanır veya yerel/uzak Linux'ta CPU yükü, Takas, Bellek kullanımı, Çevrimiçi kullanıcılar vb. kaynaklar makineler.

Sonuçta, bu yerel kaynaklar çoğunlukla harici makinelere açık değildir; uzak makinelere bir NRPE aracısının yüklenmesi ve yapılandırılması gerekir.

Not: NRPE eklentisi, uzak Linux makinesine Nagios Eklentilerinin yüklenmesini gerektirir. Bunlar olmadan NRPE arka plan programı çalışmaz ve hiçbir şeyi izlemez.

Nagios Sunucusuna ve Uzak Linux Ana Bilgisayarına NRPE Eklentisinin Kurulumu

NRPE'yi kullanmak için hem Nagios İzleme Sunucusu'nda hem de NRPE'nin yüklü olduğu Uzak Linux Ana Bilgisayarı'nda bazı ek görevler yapmanız gerekecektir. Açık. Her iki kurulum parçasını ayrı ayrı ele alacağız.

Nagios Eklentilerini ve NRPE'yi Uzak Linux Ana Bilgisayarına Yükleme

Nagios Eklentilerini ve NRPE arka plan programını Uzak Linux Ana Bilgisayarına yüklemek için lütfen aşağıdaki talimatları kullanın.

1. Adım: Gerekli Bağımlılıkları Kurun

gcc, glibc, glibc-common ve GD gibi gerekli kitaplıkları ve geliştirme kitaplıklarını aşağıdakileri kullanarak yüklememiz gerekir: yum paket yöneticisi.

yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel tar wget
Adım 2: Nagios Kullanıcısı Oluşturun

Yeni bir nagios kullanıcı hesabı oluşturun ve bir şifre belirleyin.

useradd nagios
passwd nagios
Adım 3: Nagios Eklentilerini Kurun

Nagios eklentisinin kurulumu ve gelecekteki tüm indirmeleri için bir dizin oluşturun.

mkdir /root/nagios
cd /root/nagios

Şimdi en son Nagios Eklentileri paketini wget komutuyla indirin.

wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
Adım 4: Nagios Eklentilerini Çıkarın

Kaynak kodu tarball'ını çıkarmak için aşağıdaki tar komutunu çalıştırın.

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

Daha sonra, bu dizinde yeni bir klasörün çıkarılması görünecektir.

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
Adım 5: Nagios Eklentilerini Derleyin ve Yükleyin

Daha sonra aşağıdaki komutları kullanarak nagios eklentilerini derleyin ve yükleyin.

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

Chown komutunu kullanarak eklenti dizinindeki izinleri ayarlayın.

chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec
Adım 6: NRPE Eklentisini Yükleme

Nrpe eklentisini kurmak için öncelikle en güncel NRPE Eklentisini indirin veya aşağıdaki wget komutunu kullanın.

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

NRPE kaynak kodu tarball'ını paketinden çıkarın.

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

NRPE eklentisini derleyin ve yükleyin.

./configure
make all

Not: 'Make all' komutunu çalıştırırken aşağıdaki hatayı alırsanız:

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

Daha sonra gösterildiği gibi ./configure --disable-ssl flag'ı ile nrpe yapılandırması için SSL'yi devre dışı bırakmanız gerekir.

./configure --disable-ssl
make all

Daha sonra, NRPE eklenti arka plan programını ve örnek yapılandırma dosyalarını yükleyin.

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

NRPE arka plan programını systemd altına hizmet olarak yükleyin.

make install-init
Adım 7: NRPE Eklentisini Yapılandırma

Şimdi /usr/local/nagios/etc/nrpe.cfg dosyasını açın ve Nagios'un yerel ana bilgisayarını ve IP adresini ekleyin İzleme Sunucusu.

allowed_hosts=127.0.0.1,192.168.102

Ardından nrpe hizmetini etkinleştirin ve yeniden başlatın.

systemctl enable nrpe
systemctl restart nrpe
Adım 8: Güvenlik Duvarında NRPE Bağlantı Noktasını açın

Yerel makinedeki Güvenlik Duvarının, NRPE arka plan programının uzak sunuculardan erişilmesine izin vereceğinden emin olun. Bunu yapmak için aşağıdaki iptables komutunu çalıştırın.

firewall-cmd --zone=public --add-port=5666/tcp
firewall-cmd --zone=public --add-port=5666/tcp --permanent
Adım 8: NRPE Daemon'u Yerel Olarak Doğrulayın

NRPE arka plan programının systemd altında düzgün çalıştığını doğrulamak için aşağıdaki netstat komutunu çalıştırın.


# 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 

Yukarıdakine benzer bir çıktı alırsanız, düzgün çalıştığı anlamına gelir. Değilse, aşağıdakileri kontrol ettiğinizden emin olun.

  • Nrpe girişinin /etc/services dosyasına doğru şekilde eklendiğini kontrol ettiğinizden emin olun.
  • allowed_hosts, /usr/local/nagios/etc/nrpe.cfg dosyasında "nagios_ip_address" için bir giriş içerir.
  • nrpe ile ilgili sistem günlüğü dosyalarındaki hataları kontrol edin ve bu sorunları düzeltin.

Ardından, daha önce test amacıyla yüklenen "check_nrpe" komutunu çalıştırarak NRPE arka plan programının düzgün şekilde çalıştığını doğrulayın.

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

Ekranda aşağıdaki dizeyi göreceksiniz, bu size hangi NRPE sürümünün kurulu olduğunu gösterir:

NRPE v4.0.2
Adım 9: NRPE Komutlarını Özelleştirin

Yüklenen varsayılan NRPE yapılandırma dosyasında, bu makineyi izlemek için kullanılacak çeşitli komut tanımları bulunur. Örnek yapılandırma dosyası adresinde bulunur.

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

Aşağıda, yapılandırma dosyasının alt kısmında bulunan varsayılan komut tanımları yer almaktadır. Şimdilik bu komutları kullandığınızı varsayıyoruz. Aşağıdaki komutları kullanarak bunları kontrol edebilirsiniz.

/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 yapılandırma dosyasını düzenleyerek yeni komut tanımlarını düzenleyebilir ve ekleyebilirsiniz. Son olarak, NRPE aracısını Uzak Linux Ana Bilgisayarı'na başarıyla yüklediniz ve yapılandırdınız.

Artık bir NRPE bileşeni kurmanın ve Nagios İzleme Sunucunuza bazı hizmetler eklemenin zamanı geldi…

Nagios İzleme Sunucusuna NRPE Kurulumu

Şimdi Nagios İzleme Sunucunuz'da oturum açın. Burada aşağıdakileri yapmanız gerekecek:

  • check_nrpe eklentisini yükleyin.
  • check_nrpe eklentisini kullanarak bir Nagios komut tanımı oluşturun.
  • Nagios ana makinesi oluşturun ve uzak Linux ana makinesini izlemek için hizmet tanımları ekleyin.
Adım 1: Nagios'a NRPE Eklentisini yükleyin

Nagios indirme dizinine gidin ve en son NRPE Eklentisini indirin veya aşağıdaki wget komutunu kullanın.

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

NRPE kaynak kodu tarball'ını paketinden çıkarın.

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

NRPE eklentisini derleyin ve yükleyin.

./configure
make all
make install-plugin
make install-daemon
make install-init
Adım 2: NRPE Daemon'u Uzaktan Doğrulayın

check_nrpe eklentisinin uzak Linux ana bilgisayarındaki NRPE arka plan programıyla iletişim kurabildiğinden emin olun. Aşağıdaki komuta IP adresini, Uzak Linux ana makinenizin IP adresiyle ekleyin.

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

Uzak ana makinede hangi NRPE sürümünün yüklü olduğunu gösteren bir dize alacaksınız:

NRPE v4.0.2

Eklenti zaman aşımı hatası alırsanız aşağıdakileri kontrol edin.

  • Güvenlik duvarınızın uzak ana makine ile izleme ana makinesi arasındaki iletişimi engellemediğinden emin olun.
  • NRPE arka plan programının systemd altında doğru şekilde kurulduğundan emin olun.
  • Uzak Linux ana bilgisayar güvenlik duvarı kurallarının, izleme sunucusunun NRPE arka plan programıyla iletişim kurmasını engellediğinden emin olun.

Nagios İzleme Sunucusuna Uzak Linux Ana Bilgisayarını Ekleme

Uzak ana makine eklemek için “/usr/local/nagios/” altında iki yeni “hosts.cfg” ve “services.cfg” dosyası oluşturmanız gerekir. vb/” konumu.

Adım 1: Nagios Ana Bilgisayar ve Hizmetler Dosyasını Oluşturma
cd /usr/local/nagios/etc/
touch hosts.cfg
touch services.cfg

Şimdi bu iki dosyayı ana Nagios yapılandırma dosyasına ekleyin. nagios.cfg dosyasını herhangi bir düzenleyiciyle açın.

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

Şimdi yeni oluşturulan iki dosyayı aşağıda gösterildiği gibi ekleyin.

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
Adım 2: Nagios Ana Bilgisayarını ve Hizmetler Dosyasını Yapılandırma

Şimdi hosts.cfg dosyasını açın ve aşağıda gösterildiği gibi varsayılan ana makine şablonu adını ekleyin ve uzak ana makineleri tanımlayın. Ana makine_adı, takma ad ve adres'i uzak ana makine sunucunuzun ayrıntılarıyla değiştirdiğinizden emin olun.

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
}

Daha sonra services.cfg dosyasını açın ve izlenecek aşağıdaki hizmetleri ekleyin.

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
        }
Adım 3: NRPE Komut Tanımını Yapılandırma

Artık commands.cfg dosyasında NRPE komut tanımının oluşturulması gerekiyor.

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

Aşağıdaki NRPE komut tanımını dosyanın en altına ekleyin.

###############################################################################
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$
        }

Son olarak Nagios Yapılandırma dosyalarını herhangi bir hata açısından doğrulayın.

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

Total Warnings: 0
Total Errors:   0

Son olarak, son yapılandırma değişikliklerini uygulamak için Nagios'u yeniden başlatın:

systemctl restart nagios
Adım 4: Nagios'ta Uzak Linux'u İzleme

Şimdi “http://Sunucunuzun-IP-adresi/nagios” veya “http://FQDN/nagios adresindeki Nagios Monitoring Web arayüzüne gidin ” ve “nagiosadmin ” kullanıcı adını ve şifre'yi girin. Uzak Linux Ana Bilgisayarının eklendiğini ve izlendiğini kontrol edin.

Çözüm

Bu kadar! şimdilik, gelecek makalemde size Nagios izleme Sunucusuna bir Windows ana bilgisayarını nasıl ekleyeceğinizi göstereceğim. Uzak ana makineyi Nagios'a eklerken herhangi bir zorlukla karşılaşıyorsanız.

Lütfen sorularınız veya sorunlarınız hakkında yorum bölümü aracılığıyla yorum yapın, o zamana kadar bu tür değerli makaleler için linux-console.net'u takip etmeye devam edin.