nagios kliens Debian OS ala - check_by_ssh tesztelese

Fórumok

Sziasztok,

 

tudna valaki segiteni, milyen csomagokat kell felrakni a nagios kliensre es honnan huzok le hozza aktualis nagios

plugin-csomagot?

Szukseges a nagios user es group letrehozasa kliensen?

Nagios klienst szeretnek felrakni foleg debian OS (10,9) alatt futo gepekre.

Cel: a check_by_ssh tesztelese.

 

Koszonom a segitseget.

Ardi

Hozzászólások

Kliensen elsokent is az nrpe-csomagot kell feltenned, az magaval hoz egy csomo plugin-t. Ha pont az, amit keresel, nincs koztuk, eleg csak a helyere rakni, illetve egy rovid konfiguracios allomanyt szerkesztened.

Pedig mashogy nem megy, vagy en vagyok nagyon felretajekoztatott (minimalis Nagios-uzemeltetes es valamivel tobb hasznalat utan). Ha leirod, pontosan mit szeretnel, lehet, hogy meg lehet kerulni (pl. a vonatkozo script kezi futtatasaval), de nem feltetlenul lesz ugyanaz az eredmeny, mint amit a Nagios+nrpe parositassal kapnal (elvegre az a hivatalos, elvileg).

Illetve ezt irtad: "Nagios klienst szeretnék.."

Az nrpe a Nagios "kliens".

Nos, a https://linuxtechlab.com/nagios-monitoring-using-ssh/ szerint:

 

In our earlier tutorials, we have discussed how to install Nagios server & add Linux client for monitoring using NRPE plugin & also to add Windows clients for monitoring using NSClient++. But those are not the only ways to connect clients to Nagios server for monitoring, we can also allow Nagios server to monitor Linux machines by ssh using the check_by_ssh plugin.

 

szoval, azt irjak, hogy: :But those are not the only ways to connect clients to Nagios server for monitoring..."

Sajna, e leiras nem debian-ra van.

az ssh kulcsoknal akadtam el - 2 esetet probaltam -

a) kulcsok generalasa mint root ==> OK

a) kulcsok generalasa mint nagios user ==> NOK

 

 

 

a) nagios-szerver:

mint  root  cd /root/.ssh
ssh-keygen

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/nagios
.
.
.
nagios
nagios.pub

vim /root/.ssh/config

Host    aa.aa.aa.aa
        IdentityFile    /root/.ssh/nagios

 

 

Megjegyzes: aa.aa.aa.aa nagios-kliens-gep_ip

ssh-copy-id -i /root/.ssh/nagios nagios@aa.aa.aa.aa
ssh 'nagios@aa.aa.aa.aa' ...mukodik password nelkul

mehet a check_by_ssh Plugin proba

b)
nagios /usr/local/nagios/.ssh
$ ssh-copy-id -i /usr/local/nagios/.ssh/nagios nagios@aa.aa.aa.aa
/usr/bin/ssh-copy-id: 59: cd: can't cd to /home/nagios
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/usr/local/nagios/.ssh/nagios.pub"
The authenticity of host 'aa.aa.aa.aa (aa.aa.aa.aa)' can't be established.
ECDSA key fingerprint is SHA256:Uxxxxxxxxxxxxxxxxxxxxxxxxxx0.
Are you sure you want to continue connecting (yes/no)? yes
mktemp: failed to create file via template ‘/home/nagios/.ssh/ssh-copy-id_id.XXXXXXXXXX’: No such file or directory
/usr/bin/ssh-copy-id: ERROR: mktemp failed
$ exit

Nem igazan ertem miert bonyolitod ennyire tul..

Meg azt sem, hogy miert kene a nagios user neveben csinalnod a kulcsot. Probald igy:

- generalsz egy kulcspart, a root neveben, ahogy kell

- csinalsz a nagios user home-jaban egy .ssh mappat, azon belul authorized_keys file-t

- az authorized_keys-be bemasolod az iment generalt kulcspar publikus tagjat

- beallitod a jogosultsagokat (chown -R nagios: /home/nagios/.ssh && chmod 700 /home/nagios/.ssh && chmod 600 /home/nagios/.ssh/authorized_keys)

- orulsz (elvben, ha megertettem mind szeretnel, de ma ez kerdeses, hulla vagyok :))

Szerkesztve: 2020. 07. 21., k - 16:51

Nem teljesen ertem, mit szeretnel, de megprobalok tippelni.

A Nagios kliens az NRPE, de ha jol ertem, te nem ezt szeretned feltelepiteni a gepekre, hanem az egyes checkeket gyakorlatilag NRPE helyett a check_by_ssh segitsegevel futtatnad, teljesen kihagyva az NRPE-t a jatekbol.

