🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Acest articol se concentrează asupra caracteristicilor monitorizării echipamentelor de rețea prin protocolul SNMPv3. Vom discuta despre SNMPv3, voi împărtăși experiențele mele în crearea de șabloane complete în Zabbix și voi arăta ce se poate realiza prin organizarea unui sistem de alertă distribuit într-o rețea mare. Protocolul SNMP este esențial pentru monitorizarea echipamentelor de rețea, iar Zabbix se potrivește excelent pentru monitorizarea unui număr mare de obiecte și pentru agregarea unor volume semnificative de metrici primite.

Câteva cuvinte despre SNMPv3

Să începem cu scopul protocolului SNMPv3 și cu trăsăturile sale de utilizare. Sarcinile SNMP sunt monitorizarea dispozitivelor de rețea și gestionarea de bază prin trimiterea de comenzi simple (de exemplu, activarea și dezactivarea interfețelor de rețea sau repornirea dispozitivului).

Principala diferență între protocolul SNMPv3 și versiunile sale anterioare sunt funcțiile clasice de securitate [1-3], și anume:

  • autentificare (Authentication), care determină că cererea a fost primită de la o sursă de încredere;
  • criptare (Encryption), pentru a preveni divulgarea datelor transmise în timpul interceptării de către terțe părți;
  • integritate (Integrity), adică garanția că pachetul nu a fost falsificat în timpul transmiterii.

SNMPv3 implică utilizarea unui model de securitate, în care strategia de autentificare este stabilită pentru un utilizator și grupul său asociat (în versiunile anterioare, în cererea de la server la obiectul de monitorizare se compara doar „community”, un șir de caractere cu „parola” trimis în plain text).

SNMPv3 introduce conceptul de niveluri de securitate — niveluri acceptabile de securitate, care definesc configurarea echipamentului și comportamentul agentului SNMP al obiectului de monitorizare. Combinația modelului de securitate și a nivelului de securitate determină ce mecanism de securitate este utilizat în procesarea pachetului SNMP [4].

În tabel sunt descrise combinațiile dintre modelele și nivelurile de securitate SNMPv3 (primele trei coloane le-am lăsat așa cum sunt în original):

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Prin urmare, vom folosi SNMPv3 în modul de autentificare cu utilizarea criptării.

Configurarea SNMPv3

Monitorizarea echipamentelor de rețea presupune o configurare uniformă a protocolului SNMPv3 atât pe serverul de monitorizare, cât și pe obiectul monitorizat.

Să începem cu configurarea dispozitivului de rețea Cisco, configurația minim necesară arată astfel (pentru configurare folosim CLI, am simplificat numele și parolele pentru a evita confuziile):

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

Prima linie snmp-server group – definește grupul utilizatorilor SNMPv3 (snmpv3group), modul de citire (read) și dreptul de acces al grupului snmpv3group pentru a vizualiza anumite ramuri ale arborelui MIB al obiectului de monitorizare (snmpv3name definind mai departe în configurație la ce ramuri ale arborelui MIB grupul snmpv3group va avea acces).

A doua linie snmp-server user – definește utilizatorul snmpv3user, apartenența sa la grupul snmpv3group, precum și aplicarea autentificării md5 (parola pentru md5 — md5v3v3v3) și criptării des (parola pentru des — des56v3v3v3). Bineînțeles, este preferabil să folosești aes în loc de des, aici îl aduc doar ca exemplu. De asemenea, la definirea utilizatorului se poate adăuga o listă de acces (ACL) care reglementează adresele IP ale serverelor de monitorizare autorizate să monitorizeze acest dispozitiv – aceasta este, de asemenea, o best practice, dar nu voi complica exemplul nostru.

A treia linie snmp-server view definește numele de cod, care stabilește ramurile arborelui MIB snmpv3name, astfel încât să poată fi solicitate de grupul de utilizatori snmpv3group. ISO, în loc de a defini strict o singură ramură, permite grupului de utilizatori snmpv3group să acceseze toate obiectele arborelui MIB al obiectului de monitorizare.

O configurație similară a echipamentului Huawei (tot în CLI) arată astfel:

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

După configurarea dispozitivelor de rețea, este necesar să verifici accesul de pe serverul de monitorizare prin protocolul SNMPv3, voi folosi snmpwalk:

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

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Un instrument mai vizual pentru solicitarea obiectelor OID specifice, folosind fișierele MIB – snmpget:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Acum să trecem la configurarea unui element tipic de date pentru SNMPv3, în cadrul șablonului Zabbix. Pentru simplitate și independență față de MIB, voi utiliza OID-uri numerice:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Folosesc macrocomenzi personalizate în câmpurile cheie, deoarece acestea vor fi identice pentru toate elementele de date din șablon. Acestea pot fi setate în cadrul șablonului, dacă în rețeaua dumneavoastră toatele dispozitivele rețelei au parametrii SNMPv3 identici, sau în cadrul nodului rețelei, dacă parametrii SNMPv3 pentru diferite obiecte de monitorizare diferă:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Rețineți că sistemul de monitorizare dispune doar de numele de utilizator și parolele pentru autentificare și criptare. Grupa de utilizatori și domeniul obiectelor MIB la care este permis accesul sunt definite pe obiectul de monitorizare.
Acum să trecem la completarea șablonului.

