diff options
Diffstat (limited to 'kpov_judge')
-rw-r--r-- | kpov_judge/tasks/snmp_agent_uptime/howtos/si/index.html | 308 |
1 files changed, 308 insertions, 0 deletions
diff --git a/kpov_judge/tasks/snmp_agent_uptime/howtos/si/index.html b/kpov_judge/tasks/snmp_agent_uptime/howtos/si/index.html new file mode 100644 index 0000000..6d38b5d --- /dev/null +++ b/kpov_judge/tasks/snmp_agent_uptime/howtos/si/index.html @@ -0,0 +1,308 @@ +<html>
+ <head>
+ <meta http-equiv="content-type" content="text/html; charset=utf-8">
+ <title>snmp_agent_uptime</title>
+ </head>
+ <body>
+ <h1>snmp_agent_uptime</h1>
+ <h2>Namen naloge</h2>
+ <p>
+ ???
+ </p>
+ <h2>Hitra navodila</h2>
+ <p>
+ Naloga: Postavi tri navidezne racunalnike SimpleArbiter s sliko diska simpleArbiterDhcp,SNMPServer in
+ SNMPClient.
+ Napisi program upminutes, ki bo izpisal v minutah koliko casa je racunalnik vklopljen.
+ Postavi ga na SNMPClient v domaci imenik uporabnika test z geslom test.
+ </p>
+ <p>
+ Poskrbi, da bo SNMP streznik prek SNMP pod NET-SNMP-EXTEND-MIB::nsExtendOutput2Table sporocal, koliko casa je vklopljen v sekundah.
+ </p>
+ <p>
+ Napisi skripto, poimenovano beri.sh, ki prek SNMP prebere vrednost s streznika
+ SNMPServer na OID 1.3.6.1.4.1.8072.1.3.2.4.1.4.
+ Postavi jo na SNMP klienta, v domaci imenik uporabnika test z geslom test.
+ </p>
+ <h2>Navodila</h2>
+ <h3>Nastavitev VM VirtualBox-a</h3>
+ <ol>
+ <li>
+ Prenesi sledeče slike virtualk (*.vid) iz datoteke
+ z slikami virtualk računalnikov:
+ <ol type="disc">
+ <li>
+ simpleArbiterDhcp.vdi
+ </li>
+ <li>
+ neko-bash-konzolo.vdi (dvakrat), enkrat za SNMPServer
+ in drugic SNMPClient
+ </li>
+ </ol>
+ </li>
+ <li>
+ VM VirtualBox OPOZORILO! Ce hoces uporabljati isto sliko virtualke
+ (neko-bash-konzolo.vdi) za dva navidezna racunalnika
+ (SNMPServer in SNMPClient), moras <strong>spremeniti UUID</strong>
+ ene od slik.
+ <ol type="disc">
+ <li>
+ Uporabi ta ukaz
+ <i>vboxmanage internalcommands sethduuid ime-diska.vdi</i>
+ za spreminjanje UUID (<a href="http://www.giannistsakiris.com/2009/05/06/virtualbox-how-to-change-the-uuid-of-virtual-disk-vdi/">namig</a>).
+ </li>
+ </ol>
+ </li>
+ <li>
+ Primer VM VirtualBox-a po nastavitvi.<br>
+ <img src="..\images\01.png" width="800">
+ </li>
+ </ol>
+
+ <h3>Nastavitev SNMPServer virtualke</h3>
+ <ol>
+ <li>
+ Nasnemi snmpd and snmp orodja za pregledovanje
+ podatkov, ki so no voljo preko SNMP.
+ <ol type="disc">
+ <li>
+ ukaz <i>apt-get install snmpd snmp snmp-mibs-downloader</i>
+ </li>
+ </ol>
+ <li>
+ PRIPOROCILO! Preden spreminjate vaso datoteko /etc/snmp/snmpd.conf,
+ naredite kopijo originalne datoteke.
+ <ol type="disc">
+ <li>
+ ukaz <i>cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Nastavi snmp streznik tako, da se bodo lahko nanj povezali drugi racunalniki
+ (popravi datoteko snmpd.conf).
+ <ol type="disc">
+ <li>
+ ukaz <i>nano /etc/snmp/snmpd.conf</i>
+ (lahko uporabis drug urejevalnik besedila)
+ </li>
+ <li>
+ odkomentiraj sledece stiri vrstice:<br>
+ <i># Listen for connections from the local system only<br>
+ # agentAddress udp:127.0.0.1:161<br>
+ # Listen for connections on all interfaces (both IPv4 *and* IPv6)<br>
+ agentAddress udp:161,udp6:[::1]:161</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Dodaj skupino (community) racunalnikov, ki lahko dostopajo do vseh podatkov.
+ To skupino bomo poimenovali students (spet potrebno spremeniti datoteko)
+ snmpd.conf file.
+ <ol type="disc">
+ <li>
+ rocommunity students 0.0.0.0/0
+ </li>
+ <li>
+ napisi pravilni naslov omrezja = ukaz <i>ifconfig -a</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ DODATNA (NEOBVEZNA) KONFIGURACIJA. Nizje v isti datoteki lahko nastavis
+ lokacijo racunalnika, na katerem deluje snmp, ter ime administratorja.
+ <ol type="disc">
+ <li>
+ poisci pod # SYSTEM INFORMATION
+ </li>
+ </ol>
+ </li>
+ <li>
+ Poskrbi, da bo SNMP streznik prek SNMP pod NET-SNMP-EXTEND-MIB::nsExtendOutpucd
+ k t2Table sporocal, koliko casa je vklopljen v sekundah.
+ <ol type="disc">
+ <li>
+ ustvari skripto upseconds, v kateri je zapisano sledece:<br>
+ <i>#!/bin/bash<br>
+ uptime=$(</proc/uptime)<br>
+ seconds=${uptime%%.*}<br>
+ echo "Uptime in seconds:" $seconds<br>
+ exit 0</i><br>
+ skripto nato shrani kjerkoli hoces
+ </li>
+ <li>
+ ne pozabi skripti dodelti pravic, da jo lahko zaganjamo:<br>
+ ukaz <i>chmod +x /pot_do_skripte/upseconds</i>
+ </li>
+ <li>
+ Nato uredi datoteko <i>snmpd.conf</i> in pod # EXTENDING THE AGENT
+ zakomentiraj vse tri teste ter dodaj svojo skripto upseconds.
+ Zgledati bi moralo nekako tako:<br>
+ <i># extend test1 /bin/echo Hello, world!<br>
+ # extend-sh test2 echo Hello, world! ; echo Hi there ; exit 35<br>
+ # extend-sh test3 /bin/sh /tmp/shtest<br>
+ extend-sh "ime_testa" "pot_to_skripte_upseconds"
+ </i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Potrebno je ponovno zagnati snmp storitev.
+ <ol type="disc">
+ <li>
+ ukaz <i>/etc/init.d/snmpd restart</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Lahko testiras svoje nastavitve preko localhost-a.
+ <ol type="disc">
+ <li>
+ ukaz <i>snmpwalk localhost -c public -v1</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Stestiraj tudi, ali SNMP vrne pravilni cas delovanja (uptime) v sekundah
+ pod NET-SNMP-EXTEND-MIB::nsExtendOutput2Table.
+ <ol type="disc">
+ <li>
+ ukaz <i>snmpwalk -c students -v1 IPnaslovStreznika
+ 1.3.6.1.4.1.8072.1.3.2.4.1.2</i>
+ </li>
+ <li>
+ moral bi vrniti taksen string: "Uptime in seconds: xyz"
+ </li>
+ </ol>
+ </li>
+ </ol>
+
+ <h3>Nastavitev SNMPClient virtualke</h3>
+ <ol>
+ <li>
+ Nasnemi snmpd and snmp paketa.
+ <ol type="disc">
+ <li>
+ ukaz <i>apt-get install snmpd snmp</i>
+ </li>
+ </ol>
+ <li>
+ PRIPOROCILO! Preden spreminjate vaso datoteko /etc/snmp/snmpd.conf,
+ naredite kopijo originalne datoteke.
+ <ol type="disc">
+ <li>
+ ukaz <i>cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Nastavi snmp streznik tako, da se bodo lahko nanj povezali drugi racunalniki
+ (popravi datoteko snmpd.conf).
+ <ol type="disc">
+ <li>
+ ukaz <i>nano /etc/snmp/snmpd.conf</i>
+ (lahko uporabis drug urejevalnik besedila)
+ </li>
+ <li>
+ odkomentiraj sledece stiri vrstice:<br>
+ <i># Listen for connections from the local system only<br>
+ # agentAddress udp:127.0.0.1:161<br>
+ # Listen for connections on all interfaces (both IPv4 *and* IPv6)<br>
+ agentAddress udp:161,udp6:[::1]:161</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Dodaj skupino (community) racunalnikov, ki lahko dostopajo do vseh podatkov.
+ To skupino bomo poimenovali students (spet potrebno spremeniti datoteko)
+ snmpd.conf file.
+ <ol type="disc">
+ <li>
+ rocommunity students 0.0.0.0/0
+ </li>
+ <li>
+ napisi pravilni naslov omrezja = ukaz <i>ifconfig -a</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ DODATNA (NEOBVEZNA) KONFIGURACIJA. Nizje v isti datoteki lahko nastavis
+ lokacijo racunalnika, na katerem deluje snmp, ter ime administratorja.
+ <ol type="disc">
+ <li>
+ poisci pod # SYSTEM INFORMATION
+ </li>
+ </ol>
+ </li>
+
+ <li>
+ Potrebno je ponovno zagnati snmp storitev.
+ <ol type="disc">
+ <li>
+ ukaz <i>/etc/init.d/snmpd restart</i>
+ </li>
+ </ol>
+ </li>
+ <li>
+ Lahko testiras svoje nastavitve preko localhost-a.
+ <ol type="disc">
+ <li>
+ ukaz <i>snmpwalk localhost -c public -v1</i>
+ </li>
+ </ol>
+ </li>
+ <li>Ustvari uporabnika <i>test</i> z geslom <i>test</i>
+ <ol type="disc">
+ <li>
+ ukaz <i>adduser test</i>
+ </li>
+ </ol>
+ </li>
+ <li>Prijavi se kot uporabnik <i>test</i> ter naredi skripto <i>upminutes</i>
+ v domacem direktoriju. Ta skripta naj izpisuje cas delovanja racunalnika (uptime) v minutah.
+ <ol type="disc">
+ <li>
+ ukaz <i>nano upminutes</i> (lahko uporabis drug urejevalnik besedila)
+ </li>
+ <li>
+ dodaj sledeco kodo:<br>
+ <i>#!/bin/bash<br>
+ uptime=$(</proc/uptime)<br>
+ uptime=${uptime%%.*}<br>
+ minutes=$(( uptime / 60 ))<br>
+ echo "Uptime in minutes:" $minutes<br>
+ exit 0</i>
+ </li>
+ <li>
+ ne pozabi skripti dodelti pravic, da jo lahko zaganjamo:<br>
+ ukaz <i>chmod +x /pot_do_skripte/upminutes</i>
+ </li>
+ <li>
+ stestiraj skripto (izpisovati bi morala cas delovanja racunalnika (uptime) v minutah)<br>
+ ukaz <i>/home/test/upminutes</i>
+ </li>
+ </ol>
+ </li>
+ <li>Kot uporabnik <i>test</i> naredi se eno skripto <i>beri.sh</i>m ki bere
+ vrednosti od OID 1.3.6.1.4.1.8072.1.3.2.4.1.4.
+ na SNMPServer. Shrani jo na SNMPClient v domac direktorij uporabnika test.
+ <ol type="disc">
+ <li>
+ ukaz <i>nano beri.sh</i> (lahko uporabis drug urejevalnik besedila)
+ </li>
+ <li>
+ dodaj kodo:<br>
+ <i>#!/bin/bash<br>
+ snmpwalk -c students -v1 IPnaslovStreznika 1.3.6.1.4.1.8072.1.3.2.4.1.4<br>
+ exit 0</i>
+ </li>
+ <li>
+ ne pozabi skripti dodelti pravic, da jo lahko zaganjamo:<br>
+ ukaz <i>chmod +x /pot_do_skripte/upminutes</i>
+ </li>
+ </ol>
+ </li>
+ </ol>
+
+ </body>
+</html>
\ No newline at end of file |