Ha jol gondolom, akkor a kovetkezo forgatokonyvet ajanlom figyelmedbe:

  • A Nagios szervert futtato gep oldalrol ellenorizd meg, hogy a Nagios servert futtato usernek (celszeruen: a nagios usernek) van-e joga be SSH-zni a gepekre. Ezt ugy tudod legegyszerubben megtenni, hogy rootkent "sudo -Hu nagios bash -l" -t adsz ki, igy atkerulsz a Nagios user kontextusaba, es onnan megprobalsz ra ssh-zni a gepre ("ssh user@1.2.3.4 pwd"), ha visszakapod az adott login user home-janak az utvonalat, akkor jo vagy, ha nem, akkor be kell allitanod a nagios user kulcsat a gepeken a kivant userhez. Tehat nem a root-et, hanem a Nagios-et. Ha nincs ilyen neki, akkor letre kell hozni, vagy oda kell masolni.
  • Ezek utan az egyes monitorozott gepeken telepitened kell a nagios-plugins vagy nagios-plugins-all vagy monitoring-plugins-all csomagot (ez Debian / Ubuntu verzionkent valtozik, hogy mi eppen), ebben megvan az osszes check_valami script, amit valaha le akarsz futtatni.
  • Ezek utan a Nagios oldalan le kell definialnod a szukseges command objektumokat. Ez annyira nem bonyolult, ha azonban szeretned megkonnyiteni a sajat dolgodat, telepits egy NagiosQL-t, az eleg jo feluletet ad ehhez. (Egyszer fogok mar errol is irni egy cikket... egyszer). Arra figyelj, hogy a check_valami scriptek nincsenek pathen, ezert teljes utvonallal kell oket meghivni - annak minden elonyevel es hatranyaval egyutt. 
  • ??
  • Profit!

Arra figyelj, hogy a Nagios szerver oldalarol atjarhatoak lesznek a gepek, erdemes lehet nem egybol root-ba be SSH-zni, hanem egy alap userbe, akinek sudo joga csak a Nagios checkek futtatasahoz van. Ez eleg konnyen elerheto, ha az ember nekiall kimuvelni magat a "man 5 sudoers" kezikonyvbol (nem hosszu).

Blog | @hron84

valahol egy üzemeltetőmaci most mérgesen toppant a lábával 

via @snq-

nos eljutottam odaig, hogy a kliens gepen megiscsak letre kellett hoznom a /home/nagios/.ssh konyvtart

s igy mar az ssh mukodik. A nagios user altal general kulcsok a nagios szerveren maradtak az /usr/local/nagios/.ssh

konyvtarban.

Pluszkent a nagios-szerver /etc/ssh_config file vegere illesztettem e ket sort:

Host aa.aa.aa.aa
    IdentityFile /usr/local/nagios/.ssh/id_rsa

 

nagios@nagios-szerver:/etc/ssh$ grep nagios /etc/passwd
nagios:x:3972:998::/home/nagios:/bin/sh
nagios@nagios-szerver:/etc/ssh$ grep nagios /etc/group
nagios:x:998:www-data
nagios@nagios-szerver:/etc/ssh$

PROBA:

$ ./check_by_ssh -H aa.aa.aa.aa -i /usr/local/nagios/.ssh/id_rsa.pub -C "/usr/local/nagios/libexec/check_swap -w 50% -c 10%"
Remote command execution failed: WARNING:
$

 

MEGOLDAS: -E kapcsoloval a parancs vegen:

root@nagios-szerver:/etc/ssh# su nagios
$ pwd
/etc/ssh
$ cd /usr/local/nagios/libexec
$ ./check_by_ssh -H aa.aa.aa.aa -i /usr/local/nagios/.ssh/id_rsa.pub -C "/usr/local/nagios/libexec/check_swap -w 50% -c 10%" -E
SWAP OK - 100% free (4095 MB out of 4095 MB) |swap=4095MB;2047;409;0;4095
$ id
uid=3972(nagios) gid=998(nagios) groups=998(nagios) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
$ exit
root@nagios-szerver:/etc/ssh#

Nos, a kerdes, hogy alapbol /home/nagios konyvtart kell letrehozni a nagios-szerveren a nagios user szamara es password-ot adni neki, majd felrakni forrasbol root alatt a kovetkezoket:

 

cd ~
export VER="4.4.6"
wget https://github.com/NagiosEnterprises/nagioscore/releases/download/nagio…

cd ~
VER="2.3.3"
wget https://github.com/nagios-plugins/nagios-plugins/releases/download/rele…
tar xvf nagios-plugins-$VER.tar.gz

Ardi