Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Tento článok je venovaný funkciám monitorovania sieťových zariadení pomocou protokolu SNMPv3. Porozprávame sa o SNMPv3, podelím sa o svoje skúsenosti s tvorbou plnohodnotných šablón v Zabbixe a ukážem, čo sa dá dosiahnuť pri organizovaní distribuovaného varovania vo veľkej sieti. Protokol SNMP je hlavným pri monitorovaní sieťových zariadení a Zabbix je skvelý na monitorovanie veľkého počtu objektov a zhrnutie veľkých objemov prichádzajúcich metrík.

Pár slov o SNMPv3

Začnime účelom protokolu SNMPv3 a vlastnosťami jeho použitia. Úlohou SNMP je monitorovanie sieťových zariadení a základná správa odosielaním jednoduchých príkazov do nich (napríklad zapnutie a vypnutie sieťových rozhraní alebo reštartovanie zariadenia).

Hlavným rozdielom medzi protokolom SNMPv3 a jeho predchádzajúcimi verziami sú klasické bezpečnostné funkcie [1-3], a to:

  • autentifikácia, ktorá určuje, že žiadosť bola prijatá z dôveryhodného zdroja;
  • šifrovanie (Encryption), aby sa zabránilo zverejneniu prenášaných údajov, keď ich zachytia tretie strany;
  • integritu, teda záruku, že s paketom počas prenosu nebolo manipulované.

SNMPv3 znamená použitie bezpečnostného modelu, v ktorom je stratégia autentifikácie nastavená pre daného používateľa a skupinu, do ktorej patrí (v predchádzajúcich verziách SNMP sa požiadavka zo servera na monitorovací objekt porovnávala iba s „komunitou“, textom reťazec s „heslom“ prenášaný ako čistý text (obyčajný text)).

SNMPv3 zavádza koncept úrovní zabezpečenia - prijateľné úrovne zabezpečenia, ktoré určujú konfiguráciu zariadenia a správanie SNMP agenta monitorovacieho objektu. Kombinácia bezpečnostného modelu a úrovne bezpečnosti určuje, ktorý bezpečnostný mechanizmus sa použije pri spracovaní SNMP paketu [4].

Tabuľka popisuje kombinácie modelov a úrovní zabezpečenia SNMPv3 (prvé tri stĺpce som sa rozhodol ponechať ako v origináli):

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

V súlade s tým budeme používať SNMPv3 v režime autentifikácie pomocou šifrovania.

Konfigurácia SNMPv3

Monitorovacie sieťové vybavenie vyžaduje rovnakú konfiguráciu protokolu SNMPv3 na monitorovacom serveri aj na monitorovanom objekte.

Začnime nastavením sieťového zariadenia Cisco, jeho minimálna požadovaná konfigurácia je nasledovná (na konfiguráciu používame CLI, názvy a heslá som zjednodušil, aby nedošlo k zámene):

snmp-server group snmpv3group v3 priv read snmpv3name 
snmp-server user snmpv3user snmpv3group v3 auth md5 md5v3v3v3 priv des des56v3v3v3
snmp-server view snmpv3name iso included

Prvý riadok snmp-server group – definuje skupinu užívateľov SNMPv3 (snmpv3group), režim čítania (čítanie) a prístupové právo skupiny snmpv3group na prezeranie určitých vetiev MIB stromu monitorovaného objektu (snmpv3name potom v konfigurácia určuje, ku ktorým vetvám stromu MIB má skupina prístup, skupina snmpv3 bude môcť získať prístup).

Druhý riadok snmp-server user – definuje používateľa snmpv3user, jeho členstvo v skupine snmpv3group, ako aj použitie autentifikácie md5 (heslo pre md5 je md5v3v3v3) a des encryption (heslo pre des je des56v3v3v3). Samozrejme, že je lepšie použiť aes namiesto des; dávam to tu len ako príklad. Pri definovaní používateľa môžete tiež pridať zoznam prístupových práv (ACL), ktorý reguluje IP adresy monitorovacích serverov, ktoré majú právo monitorovať toto zariadenie – to je tiež najlepší postup, ale nebudem komplikovať náš príklad.

Tretí riadok zobrazenia snmp-server definuje kódový názov, ktorý špecifikuje vetvy stromu MIB snmpv3name, aby ich mohla vyhľadávať skupina užívateľov snmpv3group. ISO namiesto striktného definovania jednej vetvy umožňuje skupine používateľov snmpv3group prístup ku všetkým objektom v strome MIB monitorovacieho objektu.

Podobné nastavenie pre zariadenia Huawei (aj v CLI) vyzerá takto:

snmp-agent mib-view included snmpv3name iso
snmp-agent group v3 snmpv3group privacy read-view snmpv3name
snmp-agent usm-user v3 snmpv3user group snmpv3group
snmp-agent usm-user v3 snmpv3user authentication-mode md5 
            md5v3v3v3
snmp-agent usm-user v3 snmpv3user privacy-mode des56
            des56v3v3v3

Po nastavení sieťových zariadení musíte skontrolovať prístup z monitorovacieho servera cez protokol SNMPv3, použijem snmpwalk:

