Nagios: Omogoči zunanje ukaze

Preizkusite Naš Instrument Za Odpravo Težav

Tu smo spet nazaj stari prijatelj Nagios. Če sledite, veste, da sem s tem izjemnim orodjem za spremljanje omrežij zajel precej zemlje (oglejte si vse članke o Ghacks Nagios). Za to obstaja razlog, Nagios je neverjetno orodje. Toda za mnoge od vas ste morda pri poskusu izvajanja nekaterih močnejših funkcij naleteli na napako. Ta napaka se zgodi, ko poskusite uporabiti katerega koli zunanjega ukaza Nagios. Toda kaj so ti zunanji ukazi? Nagios lahko izvaja ukaze iz zunanjih aplikacij. To Nagiosu omogoča širitev dlje, kot bi sicer.

Ko pa vidite to napako, veste, da vaša namestitev Nagios ne more uporabljati nobenih zunanjih ukazov. Ne bojte se, ta napaka je preprosta, da bi prišli, in v tem članku vas bom sprehodil skozi težavo.

Predpostavke

Slika 1

Tako lahko domnevamo, da imate delujočo namestitev Nagios, pa tudi dostop do root-a ali sudo do vašega strežnika. Ta članek tudi domneva, da ste poskušali uporabljati funkcije, ki zahtevajo zunanje ukaze. Če ne, poglejmo, kako.

Če brskalnik usmerite na strežnik Nagios, kliknite povezavo Podrobnosti o storitvi in ​​nato eno od storitev (na primer HTTP ali SSH). Na tej strani boste videli polje Service Commands. Če kliknete eno od teh povezav in se prikaže napaka - popravljanje potrebujete!

Popravek

Ni shranjeno nič? Nekako. Prva stvar, ki jo morate preveriti, je v /etc/nagios3/nagios.cfg datoteka . Poiščite vrstico, kot so:

check_external_commands = 1

Če je ta vrstica komentirana ali nastavljena na '0', jo spremenite tako, da je videti kot zgornji vnos. Ko to storite, shranite in zaprite datoteko. Zdaj znova zaženite Nagios z ukazom sudo /etc/init.d/nagios3 znova zaženite . Še niste končali.

Naslednji korak je odpiranje /etc/nagios3/cgi.cfg mapa. Najverjetneje boste našli te dve vrstici:

pooblaščeni_za_all_services = nagiosadmin

pooblaščeni_za_all_hosts = nagiosadmin

Po teh dveh vrsticah morate dodati naslednje:

pooblaščeni_for_all_host_commands = nagiosadmin

pooblaščeni_for_all_service_commands = nagiosadmin

Shranite in zaprite to datoteko. Zdaj znova zaženite Apache z ukazom sudo /etc/init.d/apache2 znova zaženite .

Še vedno ni narejeno. Zdaj se morate rahlo spremeniti / itd / skupine . Odprite to datoteko z najljubšim urejevalnikom besedil in poiščite vrstico, ki je videti tako:

nagios: x: 127:

Spremenite to vrstico tako, da je videti:

nagios: x: 127: www-podatki

Zdaj shranite in zaprite to datoteko. Skoraj končano. Toda naslednji korak je nekoliko bolj zahteven prejšnji.

V imeniku / var / lib / nagios3 / rw je datoteka nagios.cmd . Ta datoteka najverjetneje nima nastavljenih pravilnih dovoljenj. Do teh datotek ima dostop privzeto le uporabniški nagios. Ker tega ne moremo spremeniti v uporabnika www-data (to bi prekinilo druge funkcije Nagiosa), moramo datoteko samo dodati izvršljiv skupinski bit tako:

sudo chmod g + x / var / lib / nagios / rw

To je to. Zdaj se vrnite na tisti razdelek Service Commands in kliknite na eno od povezav. Te napake ne bi smeli več dobiti.

Končne misli

Morda ste mislili, da je vaša namestitev Nagios precej uporabna. Zdaj, ko lahko izvajate zunanje ukaze, se vam bo namestitev Nagios zdela veliko bolj uporabna.