https://wiki.itcollege.ee/api.php?action=feedcontributions&user=Gmaisla&feedformat=atomICO wiki - User contributions [en]2024-03-29T11:21:53ZUser contributionsMediaWiki 1.41.0https://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72119Nagios 3.52014-01-02T13:03:13Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
[https://forge.puppetlabs.com/thias/nagios]<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi, et saaks paigaldada klienti kõikidesse masinatesse ühekorraga. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Määrame hosti aadressi väärtuseks ipaddress_eth2 kõikide klientide konfiguratioonis.<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
<br />
<br />
Nagios kliendi konfiguratsiooni näide, kus määratakse ram mälu jälgimist ja protsessori jälgimist iga 20 sekundi järel. :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Konfigureerime vaikimisi jälgimist (default check)<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72112Nagios 3.52014-01-02T12:55:22Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
[https://forge.puppetlabs.com/thias/nagios]<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Määrame hosti aadressi väärtuseks ipaddress_eth2 kõikide klientide konfiguratioonis.<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
<br />
<br />
Nagios kliendi konfiguratsiooni näide, kus määratakse ram mälu jälgimist ja protsessori jälgimist iga 20 sekundi järel. :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Konfigureerime vaikimisi jälgimist (default check)<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72108Nagios 3.52014-01-02T12:49:26Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
[https://forge.puppetlabs.com/thias/nagios]<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Määrame hosti aadressi väärtuseks ipaddress_eth2 kõikide klientide konfiguratioonis.<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
<br />
<br />
Nagios kliendi konfiguratsiooni näide :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Konfigureerime vaikimisi jälgimist (default check)<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72107Nagios 3.52014-01-02T12:43:39Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Määrame hosti aadressi väärtuseks ipaddress_eth2 kõikide klientide konfiguratioonis.<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
<br />
<br />
Nagios kliendi konfiguratsiooni näide :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Konfigureerime vaikimisi jälgimist (default check)<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72106Nagios 3.52014-01-02T12:39:54Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Määrame hosti aadressi väärtuseks $ipaddress_eth2 kõikide klientide konfiguratioonis.<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
<br />
<br />
Nagios kliendi konfiguratsiooni näide :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Konfigureerime vaikimisi jälgimist (default check)<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72100Nagios 3.52014-01-02T12:30:09Z<p>Gmaisla: /* Nagios kliendi instaleerimine puppeti abil */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
<pre><br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
</pre><br />
Nagios client specific overrides. See client.pp and check/*.pp for all of the variables which can be manipulated this way. The following :<br />
<pre><br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
</pre><br />
Will result in having $::nagios_host_name get $ipaddress_eth2 as its value for the entire configuration of the client where it is applied.<br />
<br />
Nagios client check override configuration examples :<br />
<pre><br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
</pre><br />
Configuring a default check (must be done from a scope where nagios::client can inherit it) :<br />
<pre><br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
</pre><br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72099Nagios 3.52014-01-02T12:26:54Z<p>Gmaisla: /* Installeerimine */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
==Nagios kliendi instaleerimine puppeti abil==<br />
Nagios kliendi paigaldamisel on mõistlik kasutada puppeti abi. Selleks tuleb teha klass, kus kirjeldatakse parameetrid (klassiks sobib näiteks site.pp).<br />
Nagios client instances (typically from site.pp) :<br />
<br />
class { 'nagios::client':<br />
nrpe_allowed_hosts => '127.0.0.1,192.168.1.1',<br />
}<br />
Nagios client specific overrides. See client.pp and check/*.pp for all of the variables which can be manipulated this way. The following :<br />
<br />
nagios::client::config { 'host_address': value => $ipaddress_eth2 }<br />
Will result in having $::nagios_host_name get $ipaddress_eth2 as its value for the entire configuration of the client where it is applied.<br />
<br />
Nagios client check override configuration examples :<br />
<br />
nagios::client::config { 'check_ram_ensure': value => 'absent' }<br />
nagios::client::config { 'check_cpu_args': value => '-w 50 -c 20' }<br />
Configuring a default check (must be done from a scope where nagios::client can inherit it) :<br />
<br />
Nagios::Check::Swap { ensure => absent }<br />
if $::domain == 'example.com' {<br />
Nagios::Check::Cpu { notification_period => 'workhours' }<br />
}<br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
===Sandra===<br />
Kuna keskse logihalduse loomine üldiselt on minu jaoks võõras tegevus, siis esmalt võttis aega Nagiosest arusaamine. Pärast ühekordset läbitegemist aga enam see nii keeruline ei tundunud. Inimestele, kes esmakordselt Nagiost kasutada tahavad, soovitaksin ma enne installeerimise alustamist tutvuda Nagiose põhimõttetega. See tagab probleemivabama ja kiirema Nagiose paigalduse.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=72025Nagios 3.52014-01-02T11:07:09Z<p>Gmaisla: /* Kokkuvõte */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31 <br/><br />
Kuupäev: 19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
==Labori püstitus==<br />
Paigaldadame Ubuntu serverisse Nagios Core monitooringu serveri ja jälgime teist Ubuntu serverit kasutades NRPE-d.<br />
<br />
==Põhimõisted ja lühendid== <br />
'''Nagios Core'''- Nagios Core on monitooringu süsteem, mis võimaldab kontrollida süsteemi erinevaid parameetreid ja seisukorda(ketta maht, CPU kasutus jne). Samuti teavitab ta automaatselt administraatorit kui mingi süsteemi parameeter on kriitline või seisukord ei vasta süsteemi normaaltingimustele.<br />
[http://www.nagios.org/projects/nagioscore]<br/><br />
'''Nagios Plugins''' - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga: ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
'''Nagios NRPE''' - Selle teenuse abil saab jälgida teisi seadmeid. <br/><br />
[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]<br />
<br />
==Laboritöö teostamise eeldused==<br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
*Installeeritud postfix - Postfix-i on vaja selle jaoks, et nagios saadaks administraatorile häire korral emaili.<br />
<br />
==Labori Keskkond==<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
<br />
PS!<br />
Kuna tegemist on testkeskkonnaga siis hetkel me ei kasutanud Nagiost koos SSL-toega. Reaalses elus aga on rangelt soovitatav kasutada SSL-tuge, et tagada turvalisus!<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
[http://kuutorvaja.eenet.ee/wiki/Nagios]<br />
==Installeerimine==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3. <br />
Installeerimiseks vajaminevad käsud saime järgnevast kohast: [https://wiki.itcollege.ee/index.php/Nagios]<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: <br />
sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev<br />
<br />
<b>Kõige enne tuleks teha update.</b> <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. <br />
Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin <br />
use generic-contact <br />
alias Nagios Admin <br />
<br />
email student@localhost <br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios on nüüdseks serveril installeeritud. Nüüd installime Nagios Pluginad</b><br/><br />
PS! Pluginate installeerimisel veenduge, et pluginad ja Nagios oleks installeeritud omavahel sobiva versiooniga<br />
1) Esmalt laeme alla pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd. <br />
<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ;<br />
host_name ubuntu-server ; <br />
alias ubuntu server; <br />
address 192.168.56.202 ; <br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<br />
<br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
<br />
1) Lisa jälgitava masina nrpe.cfg faili uus command definition.<br />
<br />
2) Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition.<br />
<br />
'''Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud:'''<br />
<br />
1) Monitooritava masina seadistamine. <br />
<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
<br />
2) Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
'''PS!'''<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni failid==<br />
<br />
Põhi konfiguratsiooni fail: [https://wiki.itcollege.ee/index.php/Nagios_3.2]<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
==Kokkuvõte==<br />
===Piia===<br />
Nagiose paigaldus oli mulle esmakordne ja aeganõudev tegevus. Algajale tundub see esmapilgul üpris keeruline. Algajatele soovitan kindlasti uurida seda Nagiose wikit, sest seda tehes panustasime palju täpsuse peale, et oleks teistel kergem. Julgen Nagiost soovitada kui head monitooringu vahendit.<br />
<br />
===Kristian===<br />
Nagios on väga hea süsteem, mille abil monitoorida firmale väga kriitlisi seadmeid ning teenuseid. Esmapilgul võib nagiose installeerimine tunduda päris raske ning ajamahukas, kuid kui veidike vaeva näha siis saab endale tulemusena väga võimsa monitooringu seadme. Kindlasti tuleks seda enda vajadustele vastavalt veel veidi edasi konfigureerida, kuna praegu näitasime ette vaid mõned teenused ja võimalused mida sellega monitoorida on võimalik<br />
<br />
===Grete===<br />
Tegemist on minu jaoks mahuka ja aeganõudva tööga, kuna pole varem Nagiost kasutanud. Grupitöö käigus sain juurde uusi teadmisi nii ise materjale lugedes kui ka grupikaaslaste õpetuste abil. Lõpptulemuseks saime töötava motitooringu lahenduse, mida saab veel edasi arendada.<br />
<br />
==Kasutatud materjalid==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios<br />
<br />
http://www.nagios.org/projects/nagioscore</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70668Nagios 3.52013-12-21T09:53:24Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<br />
<source lang="bash"><br />
<br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70667Nagios 3.52013-12-21T09:53:00Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
<br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70666Nagios 3.52013-12-21T09:52:27Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br/><br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70665Nagios 3.52013-12-21T09:51:45Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
<b>Seadistame swapi jälgimiseks uue teenuse.</b><br/><br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70664Nagios 3.52013-12-21T09:49:44Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br/><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70663Nagios 3.52013-12-21T09:49:18Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.</br><br />
<b>NRPE pluginate häälestamine</b><br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70662Nagios 3.52013-12-21T09:48:07Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
<b>Seejärel tuleb installeerida NRPE ka monitooringu serverisse.</b><br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70646Nagios 3.52013-12-20T13:31:08Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br/><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70645Nagios 3.52013-12-20T13:29:34Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br/><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201</br><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70644Nagios 3.52013-12-20T13:28:59Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
<b>Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.</b><br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
<b>Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE</b><br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201</br><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70643Nagios 3.52013-12-20T13:25:35Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
<b>Pluginate kasutuse kohta saab infot käsuga :</b> ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
<b>Laboritöö teostamise eeldused: </b><br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
<b>Labori Keskkond:</b><br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201</br><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70642Nagios 3.52013-12-20T13:09:28Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
</source><br />
<pre><br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</pre><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<pre><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</pre><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<pre><br />
nrpe 5666/tcp # NRPE<br />
</pre><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<pre><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</pre><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<pre><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</pre><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201</br><br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<pre><br />
NRPE v2.13<br />
</pre><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<pre><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</pre><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<pre><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</pre><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<pre><br />
members localhost,ubuntu-server<br />
</pre><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<pre><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</pre><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<pre><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</pre><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<pre><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</pre><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70641Nagios 3.52013-12-20T13:01:06Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</source><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
<source lang="bash"><br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
</source><br />
9) Lisame NRPE teenuse services faili:<br />
<source lang="bash"><br />
nano /etc/services<br />
</source><br />
Sisestame rea:<br />
<source lang="bash"><br />
nrpe 5666/tcp # NRPE<br />
</source><br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<source lang="bash"><br />
tcp 0 0 *:nrpe *:* LISTEN<br />
</source><br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<source lang="bash"><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</source><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
<source lang="bash"><br />
NRPE v2.13<br />
</source><br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<source lang="bash"><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</source><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<source lang="bash"><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</source><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
<source lang="bash"><br />
members localhost,ubuntu-server<br />
</source><br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<source lang="bash"><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</source><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
Lisame rea:<br />
<source lang="bash"><br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
</source><br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
</source><br />
Lisa faili rida:<br />
<source lang="bash"><br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
</source><br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
</source><br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<source lang="bash"><br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
</source><br />
laeme konfiguratsioonifailid<br />
<source lang="bash"><br />
service nagios reload<br />
</source><br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70640Nagios 3.52013-12-20T12:34:32Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<source lang="bash"><br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
</source><br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<source lang="bash"><br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
</source><br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
</source><br />
6) Käivitame paigaldusskripti<br />
<source lang="bash"><br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
</source><br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<source lang="bash"><br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
</source><br />
<br />
8) Seadistame contacts.cfg<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
</source><br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
</source><br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<source lang="bash"><br />
service nagios start<br />
</source><br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<source lang="bash"><br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
</source><br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<source lang="bash"><br />
sudo -i<br />
</source><br />
1) Loome nagiose jaoks kasutaja<br />
<source lang="bash"><br />
useradd nagios<br />
passwd nagios<br />
</source><br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<source lang="bash"><br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
</source><br />
3) Paigaldame Nagiose pluginad<br />
<source lang="bash"><br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
</source><br />
4) Paneme paika õigused<br />
<source lang="bash"><br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
</source><br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<source lang="bash"><br />
apt-get install xinetd<br />
</source><br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
</source><br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<source lang="bash"><br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
</source><br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<source lang="bash"><br />
nano /etc/xinetd.d/nrpe<br />
</source><br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<source lang="bash"><br />
service xinetd stop<br />
service xinetd start <br />
</source><br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<source lang="bash"><br />
netstat -at | grep nrpe<br />
</source><br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<source lang="bash"><br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
</source><br />
Salvestame selle:<br />
<source lang="bash"><br />
iptables-save<br />
</source><br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<source lang="bash"><br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
</source><br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<source lang="bash"><br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
</source><br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
</source><br />
Lisame read:<br />
<source lang="bash"><br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
</source><br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
<source lang="bash"><br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Paneme paika õigused:<br />
<source lang="bash"><br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Nüüd võtame faili lahti:<br />
<source lang="bash"><br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
</source><br />
Lisame hosti defineerivad read:<br />
<source lang="bash"><br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
</source><br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<source lang="bash"><br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
</source><br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70636Nagios 3.52013-12-20T12:24:49Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
<b>Kõige enne tuleks teha update</b> : <br />
<source lang="bash"><br />
apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
</source><br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70627Nagios 3.52013-12-19T20:13:56Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- http://www.nagios.org/projects/nagioscore<br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70626Nagios 3.52013-12-19T19:50:46Z<p>Gmaisla: </p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
Nagios Remote Plugin Executor (edaspidi NRPE) on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70625Nagios 3.52013-12-19T19:46:16Z<p>Gmaisla: </p>
<hr />
<div>Piia Ploovits A32, Sandra Sirel A31, Kristian Kivimägi A32, Grete Maisla A31<br />
19.11.2013<br />
<br />
<br />
==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks, mille üldiseks eesmärgiks oli keskse logihalduse lahenduse loomine. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70607Nagios 3.52013-12-19T13:03:41Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
*Teadmisi Linux operatsiooni süsteemist<br />
*Oskus töötada käsurealt<br />
*Linux või Unix OS, millel on C kompilaatori tugi.<br />
*Veebiserver (soovituslik Apache)<br />
*Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70606Nagios 3.52013-12-19T13:00:03Z<p>Gmaisla: /* Installeerimine: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...] Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70605Nagios 3.52013-12-19T12:58:19Z<p>Gmaisla: /* Nagiose tööpõhimõte */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70604Nagios 3.52013-12-19T12:58:02Z<p>Gmaisla: /* Nagiose tööpõhimõte */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
*Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
*Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<p/><br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
*aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
*passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<p/><br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70603Nagios 3.52013-12-19T12:54:58Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70602Nagios 3.52013-12-19T12:54:34Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br/><br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70601Nagios 3.52013-12-19T12:54:15Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad <br/><br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br/><br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br/><br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70600Nagios 3.52013-12-19T12:53:29Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br/><br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br/><br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br/><br />
Nagios Downloads Page: http://www.nagios.org/download/ <br/><br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br/><br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br/><br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br/><br />
0 – teenus on OK<br/><br />
1 – teenus on HOIATUS tasemel<br/><br />
2 – teenus on KRIITILINE<br/><br />
3 – teenuse seisund TEADMATA<br/><br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br/><br />
Pluginaid saab käsurealt käivitada.<br/><br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br/><br />
<br />
Laboritöö teostamise eeldused: <br/><br />
Teadmisi Linux operatsiooni süsteemist<br/><br />
Oskus töötada käsurealt<br/><br />
Linux või Unix OS, millel on C kompilaatori tugi.<br/><br />
Veebiserver (soovituslik Apache)<br/><br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br/><br />
<br />
<br />
Labori Keskkond:<br />
1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70599Nagios 3.52013-12-19T12:52:02Z<p>Gmaisla: /* Põhimõisted ja lühendid: */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core- <br/><br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70598Nagios 3.52013-12-19T12:48:19Z<p>Gmaisla: /* Sissejuhatus */</p>
<hr />
<div>==Sissejuhatus==<br />
See artikkel on koostatud Linuxi administreerimise õppeaine raames labor 2 kaitsmise jaoks. Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus).<br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core-<br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70597Nagios 3.52013-12-19T12:45:11Z<p>Gmaisla: /* Põhi konfiguratsiooni fail: */</p>
<hr />
<div>==Sissejuhatus==<br />
Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). <br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core-<br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
==Põhi konfiguratsiooni fail:==<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70596Nagios 3.52013-12-19T12:44:50Z<p>Gmaisla: </p>
<hr />
<div>==Sissejuhatus==<br />
Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). <br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core-<br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
=Põhi konfiguratsiooni fail:=<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios<br />
<br />
https://wiki.itcollege.ee/index.php/Nagios_3.2<br />
<br />
http://kuutorvaja.eenet.ee/wiki/Nagios</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70595Nagios 3.52013-12-19T12:43:50Z<p>Gmaisla: </p>
<hr />
<div>==Sissejuhatus==<br />
Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). <br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core-<br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
===Põhi konfiguratsiooni fail:===<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
[[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]]<br />
<br />
[[https://wiki.itcollege.ee/index.php/Nagios]]<br />
<br />
[[https://wiki.itcollege.ee/index.php/Nagios_3.2]]<br />
<br />
[[http://kuutorvaja.eenet.ee/wiki/Nagios]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Nagios_3.5&diff=70594Nagios 3.52013-12-19T12:42:39Z<p>Gmaisla: Created page with "==Sissejuhatus== Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste ole…"</p>
<hr />
<div>==Sissejuhatus==<br />
Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks sisselogitud kasutajate arv, ketta kasutus, andmebaaside seisukord jne). Nagios kasutab pluginate süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. <br />
NRPE on Nagiose plugin. NRPE võimaldab jälgida teiste masinate ressursse, mis muidu on kättesaadavad vaid sellesse konkreetsesse masinasse sisse logides (näiteks CPU, mälu ja ketta kasutus). <br />
<br />
==Põhimõisted ja lühendid:== <br />
Nagios Core-<br />
Nagios Plugins - Erinevad pluginad mille abil saab monitooritavat seadet monitoorida.<br />
Osa pluginaid on kaasas Nagiosega.<br />
Lisaks võib neid alla laadida ka järgmistest asukohtadest:<br />
Nagios Plugins Project: http://nagiosplug.sourceforge.net/ <br />
Nagios Downloads Page: http://www.nagios.org/download/ <br />
NagiosExchange.org: http://www.nagiosexchange.org/ <br />
<br />
Pluginate kasutuse kohta saab infot käsuga : ./plugina_nimi --help, mis tuleb käivitada käsurealt.<br />
Plugin tagastab Nagios daemonile ühe neljast signaalist: <br />
0 – teenus on OK<br />
1 – teenus on HOIATUS tasemel<br />
2 – teenus on KRIITILINE<br />
3 – teenuse seisund TEADMATA<br />
Pluginaid pole täiesti eraldiseisvad programmid, nad on pigem nagu alammeetodid.<br />
Pluginaid saab käsurealt käivitada.<br />
<br />
Nagios NRPE - Selle teenuse abil saab jälgida monitooritavaid seadmeid. <br />
<br />
Laboritöö teostamise eeldused: <br />
Teadmisi Linux operatsiooni süsteemist<br />
Oskus töötada käsurealt<br />
Linux või Unix OS, millel on C kompilaatori tugi.<br />
Veebiserver (soovituslik Apache)<br />
Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks.<br />
<br />
<br />
Labori Keskkond: 1) Server - kuhu on installeeritud Nagios ja Nagiose pluginad<br />
2) Ubuntu Server - virtuaal server mida soovime monitoorida<br />
3) Ubuntu Klient - Klient mida soovime monitoorida<br />
<br />
<br />
==Nagiose tööpõhimõte==<br />
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite ja teenuste seisukorda. Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt, näiteks selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist<br />
Kontrollitakse üle võrgu - veebileht, nimeserver.<br />
Kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus, failisüsteemi täituvus, raid lülituse korrasolek.<br />
Lokaalse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, üle võrgu kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
Teine võimalus on jaotus teha selle järgi, kes küsib või kes ütleb.<br />
aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)<br />
passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)<br />
Jällegi, passiivse kontrolli korraldamiseks tuleb kontrollitavasse arvutisse paigaldada lisaks täiendavalt Nagiose tarkvara, aktiivsel kontrollimisel reeglina kontrollitavasse arvutisse ei tule midagi Nagiose-spetsiivilist lisada.<br />
<br />
==Installeerimine:==<br />
Kaks varianti: Ise kompileerimine ja apt-get install nagios3.<br />
<br />
1) Logige sisse seadmesse kuhu soovite Nagiost installida ja minge üle root kasutajaks käsuga: sudo -i<br />
<br />
2) Seejärel peate installerima järgnevad pakid: apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev.<br />
<br />
Kõige enne tuleks teha update : apt-get update <br />
apt-get -y install apache2<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
<br />
3) Järgmiseks peame looma nagiose teenuse jaoks tema enda oma kasutaja ja määrama talle parooli.<br />
<br />
useradd -m -s /bin/bash nagios<br />
<br />
passwd nagios<br />
Parooliks määrasime: student<br />
<br />
-m (Create a new home directory for the new user.)<br />
-s ([-s shell])<br />
<br />
4) Et ka veebiliidese kaudu käsklusi jagada, peame looma ka teenusele oma kasutajagrupi:<br />
<br />
groupadd nag<br />
usermod -a -G nag nagios<br />
usermod -a -G nag www-data<br />
<br />
-G (secondary-group[,group,...]<br />
Appends the user to the given groups in the /etc/group file. -G)<br />
<br />
<br />
5) Laeme alla nagiose ning pakime lahti<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.5.1/nagios-3.5.1.tar.gz/download<br />
tar -xzf download<br />
<br />
6) Käivitame paigaldusskripti<br />
<br />
cd nagios<br />
./configure --with-command-group=nag<br />
make all<br />
make install<br />
make install-init<br />
make install-config<br />
make install-commandmode<br />
<br />
<br />
7) Seadistame veebiserveri nii, et saaksime ka ligi Nagiose veebiliidesele, selle jaoks teeme ka eraldi kasutaja. Samas kaustas kus eelmine punkt.<br />
<br />
make install-webconf<br />
<br />
htpasswd -c /usr/local/nagios/etc/htpasswd.users admin<br />
<br />
Parooliks ebaturvaline: student<br />
<br />
service apache2 reload<br />
<br />
<br />
8) Seadistame contacts.cfg<br />
<br />
nano /usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
define contact{<br />
contact_name nagiosadmin ; Short name of$<br />
use generic-contact ; Inherit defau$<br />
alias Nagios Admin ; Full name of $<br />
<br />
email student@localhost ; <<***** CHANG$<br />
}<br />
<br />
Sinna sisestame e-maili kuhu soovime saada Nagiose poolt saadetavaid teateid. <br />
<br />
<br />
Nagios Core on nüüdseks serveril installeeritud, Nüüd installime Nagios Pluginad.<br />
1) Esmalt tõmbame pluginad<br />
<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure --with-nagios-user=nagios --with-nagios-group=nag<br />
make<br />
make install<br />
<br />
2) Kontrollime confi faili, et seal ei leiduks erroreid.<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
3) Käivitame Nagiose<br />
<br />
service nagios start<br />
<br />
4) Paneme ta automaatselt käivitama, kui süsteem stardib<br />
<br />
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios<br />
<br />
<br />
5) Nüüd saame ligi nagiose veebiliidesele.<br />
<br />
http://serveri-ip/nagios/<br />
<br />
<br />
<br />
Seejärel peame installeerima jälgitavasse serverisse Nagiose pluginad ja NRPE<br />
<br />
Siseneme jälgitavasse seadmesse.<br />
Meie kasutame Ubuntu Serverit.<br />
Kõik käsud tuleb teha juurkasutajana:<br />
<br />
sudo -i<br />
<br />
1) Loome nagiose jaoks kasutaja<br />
<br />
useradd nagios<br />
passwd nagios<br />
Parool: student<br />
<br />
2) Paigaldame kompileerimise jaoks vajamineva tarkvara<br />
<br />
apt-get update<br />
apt-get -y install build-essential<br />
apt-get -y install libapache2-mod-php5<br />
apt-get -y install libgd2-xpm-dev<br />
apt-get -y install libssl-dev<br />
<br />
3) Paigaldame Nagiose pluginad<br />
<br />
mkdir NagiosInstall<br />
cd NagiosInstall<br />
wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz<br />
tar -xzf nagios-plugins-1.5.tar.gz<br />
cd nagios-plugins-1.5<br />
./configure<br />
make<br />
make install<br />
<br />
4) Paneme paika õigused<br />
<br />
chown nagios:nagios /usr/local/nagios<br />
chown -R nagios:nagios /usr/local/nagios/libexec<br />
<br />
5) Paigaldame xinetd<br />
Xinetd listens for incoming requests over a network and launches the appropriate service for that request.<br />
<br />
apt-get install xinetd<br />
<br />
6) Paigaldame NRPE(ilma ssl toeta)<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make<br />
<br />
7) Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks<br />
<br />
make install-plugin<br />
make install-daemon<br />
make install-daemon-config<br />
make install-xinetd<br />
<br />
8) Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja<br />
<br />
nano /etc/xinetd.d/nrpe<br />
<br />
lisame reale:<br />
only_from = 192.168.56.201 <minu_monitooringuserveri_ip_address><br />
<br />
9) Lisame NRPE teenuse services faili:<br />
nano /etc/services<br />
<br />
Sisestame rea:<br />
<br />
nrpe 5666/tcp # NRPE<br />
<br />
10) Restardime xinetd teenuse.<br />
<br />
service xinetd stop<br />
service xinetd start <br />
<br />
<br />
<br />
11) Kontrollime, kas daemon töötab xinetd all<br />
<br />
netstat -at | grep nrpe<br />
<br />
Väljund peaks olema:<br />
<br />
tcp 0 0 *:nrpe *:* LISTEN<br />
<br />
12) Et NRPE pääseks masinale ligi peame iptablesse erandi kirjutama: <br />
<br />
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT<br />
<br />
Salvestame selle:<br />
iptables-save<br />
<br />
Seejärel tuleb installeerida NRPE ka monitooringu serverisse.<br />
<br />
ssh student@192.168.56.201<br />
1) Tõmbame NRPE ja paigaldame<br />
<br />
cd NagiosInstall<br />
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz<br />
tar xzf nrpe-2.13.tar.gz<br />
cd nrpe-2.13/<br />
./configure -disable-ssl<br />
make all<br />
make install-plugin<br />
<br />
2) Testime, kas saame jälgitava serveriga ühendust:<br />
<br />
/usr/local/nagios/libexec/check_nrpe -H 192.168.56.202 ←--IP asenda oma monitooritava seadme IP-ga<br />
<br />
Vastus peaks olema järgnev:<br />
NRPE v2.13<br />
<br />
3) NRPE plugina aktiveerimiseks muudame commands.cfg faili<br />
<br />
nano /usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Lisame read:<br />
<br />
define command{<br />
command_name check_nrpe<br />
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$<br />
}<br />
<br />
<br />
4) Kui NRPE plugin on aktiveeritud, tuleb monitooringu serveris defineerida jälgitav host.<br />
Defineerime hosti ja teenused, mida jälgima hakkame.<br />
<br />
Loome hosti jaoks uue konfiguratsioonifaili:<br />
touch /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Paneme paika õigused:<br />
chown nagios:nag /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Nüüd võtame faili lahti:<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
Lisame hosti defineerivad read:<br />
<br />
define host{<br />
use linux-server ; Kasutame vaikimisi paigaldatud template-i<br />
host_name ubuntu-server ; The name we're giving to this server<br />
alias ubuntu server; A longer name for the server<br />
address 192.168.56.202 ; IP address of the server<br />
}<br />
<br />
<br />
5) Kui me tahame lisada hosti juba olemasolevasse gruppi, näiteks linux-server, siis me peame avama konf faili, kus antud grupp defineeritud on (linux-server on meil localhost.cfg failis) ja lisame members reale oma hosti:<br />
members localhost,ubuntu-server<br />
<br />
6) Lisame teenuseid defineerivad read(tuleb lisada Ubuntu-server.cfg faili):<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description CPU Load<br />
check_command check_nrpe!check_load<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Current Users<br />
check_command check_nrpe!check_users<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Total Processes<br />
check_command check_nrpe!check_total_procs<br />
}<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Zombie Processes<br />
check_command check_nrpe!check_zombie_procs<br />
}<br />
<br />
7) Nüüd peame lisama nagios.cfg faili rea, et nagios loeks käivitades selle konfiguratsiooni faili sisse<br />
<br />
nano /usr/local/nagios/etc/nagios.cfg<br />
<br />
Lisame rea:<br />
cfg_file=/usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
8) Kontrollime, kas konfiguratsioonifail sisaldab vigu. Kui vigu ei ilmnenud, siis loeme konfifailid uuesti sisse.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
service nagios reload<br />
<br />
<br />
Need on vaid mõned näited, mida saame seda kasutades jälgida. Järgnevalt lühidalt kuidas saab kasutada ka teisi meetoteid.<br />
NRPE pluginate häälestamine<br />
<br />
Uue teenuse jälgimiseks tuleb NRPE abil tuleb teha kahte asja:<br />
Lisa jälgitava masina nrpe.cfg faili uus command definition<br />
Lisa monitooringu serveri Nagiose konfiguratsioonifaili uus service definition<br />
Näiteks swapi kasutuse jälgimiseks tuleb teha järgmised sammud.<br />
Monitooritava masina seadistamine<br />
Seadista swap plugin.<br />
<br />
Lisame command-i nrpe.cfg faili.<br />
nano /usr/local/nagios/etc/nrpe.cfg<br />
<br />
Lisa faili rida:<br />
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%<br />
<br />
Kui NRPE töötab inetd/xinetd all, siis on jälgitav masin valmis.<br />
Monitooringu serveri seadistamine<br />
Seadistame swapi jälgimiseks uue teenuse.<br />
1) Sisesta object configuration faili järgmised read:<br />
<br />
nano /usr/local/nagios/etc/objects/Ubuntu_server.cfg<br />
<br />
define service{<br />
use generic-service<br />
host_name ubuntu-server<br />
service_description Swap Usage<br />
check_command check_nrpe!check_swap<br />
}<br />
<br />
Kontrollime, ega konfiguratsioonis vigu pole.<br />
<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
<br />
laeme konfiguratsioonifailid<br />
<br />
service nagios reload<br />
<br />
<br />
<br />
==PS!==<br />
Esmalt logides veebiliidessesse tundub, et meie kasutajal pole õigusi, et näha hoste ja teenuseid. Seda sellepärast, et eelnevalt tegime me kasutaja nagiose liidese jaoks admin.Default username konfiguratsiooni failis on aga kasutaja nagiosadmin, seega ei lubata meie kasutajat ligi. Seda saab parandada hõlpsalt, kui minna /usr/local/nagios/etc ning sealt võtta lahti fail cgi.cfg<br />
Seal tuleb muuta ära username nagiosadmin, admini vastu.<br />
Konfiguratsiooni failide asukohad<br />
<br />
Põhi konfiguratsiooni fail:<br />
/usr/local/nagios/etc/nagios.cfg<br />
<br />
Süsteemsete seadete konfiguratsiooni fail:<br />
/usr/local/nagios/etc/cgi.cfg<br />
<br />
Teenuste ja hostide konfiguratsiooni failid asuvad kataloogis:<br />
/usr/local/nagios/etc/objects/<br />
<br />
Defineeritud käskude konfiguratsiooni failid:<br />
/usr/local/nagios/etc/objects/commands.cfg<br />
<br />
Defineeritud kontaktid, kellega ühendust võetakse:<br />
/usr/local/nagios/etc/objects/contacts.cfg<br />
<br />
Vaikimisi installimisel defineeritud host:<br />
/usr/local/nagios/etc/objects/localhost.cfg<br />
<br />
Erinevate host-ide ja service-ite mallid asuvad:<br />
/usr/local/nagios/etc/objects/templates.cfg<br />
<br />
Defineeritud ajaperioodid:<br />
/usr/local/nagios/etc/objects/timeperiods.cfg<br />
<br />
<br />
<br />
==Kasutatud materjalid:==<br />
[[http://www.adamson.cc/ettekanne/Nagios%20slaidid.pdf]]<br />
<br />
[[https://wiki.itcollege.ee/index.php/Nagios]]<br />
<br />
[[https://wiki.itcollege.ee/index.php/Nagios_3.2]]<br />
<br />
[[http://kuutorvaja.eenet.ee/wiki/Nagios]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Linuxi_administreerimine&diff=70592Linuxi administreerimine2013-12-19T12:38:24Z<p>Gmaisla: /* Esseede teemad 2013 */</p>
<hr />
<div>=Üldinfo=<br />
ECTS: 4<br />
Hindamisviis: Eksam<br />
<br />
==Õppejõud==<br />
Margus Ernits<br />
<br />
Katrin Loodus<br />
<br />
=Eeldused ja sihtgrupp=<br />
<br />
Operatsioonisüsteemide administreerimine ja sidumine (Rangelt soovituslik). Osadmin aines loetava oskamine on antud aine õppimise eelduseks. ÕISis on see eeldus märgitud soovituslikuks, kuna igal aastal on paar inimest, kes suudavad mõlemad ained korraga läbida ja on antud vallas väga pädevad.<br />
Linuxi administraatori kursus on mõeldud tugeva infotehnoloogilise põhjaga arvuti-spetsialistile.<br />
Kursuse rõhk on eelkõige võrguhalduril, kelle tööülesannete hulka kuulub igapäevane serverite, võrgu jms hooldus, konfigureerimine ja uute seadmete installatsioon.<br />
<br />
=Eesmärk ja sisu=<br />
<br />
Kursuse esimeses osas õpitakse tundma Linux süsteemi toimimist, antakse ülevaade administreerimistoimingute automatiseerimisest shelli skriptide abil ja omandatakse praktiline käsufailide koostamise kogemus.<br />
<br />
Teises osas õpitakse paigaldama ja konfigureerima erinevaid võrguteenuseid. Kursuse teise osa alguses korratakse taseme ühtlustamiseks TCP/IP võrgu põhialuseid.<br />
<br />
=Õpiväljundid=<br />
<br />
<br />
=Loengud=<br />
<br />
Kaugõppe loengute ja praktikumide videosalvestused:<br />
http://echo360.e-ope.ee/ess/portal/section/4bd0abde-1b0d-4c92-a35e-0f99a81f069d<br />
<br />
<br />
1. Sissejuhatav loeng eeldustest [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/loeng01%20-%20Sissejuhatus%20ainesse%20Linux%20administreerimine%20-%202013%20.pdf Sissejuhatus Loeng 1]<br />
<br />
1.1. Kordamine Osadmin [http://elab.itcollege.ee:8000/Linux-Basics.mm]<br />
<br />
2. Linux süsteemi põhilised komponendid [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/loeng02%20-%20Linux%20s%c3%bcsteemide%20haldamine%20-%202013%20.pdf Linux haldamine Loeng 2]<br />
<br />
3. Linux süsteemi haldamine puppet abil I [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/loeng03%20-%20Linux%20s%c3%bcsteemide%20haldamine%20-%202013%20.pdf Linux haldamine Loeng 3]<br />
<br />
4. Linux süsteemi haldamine puppet abil II [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/loeng04%20-%20Linux%20s%c3%bcsteemide%20haldamine%20II%20-%202013%20.pdf Linux haldamine Loeng 4]<br />
<br />
5. Linux süsteemi haldamine puppet abil III [http://enos.itcollege.ee/~mernits/Linux%20administreerimine/loeng05%20-%20Linux%20s%c3%bcsteemide%20haldamine%20III%20-%202013%20.pdf Linux haldamine Loeng 5]<br />
<br />
5.1 Puppeti seadistamine passenger mooduli abil [[Puppet - passenger]]<br />
<br />
Puppeti teise loengu video: http://elab.itcollege.ee:8000/linux-admin/pupppet-algus.ogv<br />
<br />
=Praktikumid=<br />
<br />
==Esimene praktikum - Ubuntu Serveri ja kliendi paigaldamine ning kordamine==<br />
* Paigaldage '''Ubuntu Linux Server''' süsteem VirtualBox abil<br />
**RAM 512MB<br />
**HDD dynamicly allocated 8GB<br />
**2 Võrgukaarti NIC1 - NAT (eth0 - Ubuntus) ja NIC2 - HostOnly (eth1 - Ubuntus)<br />
**Logige serverisse sisse ja seadistage võrk failis /etc/network/interfaces (liidese eth1 ip aadress 192.168.56.200). <br />
***Abiinfo [[Ubuntu server võrgu seadistamine]] ja [[VirtualBoxi võrgud]]<br />
<br />
<source lang="bash"><br />
auto eth1<br />
iface eth1 inet static<br />
address 192.168.56.200<br />
netmask 255.255.255.0<br />
</source><br />
<br />
*Paigaldage openssh server, kui te seda installi käigus ei teinud (apt-get update && apt-get install ssh)<br />
<br />
Ubuntu Server 12.04.1 LTS ISO (64bit) http://elab.itcollege.ee:8000/ubuntu-12.04.1-server-amd64.iso<br />
<br />
Eelduste kontrollimise test harjutamiseks: http://goo.gl/73xBZ<br />
Kes tunneb, et test on '''liiga keeruline''', peab '''kaaluma''' aine deklareerimise asemel '''Osadmin aine (mis on soovituslik eeldus) läbimist'''.<br />
<br />
* '''Ubuntu Desktop Linux''' paigaldamine (Võib paigaldada ka mõne muu disrtibutsiooni desktop masina, kuna seda läheb meil niikuinii hiljem vaja)<br />
**Memory 1024MB<br />
**HDD 16GB (või 8GB) Dynamic disk<br />
**Network<br />
**Video Memory 64MB 3D acceleration sisse<br />
<br />
'''NB! Kasutamiseks valmis masinad: [http://elab.itcollege.ee:8000/ubuntu-server-64.ova server 64bit] ja [http://elab.itcollege.ee:8000/ubuntu-desktop-64.ova klient 64bit], [http://elab.itcollege.ee:8000/UbuntuServer32bit.ova server 32bit] ja [http://elab.itcollege.ee:8000/UbuntuDesktop32bit.ova klient 32bit]''' <br />
<br />
Pärast paigaldamist seadistada [https://wiki.itcollege.ee/index.php/OpenSSH:_v%C3%B5tmetega_autentimine key based autentimisega] serverisse sisenemine. (tööjaamast saab serveris käske käivitada)<br />
<br />
==Teine ja kolmas praktikum - Eeldustetest ja kordamine==<br />
<br />
Kordamiseks leiate vajalikku infot [https://wiki.itcollege.ee/index.php/Category:Operatsioonis%C3%BCsteemide_administreerimine_ja_sidumine Operatsioonisüsteemide administreerimise ja sidumise] aine vikist. <br />
<br />
[http://goo.gl/AFGfoV Eeldustetest 1]<br />
<br />
[http://goo.gl/F0PiWK Eeldustetest 2]<br />
<br />
<br />
==Linux keskhaldus puppet baasil==<br />
<br />
Praktikumis paigaldame puppet serveri (master) ja kliendi.<br />
<br />
Näiteülesanded kaitsmiseks<br />
<br />
1. Loo puppet abil fail /etc/issue sisuga KALA<br />
<br />
2. Loo puppet abil kasutaja polekala, kodukaustaga /home/polekala, shelliga /bin/zsh ( tee ka paki zsh paigaldus)<br />
<br />
3. Lisa nodele class tarkvara, mis paigaldab htop, bpython pakid<br />
<br />
4. Loo nodele class eemalda, mis eemaldab paki cowsay<br />
<br />
<br />
<br />
5. Viimane ülesanne on igal ühel erinev.<br />
<br />
5.1 Loo serverisse kasutaja kala ja tee talle ssh key. Seadista kliendiarvuti selliselt, et paigaldataks pakk ssh ja lisataks root kasutajale kliendis loodud ssh public key.<br />
<br />
5.2 Paigalda kliendi arvutisse ntp server ja määra ntp serveriteks ntp.eenet.ee ja ntp.ut.ee<br />
<br />
5.3 Lisa kliendi arvutisse apache2 veebiserver koos virtualhostiga www.planet.zz, (failis /var/www/www.planet.zz/index.html on rida www.planet.zz)<br />
Apache konfis peab olema ServerName www.planet.zz ja sites-enabled all sait www.planet.zz<br />
<br />
5.4 Lisa kliendi arvutisse bind9 nimeserver (normaalselt tööjaama seda ei tehta, kuid antud näitel on meil vaid üks konfigureeritav host). Seadista enda valitud domeeniminega tsoon koos revers tsooniga. Lisa kirjed www.sinudomeen.zz, mail.sinudomeen.zz, puppet.sinudomeen.zz koos PTR kirjetega.<br />
<br />
<br />
<br />
<br />
[[Puppet Examples]]<br />
<br />
==Keskne logiserver==<br />
Labor 2 üheks võimalikuks teemaks on keskse logihalduse lahenduse loomine<br />
<br />
[[Keskse logilahenduse rakendamine]]<br />
<br />
[http://enos.itcollege.ee/~mernits/Linux%20administreerimine/Arnus%20-%20keskne%20logilahendus.pdf Lõputöö logihalduse teemal]<br />
<br />
<br />
http://rdstash.blogspot.com/2013/01/installing-logstash-as-syslog-server-on.html<br />
<br />
=Esseede teemad 2012=<br />
<br />
Võib valida keerulisemaid teemasid ka [[Osadmin referaadi teemad]] lehelt.<br />
<br />
[[zsh]] - pole algajale<br />
<br />
Mida uurida <br />
<br />
Prompt<br />
<br />
http://zshwiki.org/home/config/prompt<br />
<br />
http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/<br />
<br />
.zshrc<br />
<br />
for <br />
<br />
if <br />
<br />
while <br />
<br />
jne<br />
<br />
<br />
[[exFAT vs Linux]] - Kalju Hõbemäe<br />
<br />
<br />
[[CentOS Server]] --- teeb Oliver Naaris<br />
<br />
Paigaldamine<br />
<br />
Teenuste DNS, apache2, samba, e-post seadistamine<br />
<br />
<br />
[[Superb Mini Server]] --- Mark-Erik Mogom, Andrus Dei <br />
<br />
Paigaldamine<br />
<br />
DNS, samba, LDAP, e-post seadistamine<br />
<br />
<br />
[[Oracle Linux]]<br />
<br />
Paigaldamine<br />
<br />
Teenuste DNS, apache2, samba, e-post seadistamine<br />
<br />
<br />
[[Suse Linux]]<br />
<br />
Paigaldamine<br />
<br />
Teenuste DNS, apache2, samba seadistamine<br />
<br />
[[OpenLDAP Ubuntu Serveril]] - Tarmo Suurmägi, Taavi Sannik, Harri Uljas<br />
<br />
[[Zentyal SAMBA4]] --- Lang & Lihten A31<br />
<br />
Samba4 domeenikontrolleri seadistamine ja ubuntu/fedora/muu süsteem autentimise seadistamine kasutades uusi vahendeid<br />
<br />
[[Apt-yum/dpkg-rpm käskude lühivõrdlus]] - Teet Saar A32<br />
<br />
[[Ophcrack]] - teeb Kristo Kapten<br />
<br />
[[rancid]] - Meelis Kurnikov, Aive Haavel AK31<br />
<br />
[[zenoss]] - Kristjan Vaik<br />
<br />
[[Apache autentimine LDAP'iga]] - Rauno Lehiste<br />
=Esseede teemad 2013=<br />
<br />
[[Ipcop]] - saab kaasajastada<br />
<br />
[[suricata]] http://www.openinfosecfoundation.org/index.php/download-suricata - Martin Leppik 12.12.2013<br />
<br />
[[snort]] http://www.snort.org/ - võib kaasajastada<br />
<br />
[[Owncloud]] - Tõnu Erm AK31<br />
<br />
[[Linuxi administreerimine - Labor 2 (keskse logihalduse rakendamine) protokoll]] - Sten Aus 28.11.2013<br />
<br />
[[Keskse logilahenduse rakendamine Rsyslog näitel]] - Kimmo Lillipuu, Kaarel Kuurmann, Heigo Punapart 18.12.2013<br />
<br />
[[Logstash'i paigaldmine puppeti abil ]] - Indrek Mitt, Priidu Niit 19.12.2013<br />
<br />
[[Nagios 3.5]] - Piia Ploovits, Sandra Sirel, Kristian Kivimägi, Grete Maisla 19.12.2013<br />
<br />
=Eksamist=<br />
<br />
Tee ära labor 2 (oma valitud teemal + selle kohta wiki kirjatöö)<br />
Eksamil ole valmis demoma labor 1 raames kaitstud asju.<br />
<br />
Kirjatööd sisu tuleb eksamil kaitsta vestluse vormis.<br />
<br />
Eksami käigus saab kaitsta ka labor 1 ja 2 asju.<br />
<br />
Eksami käigus tõmbad loosi, mida labor 1 raames parandada. Õppejõud teeb teenuse katki ja tudeng teeb korda. (soovitatav on eelnevalt teha teenusest varukoopia).<br />
<br />
Punkte saab selgituse eest, mis oli katki ja kuidas tegid korda.<br />
<br />
Katki tegemisel võib arvestada näiteks, et algaja admin (õppejõud:) muutis ära parooli, rikkus võrguseaded ja kustutas täiesti süüdimatult mõne konfifaili.<br />
<br />
=Laborimaterjalid 2012=<br />
<br />
Teha apt - yum ja dpkg - rpm vastavustabel. dpkg ja apt korraldused leiab [http://elab.itcollege.ee:8000/Linux-Basics.mm Linux-Basics mindmapist]<br />
<br />
Parim töö annab 7p, järgmised 5p (piisavalt põhjalikud ja erinevad)<br />
<br />
Ebapiisavad vastavustabelid, mis sarnanevad üksteisele punkte ei saa.<br />
<br />
Kui su tabel on ilma vigadeta, kuid mitte parimate sead siis saad 1-2p.<br />
<br />
<br />
'''Praks 4'''<br />
<br />
Nimeserveri BIND9 paigaldamine.<br />
<br />
*Mõtle välja domeenimini<br />
*Paigalda nimeserver bind9<br />
*Seadista oma domeen<br />
**www.domeen<br />
**ns.domeen<br />
**sales.domeen<br />
**seadista oma kliendimasin kasutama uut nimeserverit<br />
<br />
NB: enne kaitsmist lugeda läbi http://kuutorvaja.eenet.ee/wiki/DNS<br />
<br />
Labori üks näide [[Nimeserveri seadistamine BIND9 näitel]]<br />
<br />
Praktikumi salvestus http://echo360.e-uni.ee/ess/echo/presentation/a828b6af-8caf-4319-b594-5d6bfed04a70<br />
<br />
'''Punktide''' (5p) '''kirja saamiseks''' peab töötama nii nimede lahendamine läbi teie nimeserveri kui ka reverse lookup.<br />
<br />
<br />
'''Praks 5'''<br />
<br />
Veebiserveri apache2 paigaldamine<br />
<br />
*Loo veebisaidid www.domeen ja sales.domeen (ehk oma DNS labori nimedele vastavad veebisaidid)<br />
Praktikumi salvestus: http://echo360.e-uni.ee/ess/echo/presentation/0945a764-0305-48ec-8082-4e57a23cc536<br />
*Seadist HTTPS nendele saitidele (vajadusel loo uus ip alias ja muuda nimeserveris olevat kirjet, et TLS nimed viitaks erinevatele IP aadressidele)<br />
*Abiks on loeng: http://enos.itcollege.ee/~mernits/infrastruktuur/loeng04%20-%20Veebiserver.odp ja labor: https://wiki.itcollege.ee/index.php/Veebiserveri_labor_v.2<br />
*Paigalda WordPress vastavalt juhendile: http://goo.gl/6XQ0U<br />
<br />
'''Punktide''' (5p) '''kirja saamiseks''' peab töötama veebiserververi apache2 pealt 2 veebilehte ning wordpress. Wordpressile peab olema paigaldatud super cache ning lisaks peab töötama varnish. Seejuures wordpress on seadistatud pordile 80 ja wordpress pordil 8080. Lehe toimivust testige enne kaitsmist ab vahendiga, kus -n 1000 ja -t 10.<br />
<br />
<br />
'''Praks 7'''<br />
Samba share-i välja jagamine. <br />
<br />
*Loo share, mis on ligipääsetav vaid kasutajatele, kes kuuluvad lab gruppi. Vajalik on ka share-ile kirjutamisõigus (saab kausta luua). <br />
* Seadista samba abil kasutajate kodukaustadele ligipääsemine. Iga kasutaja peab ligi pääsema enda kodukaustale. <br />
<br />
*Abiks on viki artiklid : https://wiki.itcollege.ee/index.php/Failiserver_Samba_labor_2 ja https://wiki.itcollege.ee/index.php/Lihtne_samba_install<br />
<br />
'''Punktide''' (5p) '''kirja saamiseks''' on vajalik share-i olemasolu, mis on ligipääsetav ning kirjutatav (võimalik luua kataloogi) ainult lab gruppi kuuluvatele kasutajatele ning lab gruppi mitte kuuluvad kasutajad ei tohi sinna ligi pääseda. <br />
Lisaks peavad kasutajad pääsema ligi oma kodukaustale, sõltumata sellest, kas ta kuulub lab gruppi või mitte.<br />
<br />
<br />
'''Labor 1'''<br />
*Veebiserver ja virtualhostid<br />
*DNS<br />
*e-post<br />
*iptables<br />
*samba<br />
<br />
<br />
'''Labor 2'''<br />
*LDAP või Samba4 - LDAP Teet Saar, Kullo-Kalev Aru<br />
*Puppet või chef<br />
*PAM<br />
*Puppet (Ubuntus) - Kristo Kapten<br />
*[[Samba(windows domeenis fileserver)]] - Marko Kurs<br />
*[[TLS termineerimine nginx abil]] - Sander Arnus, Sander Saveli</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=60236Bashi kiirklahvid2013-01-04T12:10:09Z<p>Gmaisla: /* Kiirklahvid */</p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a &nbsp; Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b &nbsp; Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+c &nbsp; Tapab käimasoleva protsessi.<br/><br />
<ctrl>+d &nbsp; Saadab lõpetamiskäskluse(EOF) käimasolevale protsessile, teistkordsel järjestikusel vajutusel logib terminalist välja.<br/><br />
<ctrl>+e &nbsp; Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f &nbsp; Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h &nbsp; Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k &nbsp; Rea kustutamine kursori tagant.<br/><br />
<ctrl>+l &nbsp; Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n &nbsp; Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p &nbsp; Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q &nbsp; Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r &nbsp; Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut ning pakub välja automaatseid lõpetusi. Trükitav tekst ei pea olema käskluse alguses, väljastakse vasteid, mis sisaldavad trükitud teksti. Teistkordsel klahvikombinatsiooni vajutusel otsitakse vastet tervest ajaloo listist. Lihtsam ja kiirem moodus, kui kasutada käsku history | grep "".<br/><br />
<ctrl>+s &nbsp; Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z &nbsp; Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t &nbsp; Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u &nbsp; Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w &nbsp; Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y &nbsp; Puhvri sisu sisetamine.<br/><br />
<alt>+b &nbsp; Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d &nbsp; Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f &nbsp; Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t &nbsp; Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c &nbsp; Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v &nbsp; Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1>&nbsp; Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn>&nbsp; (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> &nbsp; Vahetub esimesse GUI terminali.<br />
tty &nbsp;prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del >&nbsp; Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t &nbsp; Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> &nbsp;lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> &nbsp; Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> &nbsp; Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> &nbsp; Saab liikuda terminali sisendis alla.<br/><br />
<br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. Samuti töötavad need kiirklahvid ka mitmetes rakendusprogrammides, näiteks tekstiredaktor Nanos. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
*http://linuxart.com/log/archives/2005/10/13/search-history-in-bash/<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57832Bashi kiirklahvid2012-11-27T13:29:49Z<p>Gmaisla: /* Kasutatud materjalid */</p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a &nbsp; Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b &nbsp; Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+c &nbsp; Tapab käimasoleva protsessi.<br/><br />
<ctrl>+d &nbsp; Saadab lõpetamiskäskluse(EOF) käimasolevale protsessile, teistkordsel järjestikusel vajutusel logib terminalist välja.<br/><br />
<ctrl>+e &nbsp; Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f &nbsp; Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h &nbsp; Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k &nbsp; Rea kustutamine kursori tagant.<br/><br />
<ctrl>+l &nbsp; Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n &nbsp; Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p &nbsp; Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q &nbsp; Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r &nbsp; Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut ning pakub välja automaatseid Trükitav tekst ei pea olema käskluse alguses, väljastakse vasteid, mis sisaldavad trükitud teksti. Teistkordsel klahvikombinatsiooni vajutusel otsitakse vastet tervest ajaloo listist. Lihtsam ja kiirem moodus, kui kasutada käsku history | grep "".<br/><br />
<ctrl>+s &nbsp; Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z &nbsp; Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t &nbsp; Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u &nbsp; Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w &nbsp; Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y &nbsp; Puhvri sisu sisetamine.<br/><br />
<alt>+b &nbsp; Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d &nbsp; Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f &nbsp; Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t &nbsp; Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c &nbsp; Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v &nbsp; Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1>&nbsp; Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn>&nbsp; (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> &nbsp; Vahetub esimesse GUI terminali.<br />
tty &nbsp;prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del >&nbsp; Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t &nbsp; Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> &nbsp;lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> &nbsp; Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> &nbsp; Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> &nbsp; Saab liikuda terminali sisendis alla.<br/><br />
<br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. Samuti töötavad need kiirklahvid ka mitmetes rakendusprogrammides, näiteks tekstiredaktor Nanos. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
*http://linuxart.com/log/archives/2005/10/13/search-history-in-bash/<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57831Bashi kiirklahvid2012-11-27T13:28:47Z<p>Gmaisla: </p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a &nbsp; Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b &nbsp; Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+c &nbsp; Tapab käimasoleva protsessi.<br/><br />
<ctrl>+d &nbsp; Saadab lõpetamiskäskluse(EOF) käimasolevale protsessile, teistkordsel järjestikusel vajutusel logib terminalist välja.<br/><br />
<ctrl>+e &nbsp; Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f &nbsp; Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h &nbsp; Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k &nbsp; Rea kustutamine kursori tagant.<br/><br />
<ctrl>+l &nbsp; Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n &nbsp; Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p &nbsp; Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q &nbsp; Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r &nbsp; Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut ning pakub välja automaatseid Trükitav tekst ei pea olema käskluse alguses, väljastakse vasteid, mis sisaldavad trükitud teksti. Teistkordsel klahvikombinatsiooni vajutusel otsitakse vastet tervest ajaloo listist. Lihtsam ja kiirem moodus, kui kasutada käsku history | grep "".<br/><br />
<ctrl>+s &nbsp; Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z &nbsp; Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t &nbsp; Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u &nbsp; Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w &nbsp; Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y &nbsp; Puhvri sisu sisetamine.<br/><br />
<alt>+b &nbsp; Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d &nbsp; Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f &nbsp; Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t &nbsp; Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c &nbsp; Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v &nbsp; Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1>&nbsp; Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn>&nbsp; (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> &nbsp; Vahetub esimesse GUI terminali.<br />
tty &nbsp;prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del >&nbsp; Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t &nbsp; Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> &nbsp;lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> &nbsp; Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> &nbsp; Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> &nbsp; Saab liikuda terminali sisendis alla.<br/><br />
<br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. Samuti töötavad need kiirklahvid ka mitmetes rakendusprogrammides, näiteks tekstiredaktor Nanos. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57307Bashi kiirklahvid2012-11-20T18:17:11Z<p>Gmaisla: /* Kiirklahvid */</p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a &nbsp; Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b &nbsp; Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C &nbsp; Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D &nbsp; Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e &nbsp; Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f &nbsp; Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h &nbsp; Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k &nbsp; Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L &nbsp; Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n &nbsp; Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p &nbsp; Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q &nbsp; Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r &nbsp; Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s &nbsp; Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z &nbsp; Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t &nbsp; Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u &nbsp; Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w &nbsp; Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y &nbsp; Puhvri sisu sisetamine.<br/><br />
<alt>+b &nbsp; Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d &nbsp; Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f &nbsp; Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t &nbsp; Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c &nbsp; Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v &nbsp; Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1>&nbsp; Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn>&nbsp; (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> &nbsp; Vahetub esimesse GUI terminali.<br />
tty &nbsp;prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del >&nbsp; Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t &nbsp; Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> &nbsp;lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> &nbsp; Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> &nbsp; Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> &nbsp; Saab liikuda terminali sisendis alla.<br/><br />
<br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57301Bashi kiirklahvid2012-11-20T18:10:41Z<p>Gmaisla: /* Sissejuhatus */</p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y Puhvri sisu sisetamine.<br/><br />
<alt>+b Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1> Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn> (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> Vahetub esimesse GUI terminali.<br />
tty prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del > Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> Saab liikuda terminali sisendis alla.<br/><br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57300Bashi kiirklahvid2012-11-20T18:10:27Z<p>Gmaisla: /* Sissejuhatus */</p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi käsukest (shell)), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y Puhvri sisu sisetamine.<br/><br />
<alt>+b Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1> Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn> (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> Vahetub esimesse GUI terminali.<br />
tty prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del > Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> Saab liikuda terminali sisendis alla.<br/><br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57294Bashi kiirklahvid2012-11-20T18:03:22Z<p>Gmaisla: </p>
<hr />
<div>==Sissejuhatus==<br />
Bash on unixi shell (käsukest), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y Puhvri sisu sisetamine.<br/><br />
<alt>+b Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1> Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn> (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> Vahetub esimesse GUI terminali.<br />
tty prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del > Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> Saab liikuda terminali sisendis alla.<br/><br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57291Bashi kiirklahvid2012-11-20T18:00:56Z<p>Gmaisla: /* Sissejuhatus */</p>
<hr />
<div>Grete Maisla A21 5.11.2012<br />
==Sissejuhatus==<br />
Bash on unixi shell (käsukest), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
<br />
==Kiirklahvid==<br />
<ctrl>+a Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y Puhvri sisu sisetamine.<br/><br />
<alt>+b Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1> Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn> (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> Vahetub esimesse GUI terminali.<br />
tty prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del > Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> Saab liikuda terminali sisendis alla.<br/><br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaislahttps://wiki.itcollege.ee/index.php?title=Bashi_kiirklahvid&diff=57266Bashi kiirklahvid2012-11-20T17:35:55Z<p>Gmaisla: /* Kasutatud materjalid */</p>
<hr />
<div>Grete Maisla A21 5.11.2012<br />
==Sissejuhatus==<br />
Bashi on unixi shell (käsukest), tavaliselt jooksutatakse tekstiaknas, mille abil saab kasutaja sisestada käske ja neid aktiveerida. Samuti suudab Bash lugeda skripte. Windowsi kasutajate jaoks võib paralleeliks tuua Powershelli. Neile, kes kasutavad tihti Bashi, võivad kasuks tulla alljärgnevad kiirklahvide kombinatsioonid, et töö teha kiiremaks ja tõhusamaks.<br/><br />
'''Legend''': noolsulgude <> vahel tähistan üht klahvi, + märk näitab, mis tähte klaviatuurilt sellega koos vajutada.<br/><br />
'''Märkus''': Linux on tõstutundlik, seega on oluline kiirklahvide kasutamisel jälgida, et caps lock poleks sisse lülitatud.<br/><br />
==Kiirklahvid==<br />
<ctrl>+a Kursor liigutatakse rea algusesse, mida hetkel trükid. <home><br/><br />
<ctrl>+b Liigutakse ühe märgi võrra tagasi.<br/><br />
<ctrl>+C Tapab käimasoleva protsessi.<br/><br />
<ctrl>+D Väljalogimine käimasolevast terminalist.<br/><br />
<ctrl>+e Kursor liigutatakse rea lõppu, mida hetkel trükid.<end><br/><br />
<ctrl>+f Liigutakse ühe märgi võrra edasi.<br/><br />
<ctrl>+h Kustutab märgi enne kursorit.Töötab nagu backspace nupp.<br/><br />
<ctrl>+k Rea kustutamine kursori tagant.<br/><br />
<ctrl>+L Terminalileht puhastatakse, kuid sisestatav käsk jäetakse alles.<br/><br />
<ctrl>+n Järgmine käsklus ajaloos. <DownArrow><br/><br />
<ctrl>+p Eelmine käsklus ajaloos. <UpArrow><br/><br />
<ctrl>+q Konsooli väljundi näitamist jätkatakse. Proovida, kui terminal ei reageeri.<br/><br />
<ctrl>+r Teostatakse otsing viimati kasutatud käskudest. Kirjutamise jooksul kitsendatakse otsingut. <br/><br />
<ctrl>+s Konsooli väljundi näitamine peatatakse, kui töötava programmi tööd jätkatakse.<br/><br />
<ctrl>+z Paneb käimasoleva protsessi taustale jooksma. Esiplaanile saab tagasi tuua fg käsku kasutades.<br/><br />
<ctrl>+t Vahetab kaks viimast märki kursori ees.<br/><br />
<ctrl>+u Rea lõikmine/kustutamine kursori eest.<br/><br />
<ctrl>+w Kursori ees oleva sõna kustutamine, või kui kursor on sõna sees, siis kustutakse kursorist vasakule jääv sõna osa.<br/><br />
<ctrl>+y Puhvri sisu sisetamine.<br/><br />
<alt>+b Liigutakse ühe sõna võrra tagasi.<br/><br />
<alt>+d Kursori all oleva sõna lõikamine puhvrisse.<br/><br />
<alt>+f Liigutakse ühe sõna võrra edasi.<br/><br />
<alt>+t Vahetab kahe viimase sõna järjekorda.<br/><br />
<ctrl><shift>+c Märgitud tekst kopeeritakse.<br/><br />
<ctrl><shift>+v Kopeeritud tekst kleebitakse kursori juurde.<br/><br />
<Ctrl><Alt><F1> Vahetub esimesse teksti terminali. Linuxis võib olla mitu (tavaliselt 6) terminali avatud samal ajal.<br/><br />
<Ctrl><Alt><Fn> (n=1..6) vahetub järgmisesse valitud terminali.<br/><br />
<Ctrl><Alt><F7> Vahetub esimesse GUI terminali.<br />
tty prindib terminali nime, millesse parasjagu käsklusi sisestad.<br/><br />
<Ctrl><Alt>< Del > Sulgeb süsteemi ja taaskäivitab. Tavaline sulgemiskäsklus kasutajale tekstirežiimi konsoolis.<br/><br />
<Esc> + t Vahetab kaks viimast sõna kursori ees.<br/><br />
<Tab> lõpetab automaatselt failide ja kaustade nimesid kui esineb ainult üks võimalus, vastasel juhul näitab olemasolevaid võimalusi.<br/><br />
<ArrowUp> Saab liikuda ja redigeerida käskluste ajalugu. Väljumiseks vajutada <enter><br/><br />
<Shift><PgUp> Saab liikuda terminali sisendis üles. <br/><br />
<Shift><PgDown> Saab liikuda terminali sisendis alla.<br/><br />
==Kokkuvõte==<br />
Need on Bashi vaikimisi määratud kiirklahvid (default fast keys). Olenevalt Bashi sisselogimisolekust (ssh/telnet), või sõltuvalt sellest, kuidas on kiirklahvid seadistatud, võivad mõned käsklused erinevalt toimida. <br/><br />
==Kasutatud materjalid==<br />
*http://viki.pingviin.org/Terminaliemulaator#Kiirklahvid<br/><br />
*http://beerpla.net/2008/12/22/mastering-the-linux-shell-bash-shortcuts-explained/<br/><br />
*http://www.howtogeek.com/howto/ubuntu/keyboard-shortcuts-for-bash-command-shell-for-ubuntu-debian-suse-redhat-linux-etc/<br/><br />
*http://ss64.com/bash/syntax-keyboard.html<br/><br />
*http://www.unixguide.net/linux/linuxshortcuts.shtml<br/><br />
<br />
[[Category: Operatsioonisüsteemide administreerimine ja sidumine]]</div>Gmaisla