snmpwalk -v 3 -u snmpv3user -l authPriv -A md5v3v3v3 -a md5 -x des -X des56v3v3v3 10.10.10.252

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Vizuálnejším nástrojom na vyžiadanie špecifických objektov OID pomocou súborov MIB je snmpget:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Teraz prejdime k nastaveniu typického dátového prvku pre SNMPv3 v rámci šablóny Zabbix. Pre jednoduchosť a nezávislosť MIB používam digitálne OID:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Používam vlastné makrá v kľúčových poliach, pretože budú rovnaké pre všetky dátové prvky v šablóne. Môžete ich nastaviť v rámci šablóny, ak majú všetky sieťové zariadenia vo vašej sieti rovnaké parametre SNMPv3, alebo v rámci sieťového uzla, ak sa parametre SNMPv3 pre rôzne monitorovacie objekty líšia:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Upozorňujeme, že monitorovací systém má iba používateľské meno a heslá na autentifikáciu a šifrovanie. Skupina užívateľov a rozsah objektov MIB, ku ktorým je povolený prístup, sú špecifikované na monitorovacom objekte.
Teraz prejdeme k vyplneniu šablóny.

Šablóna prieskumu Zabbix

Jednoduchým pravidlom pri vytváraní akýchkoľvek šablón prieskumov je urobiť ich čo najpodrobnejšie:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Veľkú pozornosť venujem inventárom, aby som si uľahčil prácu s veľkou sieťou. Viac o tom trochu neskôr, ale zatiaľ – spúšťače:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Pre uľahčenie vizualizácie spúšťačov sú v ich názvoch zahrnuté systémové makrá {HOST.CONN}, takže nielen názvy zariadení, ale aj adresy IP sa zobrazujú na palubnej doske v časti výstrahy, aj keď je to skôr vec pohodlia ako nevyhnutnosť . Na zistenie nedostupnosti zariadenia používam okrem bežnej echo požiadavky kontrolu nedostupnosti hostiteľa pomocou protokolu SNMP, kedy je objekt prístupný cez ICMP, ale nereaguje na požiadavky SNMP – táto situácia je možná napr. , keď sú IP adresy duplikované na rôznych zariadeniach v dôsledku nesprávne nakonfigurovaných firewallov alebo nesprávneho nastavenia SNMP na monitorovacích objektoch. Ak používate kontrolu dostupnosti hostiteľa len cez ICMP, v čase vyšetrovania incidentov v sieti nemusia byť monitorovacie údaje dostupné, preto je potrebné sledovať ich príjem.

Prejdime k detekcii sieťových rozhraní – pre sieťové zariadenia je to najdôležitejšia monitorovacia funkcia. Keďže na sieťovom zariadení môžu byť stovky rozhraní, je potrebné odfiltrovať tie nepotrebné, aby nedošlo k zahlteniu vizualizácie alebo k zahlteniu databázy.

Používam štandardnú funkciu zisťovania SNMP s viac zistiteľnými parametrami na flexibilnejšie filtrovanie:

discovery[{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7]

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Pomocou tohto zistenia môžete filtrovať sieťové rozhrania podľa ich typov, vlastných popisov a stavov administračných portov. Filtre a regulárne výrazy na filtrovanie v mojom prípade vyzerajú takto:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

V prípade zistenia budú vylúčené nasledujúce rozhrania:

  • manuálne vypnuté (adminstatus<>1), vďaka IFADMINSTATUS;
  • bez textového popisu, vďaka IFALIAS;
  • so symbolom * v textovom popise, vďaka IFALIAS;
  • ktoré sú servisné alebo technické, vďaka IFDESCR (v mojom prípade sú v regulárnych výrazoch IFALIAS a IFDESCR kontrolované jedným aliasom regulárneho výrazu).

Šablóna na zber dát pomocou protokolu SNMPv3 je takmer hotová. Nebudeme sa podrobnejšie venovať prototypom dátových prvkov pre sieťové rozhrania, prejdime k výsledkom.

Výsledky monitorovania

Na začiatok urobte inventúru malej siete:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Ak pripravíte šablóny pre každú sériu sieťových zariadení, môžete dosiahnuť ľahko analyzovateľné rozloženie súhrnných údajov o aktuálnom softvéri, sériové čísla a upozornenia na príchod čističa na server (kvôli nízkej dostupnosti). Výňatok z môjho zoznamu šablón je uvedený nižšie:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

A teraz - hlavný monitorovací panel so spúšťačmi rozdelenými podľa úrovní závažnosti:

Monitorovanie sieťových zariadení cez SNMPv3 v Zabbix

Vďaka integrovanému prístupu k šablónam pre každý model zariadenia v sieti je možné zabezpečiť, že v rámci jedného monitorovacieho systému bude organizovaný nástroj na predpovedanie porúch a nehôd (ak sú k dispozícii vhodné senzory a metriky). Zabbix sa dobre hodí na monitorovanie sieťových, serverových a servisných infraštruktúr a úloha údržby sieťového vybavenia jasne demonštruje jeho schopnosti.

Zoznam použitých zdrojov:1. Hucaby D. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014. s. 325-329.
2. RFC 3410. tools.ietf.org/html/rfc3410
3. RFC 3415. tools.ietf.org/html/rfc3415
4. Sprievodca konfiguráciou SNMP, Cisco IOS XE Release 3SE. Kapitola: SNMP verzia 3. www.cisco.com/c/en/us/td/docs/ios-xml/ios/snmp/configuration/xe-3se/3850/snmp-xe-3se-3850-book/nm-snmp-snmpv3.html

Zdroj: hab.com

Pridať komentár