Șablon de sondaj în Zabbix

O regulă simplă atunci când creați orice șabloane de sondaj este să le faceți cât mai detaliate:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Acord o mare atenție inventarizării, pentru a facilita lucrul cu o rețea mare. Despre aceasta puțin mai târziu, dar între timp - declanșatoarele:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Pentru o vizualizare convenabilă a declanșatoarelor, în denumirile lor sunt incluse macrocomenzi sistemice {HOST.CONN}, astfel încât pe tabloul de bord în secțiunea de alerte să fie afișate nu doar numele dispozitivelor, ci și adresele IP, deși aceasta este mai mult o chestiune de confort decât o necesitate. Pentru a determina nedisponibilitatea unui dispozitiv, pe lângă solicitările echo obișnuite, folosesc verificarea disponibilității nodului prin protocolul SNMP, atunci când obiectul este disponibil prin ICMP, dar nu răspunde la cererile SNMP - o astfel de situație poate fi, de exemplu, în cazul duplicării adreselor IP pe diferite dispozitive, din cauza unor setări incorecte ale firewalls-ului sau a configurațiilor greșite SNMP pe obiectele de monitorizare. Dacă folosesc verificarea disponibilității nodurilor doar prin ICMP, în momentul investigării incidentelor din rețea, datele de monitorizare pot să nu fie disponibile, așa că trebuie să controlez sosirea acestora.

Să trecem la descoperirea interfețelor de rețea - aceasta este cea mai importantă funcție de monitorizare pentru echipamentele de rețea. Deoarece pe un dispozitiv de rețea pot exista sute de interfețe, este necesar să filtrăm cele inutile pentru a evita aglomerarea vizualizării și umplerea bazei de date.

Folosesc funcția standard de descoperire pentru SNMP, cu un număr mare de parametri descoperiți, pentru o filtrare mai flexibilă:

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]

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

În cazul unei astfel de descoperiri, se pot filtra interfețele de rețea după tipurile lor, descrierile utilizatorului „description” și starea administrativă a porturilor. Filtrele și expresiile regulate pentru filtrare în cazul meu arată astfel:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

La descoperire, vor fi excluse următoarele interfețe:

  • dezactivate manual (adminstatus<>1), datorită IFADMINSTATUS;
  • fără descriere text, datorită IFALIAS;
  • având în descrierea text simbolul *, datorită IFALIAS;
  • fiind servicii sau tehnice, datorită IFDESCR (în cazul meu, în expresiile regulate IFALIAS și IFDESCR sunt verificate cu aceeași expresie regulată alias).

Șablonul pentru colectarea datelor prin protocolul SNMPv3 este aproape gata. Nu ne vom opri din discuție asupra prototipurilor elementelor de date pentru interfețele de rețea, ci vom trece la rezultate.

Rezultatele monitorizării

Pentru început – inventarierea unei rețele mici:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Dacă pregătim șabloane pentru fiecare serie de dispozitive de rețea – putem obține o structură convenabilă pentru analiza datelor sumare privind software-ul actual, numerele de serie și notificările pentru sosirea menajerei în camera serverului (din cauza Uptime-ului scăzut). Extra gemul listei mele de șabloane este mai jos:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Și acum – panoul principal de monitorizare, cu declanșatoare distribuite pe niveluri de importanță:

🥇Nu e doar la tine. Internetul din întreaga lume se încetinește din cauza creșterii traficului | ProHoster

Datorită abordării complexe a șabloanelor pentru fiecare model de dispozitive din rețea, se poate realiza că în cadrul unui singur sistem de monitorizare va fi organizat un instrument pentru prognozarea defecțiunilor și accidentelor (cu condiția să existe senzorii și metricele necesare). Zabbix este bine pregătit pentru monitorizarea infrastructurilor de rețea, server și serviciu, iar sarcina de întreținere a echipamentului de rețea demonstrează în mod clar capacitățile sale.

Lista surselor utilizate:1. Hucaby D. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014. pp. 325-329.
2. RFC 3410. tools.ietf.org/html/rfc3410
3. RFC 3415. tools.ietf.org/html/rfc3415
4. SNMP Configuration Guide, Cisco IOS XE Release 3SE. Chapter: SNMP Version 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

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster