„Nagios“: įgalinkite išorines komandas

Čia vėl esame kartu su senu draugu Nagiosu. Jei jūs stebėjote, žinote, kad aš gana daug aprėpiau šį puikų tinklo stebėjimo įrankį (patikrinkite visus „Ghacks Nagios“ straipsnius). Tam yra priežastis, „Nagios“ yra neįtikėtina priemonė. Bet daugeliui iš jūsų galbūt teko susidurti su klaida bandant paleisti keletą galingesnių funkcijų. Ši klaida įvyksta bandant naudoti kurią nors iš „Nagios“ išorinių komandų. Bet kas yra tos išorinės komandos? „Nagios“ gali vykdyti komandas iš išorinių programų. Tai leidžia Nagios išsiplėsti toliau, nei galėtų kitaip.

Bet pamatę šią klaidą žinote, kad jūsų „Nagios“ diegimas negali naudoti jokių išorinių komandų. Nebijokite, šią klaidą paprasta panaikinti, o šiame straipsnyje aš jums pateiksiu informaciją apie taisymą.



Prielaidos

figūra 1

Taip bus galima manyti, kad turite veikiančią „Nagios“ diegimą, taip pat „root“ ar „sudo“ prieigą prie savo serverio. Šiame straipsnyje taip pat daroma prielaida, kad bandėte naudoti funkcijas, kurioms reikalingos išorinės komandos. Jei ne, pažvelkime kaip.

Jei nukreipiate naršyklę į savo „Nagios“ serverį, spustelėkite nuorodą „Informacija apie paslaugą“ ir spustelėkite vieną iš paslaugų (pvz., HTTP ar SSH). Šiame puslapyje pamatysite langelį Aptarnavimo komandos. Jei spustelėsite vieną iš tų nuorodų ir gausite klaidą - jums reikia taisymo!



Pataisymas

Išsaugota be nulio? Lyg ir. Pirmiausia reikia patikrinti /etc/nagios3/nagios.cfg failas. Ieškokite tokios eilutės:

„check_external_commands“ = 1

Jei ta eilutė pakomentuojama arba nustatoma į „0“, pakeiskite ją taip, kad ji atrodytų aukščiau. Kai tai padarysite, išsaugokite ir uždarykite failą. Dabar paleiskite Nagios komandą sudo /etc/init.d/nagios3 paleisti iš naujo. Jūs dar nepadarėte.

Kitas žingsnis yra atidaryti /etc/nagios3/cgi.cfg byla. Greičiausiai rasite šias dvi eilutes:

pilnvarotas_for_all_services = nagiosadmin

autorizuotas_for_all_hosts = nagiosadmin

Po šių dviejų eilučių turite pridėti:

autorizuotas_for_all_host_commands = nagiosadmin

authorised_for_all_service_commands = nagiosadmin

Išsaugokite ir uždarykite šį failą. Dabar paleiskite „Apache“ naudodami komandą sudo /etc/init.d/apache2 paleidimas iš naujo.

Vis dar nepadaryta. Dabar jūs turite šiek tiek pakeisti į / tt / grupės. Atidarykite šį failą naudodami mėgstamą teksto rengyklę ir ieškokite tokios eilutės:

nagios: x: 127:

Pakeiskite šią eilutę taip, kad atrodytų:

nagios: x: 127: www-data

Dabar išsaugokite ir uždarykite šį failą. Beveik baigta. Bet kitas žingsnis yra šiek tiek sudėtingesnis nei ankstesnis.

Kataloge / var / lib / nagios3 / rw yra failas nagios.cmd. Greičiausiai šiame faile nėra nustatyti teisingi leidimai. Pagal numatytuosius nustatymus prieigą prie šių failų turi tik vartotojas nagios. Kadangi negalime to pakeisti „www-data“ vartotoju (tai pažeistų kitas „Nagios“ funkcijas), turime tiesiog pridėti vykdomosios grupės bitą prie failo taip:

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

Viskas. Dabar grįžkite į tą paslaugų komandų skyrių ir spustelėkite vieną iš nuorodų. Jums nebereikės gauti tos klaidos.

Galutinės mintys

Galbūt pamanėte, kad jūsų „Nagios“ diegimas buvo gana naudingas. Dabar, kai galite vykdyti išorines komandas, jūsų „Nagios“ diegimas bus daug naudingesnis.