nadzor in upravljanje z omrežji...zaznavanje napake na vmesniku računalnika ali usmerjevalnika:...
TRANSCRIPT
Nadzorinupravljanjezomrežji
Upravljanjezomrežjem
Kajjetoupravljanjezomrežjem(networkmanagement)?Zakajjepotrebno?
ManiSubramanian,NetworkManagement:Anintroductiontoprinciplesandpractice,AddisonWesleyLongman,2000
Upravljanjezomrežjem Zrastjointernetainlokalnihomrežijsosemajhnaomrežjapovezalav
VELIKOinfrastrukturo.ZatojestemnaraslatudipotrebapoSISTEMATIČNEMupravljanjustrojnihinprogramskihkomponenttegasistema.Pogostavprašanja: Katerivirisonarazpolagovomrežju? Kolikoprometagreskozidoločenoomrežnoopremo? Kdouporabljaomrežnepovezave,zaradikaterihdirektorprepočasidobiva
elektronskopošto? Zakajnemorempošiljatipodatkovdoločenemuračunalniku?
Definicija:Upravljanjezomrežjemvključujevpeljavo,integracijoinkoordinacijosstrojnoopremo,programskoopremoinčloveškimiviriznamenomopazovanja,testiranja,konfiguriranja,analiziranjainnadzorovanjaomrežnihvirov,prikaterihželimozagotovitidelovanjevrealnemčasu(alidelovanjezustreznokakovostjo‐QoS)zasprejemljivoceno.
Primeriak2vnos2upravljanja1. zaznavanjenapakenavmesnikuračunalnikaaliusmerjevalnika:
programskaopremalahkosporočiadministratorju,dajenavmesnikuprišlodotežave(celopredenodpove!)
2. nadzorovanjedelovanjaračunalnikovinanalizaomrežja3. nadzorovanjeomrežnegaprometa:administratorlahkoopazuje
pogostesmerikomunikacijinnajdeozkagrla,4. zaznavanjehitrihspremembvusmerjevalnihtabelah:tapojav
lahkoopozarjanatežavezusmerjanjemalinapakovusmerjevalniku,5. nadzorovanjenivojazagotavljanjastoritev:ponudnikiomrežnih
storitevnamlahkojamčijorazpoložljivost,zanasnitevindoločenoprepustnoststoritev;administratorlahkomeriinpreverja,
6. zaznavanjevdorov:administratorjelahkoobveščen,čedoločenprometprispeizsumljivihvirov;zaznavalahkotudidoločentipprometa(npr.množicaSYNpaketov,namenjenaenemsamemvmesniku)
Primeriak2vnos2
nadzorovanjedelovanjaračunalnikovinanalizaomrežja(odkrivanjetopologijeomrežja)
Primeriak2vnos2
nadzorovanjeomrežnegaprometa(profiliranje)
Primeriak2vnos2
nadzorovanjenivojazagotavljanjastoritev(pretokpodatkov)
Primeriak2vnos2
nadzorovanjedelovanjaračunalnikovinanalizaomrežja(popisIPnaslovov)
Primeriak2vnos2
nadzorovanjedelovanjaračunalnikovinanalizaomrežja(diagnostikainodkrivanjenapak)
Področjaupravljanja
UpravljanjezNAPAKAMI
(faultmanagement)
UpravljanjesKONFIGURACIJAMI
(configurationmanagement)
UpravljanjezBELEŽENJEMDOSTOPOV(accountingmanagement)
UpravljanjezVARNOSTJO(security)
UPRAVLJANJE
Programskaopremazaupravljanje
CLI(CommandLineInterface): natančnoupravljanje, možnostrabeukaznihdatotek(batch),– problempoznavanjasintakse,težavnost
shranjevanjakonfiguracije,manjsplošno‐specifičnozaposameznoomrežnoopremo
GUI(GraphicalUserInterface)aplikacije:
vizuelnolepše,omogočapregleddelovanjacelenaprave/omrežja,uporabljalahkosvoj(zgoščen)protokolzakomunikacijoznapravo‐hitrost,
– izgubimomožnostshranjevanjaberljivekonfiguracije(binarnizapis),lahkomaskiravsekonfiguracijskemožnosti
Infrastrukturazaupravljanje
agent podatki
nadzorovana naprava
upravljalec podatki
protokol za
upravljanje
agent podatki
agent podatkiagent podatki
nadzorovana naprava
nadzorovana naprava
nadzorovana naprava
Komponentesistemazaupravljanje:
upravljalec=entiteta(aplikacija+človek),BOSS,
nadzorovananaprava(vsebujeagentaNMAinnadzorovaneOBJEKTE,kivsebujejonadzorovanePARAMETRE),
protokolzaupravljanje(npr.SNMP).
OSICMIP CommonManagementInformationProtocol,
ITU‐TX.700standard nastal1980:prvistandardzaupravljanje,
prepočasistandardiziran,nizaživelvpraksi.
SNMP SimpleNetworkManagementProtocol,
IETFstandard prvaverzijazelopreprosta, hitrauvedbainrazširitevvpraksi,
trenutno:SNMPV3(dodanavarnost!),
defactostandardzaupravljanjeomrežij.
Zgodovina:protokolizaupravljanje
ZavsakovrstonadzorovanenapraveimamosvojMIB(ManagementInformationBase),kjersopodatkioupravljanihOBJEKTIHinnjihovihPARAMETRIH.
UpravljalecimasvojMDB(ManagementDatabase),kjerzavsakoupravljanonapravohranikonkretnevrednostizanjihoveMIBobjekte/parametre.
Potrebenjejezik,kidefinirazapisOBJEKTOVinPARAMETROV:SMI(StructureofManagementInformation)
Podatkizaupravljanje
osnovnipodatkovnitipi:INTEGER,Integer32,Unsigned32,OCTETSTRING,OBJECTIDENTIFIED,IPaddress,Counter32,Counter64,Gauge32,TimeTicks,Opaque
sestavljenipodatkovnitipi: OBJECT‐TYPE MODULE‐TYPE
SMI:jezikzadefinicijoobjektovvMIB
definicijaobjekta:imapodatkovnitip,status,opispomena
ipSystemStatsInDelivers OBJECT TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION “The total number of input datagrams successfully delivered to IP user-protocols (including ICMP)” ::= { ip 9}
SMI:definicijaobjekta
MODUL:vsebinskopovezanaskupinaobjektov
ipMIB MODULE-IDENTITY LAST-UPDATED “941101000Z” ORGANZATION “IETF SNPv2 Working Group” CONTACT-INFO “ Keith McCloghrie ……” DESCRIPTION “The MIB module for managing IP and ICMP implementations, but excluding their management of IP routes.” REVISION “019331000Z” ::= {mib-2 48}
SMI:združevanjeobjektovvmodule
OBJECT TYPE: OBJECT TYPE: OBJECT TYPE:
MODULE
MODULI: "standardizirani", lastniproizvajalcemopreme(vendor‐specific)
IETF(InternetEngineeringTaskForce)zadolženazastandardizacijoMIBmodulovzausmerjevalnike,vmesnikeindrugoomrežnoopremo ‐>potrebnopoimenovanje(označitev)standardnihkomponent!
uporabisepoimenovanjeISOASN.1(AbstractSyntaxNotation1)
MIBmoduli:standardizacija
hierarhičnaurejenostobjektovzdrevesomidentifikatorjev
vsakobjektimaime,sestavljenizzaporedjaštevilčnihidentifikatorjevodkorenadrevesadolista primer:1.3.6.1.2.1.7pomeniUDPprotokol
izziv:kajsenahajanadrugemintretjemnivojudrevesaidentifikatorjev?
MIBmoduli:standardizacijapodjetjazastandardizacijo
nadzorovaniobjekti/parametri
Primer: 1.3.6.1.2.1.7določaprotokolUDP 1.3.6.1.2.1.7.*določaopazovaneparametreUDPprotokola
MIB:poimenovanje,primer
1.3.6.1.2.1.7.1ISO
ISO‐ident.Org.USDoDInternet
udpInDatagramsUDPMIB2management
MIB:poimenovanje,primer
Object ID Name Type Comments
1.3.6.1.2.1.7.1 UDPInDatagrams Counter32 total # datagrams delivered at this node
1.3.6.1.2.1.7.2 UDPNoPorts Counter32 # underliverable datagrams no app at portl
1.3.6.1.2.1.7.3 UDInErrors Counter32 # undeliverable datagrams all other reasons
1.3.6.1.2.1.7.4 UDPOutDatagrams Counter32 # datagrams sent
1.3.6.1.2.1.7.5 udpTable SEQUENCE one entry for each port in use by app, gives port # and IP address
ProtokolSNMP
SimpleNetworkManagementProtokol protokolzaizmenjavonadzornihinformacijmedupravljalcemin
nadzorovanimiobjekti podatkionadzorovanihobjektihseprenašajomednadzorovano
opremoinupravljalcemskladnozdefinicijoMIB dvanačinadelovanja:
zahteva‐odgovor(request‐response):bereinnastavljavrednosti, obvestilo(trapmessage):napravaobvestiupravljalcaodogodku
ProtokolSNMP
dvanačinadelovanja
SNMP:2pisporočil
Sporočilo Smer Pomen
GetRequestGetNextRequestGetBulkRequest
upravljalec‐>agent
"dajmipodatke"(vrednost,naslednjavseznamu,blokpodatkov‐tabela)
InformRequest upravljalec‐>upravljalecmedsebojnoposredovanjevrednos2izMIB
SetRequest upravljalec‐>agent nastavivrednostvMIB
Response agent‐>upravljalec"tukajjevrednost",odgovornaRequest
Trap agent‐>upravljalecobves2loupravljalcuoizrednemdogodku
ProtokolSNMP
izziv:poiščiteRFCdokumenteoSNMPinugotoviterazlikemednjimi
SNMPuporabljatransportniprotokolUDP vrata161:"splošna"SNMPvrata,nakaterihnapraveposlušajopoSNMPzahtevah vrata162:vratazaobvestila(traps),nakaterihobičajnoposlušajosistemiza
nadzorovanjeinupravljanjezomrežjem
implementacijaSNMPmorareševatinaslednjetežave: velikostpaketov:SNMPpaketilahkovsebujejoobsežneinformacijeoobjektihv
MIB,UDPpaimazgornjomejovelikostisegmenta(TCPnima), ponovnopošiljanje:kerseuporabljaUDP,nimamozagotovljenedostavein
potrjevanja.NadzordostavejetorejpotrebnoreševatinavišjemOSInivoju, problemzizgubljenimiobvestili:česeobvestilopriprenosuizgubi,pošiljateljo
temničneve;prejemnikpagatudinedobi izziv:kakoSNMPv3rešujenavedenetežave?
SNMP:oblikasporočila
Verzija VerzijaSNMPprotokola
DestinationParty Identifikatorprejemnika
SourceParty Identifikatorpošiljatelja
Context DefiniramnožicoMIBobjektov,kijedosegljivaentiteti
PDU Glavnavsebinasporočila,podatkiizMIB
podatkovnaenotaprotokolaPDU(protocoldataunit)
glava
SNMP:sporočilo2pazahteva‐odgovor
RequestID IntegerŠtevilka,kipovezujezahtevezodgovori.Naprava,kiodgovori,koshranivpakettipaResponse.Uporabljasetudizaumetnokontroloprejetihpaketov(SNMPnamrečuporabljaUDPtransportniprotokol,kiteganezagotavlja!)
ErrorStatus IntegerKodanapake,kigaagentposredujevpaketutipaReponse.Vrednost0pomeni,dadonapakenipričo,ostalevrednostidefinirajotočnonapako.
izziv:poglejrazličnetipenapak
ErrorIndex Integer Čejeprišlodonapake,jetavrednostindeksobjekta,kijepovzročilnapako
VariableBindings Variable Pariime‐vrednost(name‐value),kidefinirajoobjekteinnjihovevrednosti.
SNMP:sporočilo2paobves?lo
PDUType Integer Vrednost,kidefiniratipsporočila.Vrednost4/7pomeniobvestilo(trapmessage).
Enterprise SequenceofInteger Identifikatorskupine.
AgentAddress NetworkAddress IPnaslovagenta,kijegeneriralobvestilo.
GenericTrapCode Integer Splošnakodanapake‐izpredefiniranegašifranta.
SpecificTrapCode Integer Specifičnakodanapake(odvisnaodproizvajalceopreme)
TimeStamp TimeTicks Čas,odkarsejenapravanazadnjeinicializirala.Uporabljasezabeleženje.
VariableBindings Variable Pariime‐vrednost(name‐value),kidefinirajoobjekteinnjihovevrednosti.
VerzijeSNMP
SNMPv1 definirankonec80‐ihlet izkazalsejezaprešibekzaimplementacijovsehpotrebnihzahtev(omejenprisestavi
PDUpaketov)
SNMPv2 izboljšanSNMPv1napodročjihhitrosti(dodanGetBulkRequest),varnosti(vendar
prekompleksnaimplementacija),komunikacijmedupravljalci, RFC1901,RFC2578 uporabljaSMIv2(izboljšanstandardzastrukturiranjeinformacij)
SNMPv3 izboljšanSNMPv2‐imadodanevarnostnemehanizme, omogočakriptografijo,zagotavljazaupnost,integriteto,avtentikacijo, tudiuporabljaSMIv2
Varnost
Zakajjepomembna? SetRequestnastavljanadzorovanenaprave.Zahtevolahkopošljekdorkoli?
izziv:poiščiše3primeredrugihmožnihzlorabprotokolaSNMP
VarnostnielementisovpeljanišelevSNMPv3,prejšnjidverazličicijihnistaimeli.SNMPv3imavgrajenovarnostnaosnoviuporabniškihimen izziv:preberiRFC3414inpoiščiinformacijo,protikakšnimvdoromomogočaSNMPv3zaščito?
KakojeznapadiDenialofServiceinprisluškovanjemprometa?
SNMP.Varnostnimehanizmi1. kriptiranjevsebinepaketov(PDU):uporabljaseDES(ključa
jepredhodnopotrebnoizmenjati)
2. integriteta:uporabljasezgoščanjesporočilasključem,kigapoznatapošiljateljinprejemnik.Spreverjanjemposlanezgoščenevrednostiimamokontrolopredaktivnimponarejanjemsporočil
SNMP:Varnostnimehanizmi3. zaščitaprotiponovitvižeopravljenekomunikacije(replay
attack):uporabaenkratnihžetonov(angl.nonce):pošiljatelj,morasporočilokodiratigledenažeton,kigadoločasprejemnik(tojeobičajnoštevilovsehzagonovsistemapošiljateljainčas,kijeminilodzadnjegazagona)
SNMP:Varnostnimehanizmi4. kontroladostopa:kontroladostopanaosnoviuporabiškihimen.
Pravicedoločajo,kateriuporabnikilahkoberejo/nastavljajokatereinformacije.PodatkiouporabnikihsehranijovbaziLocalConfigurationDataStore,kiimaravnotakonadzorovaneobjektesSNMP! izziv:preučiRFC3415.KajjetoView‐basedAccessControlModelConfigurationMIB?
KodiranjevsebinePDU Kakokodirativsebinopaketa,daborazumljivanavsehplatformah
(različnipodatkovnitipisorazličnodolgi,zapisdebeli/tankikonec)?
potrebujemoenotninačinkodiranjaalinekpredstavitveninivotehpodatkov
ASN.1standardpolegpodatkovnihtipovdefiniratudistandardekodiranja, videlibomo,dasezapredstavljanjetehoperatorjevuporabljaTLVnotacija(Type,
Length,Value‐tip,dolžina,vrednost)
test.x = 256; test.code=‘a’
Kako narediti ta prenos?
KodiranjevsebinePDU Podobenproblem:
Tojepopolnomagroovy!
bakica
teenager
Hmmm??? Hmmm???
KodiranjevsebinePDU Podobenproblem:
Tojepopolnomagroovy!
bakica
teenager
Aha!!! Aha!!!
Prezentacijskastoritev
Prezentacijskastoritev
Prezentacijskastoritev
Prijetnoje! Prijetnoje!
Naravnostprikupno!
Zakon!Seka!
Prezentacijskastoritev:možnerešitve1. Pošiljateljupoštevaoblikopodatkov,kijouporabljaprejemnik:
podatkepretvarjavnjegovooblikoinnatošelepošlje.2. Pošiljateljpošljepodatkevsvojiobliki,prejemnikpretvorivlastno
obliko.3. Pošiljateljpretvorivneodvisnooblikoinnatopošlje.Prejemnik
neodvisnooblikopretvorivsvojolastnoobliko. izziv:kakšnesoprednostiinslabostigornjihtrehpristopov?
ASN.1uporablja3.rešitevzgoraj(neodvisnoobliko). PrizapisovanjutipovseuporabljapravilaBER(BinaryEncoding
Rules).TadefinirajozapispodatkovpoprincipuTLV(Type,Length,Value=tip,dolžina,vrednost).
PrimerBERkodiranjapoprincipuTLV
OsnovniASN.1podatkovnitip Št.tipa Uporaba(angl.)
BOOLEAN 1 Modellogical,two‐statevariablevalues
INTEGER 2 Modelintegervariablevalues
BITSTRING 3 Modelbinarydataofarbitrarylength
OCTETSTRING 4Modelbinarydatawhoselengthisamultipleofeight
NULL 5 Indicateeffectiveabsenceofasequenceelement
OBJECTIDENTIFIER
6 Nameinformationobjects
REAL 9 Modelrealvariablevalues
ENUMERATED 10 Modelvaluesofvariableswithatleastthreestates
CHARACTERSTRING
*Modelsvaluesthatarestringsofcharactersfromaspecifiedcharacterset
ZajempaketovSNMP
StrukturaSNMPprogramja
Alterna2vnebu2čnerešitve
1. XML&SOAP(aplikacijskinivo):XMLomogočanazoreninhierarhičennačinkodiranjapodatkov,kilahkopredstavljajoelementeinvsebinonadzorovanihobjektovvomrežju.SOAPjepreprostprotokol,kiomogočaizmenjavoXMLdokumentovvomrežju. enostavnobranjeinrazumevanjevsebinenastrani
sprejemnika,– velikoverheadvprimerjavizbinarnimkodiranjem
podatkov
2. CORBA(CommonObjectRequestBrokerArchitecture)(aplikacijskinivo):arhitektura,kidoločainter‐uporabnostobjektovrazličnihprogramskihjezikovinnarazličniharhitekturah
kombinacijaprotokolov!
Dogodkovnognanoopazovanje
RMON(RemoteMonitoring)(dodatnimehanizem):KlasičniSNMPlahkonadzorujeomrežjeiznadzornepostaje.RMONzbirainanalizirameritvelokalno,rezultatepošljeoddaljeninadzornipostaji.ImasvojMIBzrazširitvamizarazličnetipemedijev. vsakRMONagentjeodgovoren
zalokalninadzor, pošiljanježeopravljenihanaliz
zmanjšaSNMPprometmedpodomrežji
ninujno,dasoagentivednovidnisstranicentralneganadzornegasistema
– potrebendaljšivzpostavitveniinnamestitveničassistema
Domačanaloga
Nalogazadodatnetočkepridomačihnalogah:
PreberiRFC789,kiopisujeznanizpadomrežjaARPAnet,kisezgodilovletu1980.Kakobiseizpaduomrežjalahkoizognilialipohitrilinjegovoponovnovzpostavitev,čebiadministratorjiomrežjaimelinarazpolagodanašnjaorodjazaupravljanjeinnadzorovanjeomrežja?
Odgovornanalogolahkooddateprekoučilniceprekopovezave"Dodatnadomačanaloga‐izpadomrežjaARPAnet".
Naslednjičgremonaprej!
prometzaaplikacijevrealnemčasu!