Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Αυτό το άρθρο είναι αφιερωμένο στις δυνατότητες παρακολούθησης εξοπλισμού δικτύου χρησιμοποιώντας το πρωτόκολλο SNMPv3. Θα μιλήσουμε για το SNMPv3, θα μοιραστώ την εμπειρία μου στη δημιουργία πλήρους προτύπων στο Zabbix και θα δείξω τι μπορεί να επιτευχθεί κατά την οργάνωση κατανεμημένων ειδοποιήσεων σε ένα μεγάλο δίκτυο. Το πρωτόκολλο SNMP είναι το κύριο κατά την παρακολούθηση εξοπλισμού δικτύου και το Zabbix είναι εξαιρετικό για την παρακολούθηση μεγάλου αριθμού αντικειμένων και τη σύνοψη μεγάλων όγκων εισερχόμενων μετρήσεων.

Λίγα λόγια για το SNMPv3

Ας ξεκινήσουμε με τον σκοπό του πρωτοκόλλου SNMPv3 και τις δυνατότητες χρήσης του. Οι εργασίες του SNMP είναι η παρακολούθηση συσκευών δικτύου και η βασική διαχείριση στέλνοντας απλές εντολές σε αυτές (για παράδειγμα, ενεργοποίηση και απενεργοποίηση διεπαφών δικτύου ή επανεκκίνηση της συσκευής).

Η κύρια διαφορά μεταξύ του πρωτοκόλλου SNMPv3 και των προηγούμενων εκδόσεων του είναι οι κλασικές λειτουργίες ασφαλείας [1-3], και συγκεκριμένα:

  • Έλεγχος ταυτότητας, ο οποίος καθορίζει ότι το αίτημα ελήφθη από αξιόπιστη πηγή.
  • κρυπτογράφηση (Encryption), για την αποτροπή αποκάλυψης των μεταδιδόμενων δεδομένων όταν υποκλαπούν από τρίτους·
  • ακεραιότητα, δηλαδή εγγύηση ότι το πακέτο δεν έχει παραβιαστεί κατά τη μετάδοση.

Το SNMPv3 υπονοεί τη χρήση ενός μοντέλου ασφαλείας στο οποίο η στρατηγική ελέγχου ταυτότητας ορίζεται για έναν δεδομένο χρήστη και την ομάδα στην οποία ανήκει (σε ​​προηγούμενες εκδόσεις του SNMP, το αίτημα από τον διακομιστή προς το αντικείμενο παρακολούθησης συγκρίνεται μόνο με την «κοινότητα», ένα κείμενο συμβολοσειρά με "κωδικό πρόσβασης" που μεταδίδεται σε καθαρό κείμενο (απλό κείμενο)).

Το SNMPv3 εισάγει την έννοια των επιπέδων ασφαλείας - αποδεκτά επίπεδα ασφαλείας που καθορίζουν τη διαμόρφωση του εξοπλισμού και τη συμπεριφορά του παράγοντα SNMP του αντικειμένου παρακολούθησης. Ο συνδυασμός μοντέλου ασφαλείας και επιπέδου ασφαλείας καθορίζει ποιος μηχανισμός ασφαλείας χρησιμοποιείται κατά την επεξεργασία ενός πακέτου SNMP [4].

Ο πίνακας περιγράφει συνδυασμούς μοντέλων και επιπέδων ασφαλείας SNMPv3 (αποφάσισα να αφήσω τις τρεις πρώτες στήλες όπως στο πρωτότυπο):

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Αντίστοιχα, θα χρησιμοποιήσουμε το SNMPv3 σε λειτουργία ελέγχου ταυτότητας χρησιμοποιώντας κρυπτογράφηση.

Διαμόρφωση SNMPv3

Ο εξοπλισμός δικτύου παρακολούθησης απαιτεί την ίδια ρύθμιση παραμέτρων του πρωτοκόλλου SNMPv3 τόσο στον διακομιστή παρακολούθησης όσο και στο αντικείμενο παρακολούθησης.

Ας ξεκινήσουμε με τη ρύθμιση μιας συσκευής δικτύου Cisco, η ελάχιστη απαιτούμενη διαμόρφωσή της είναι η εξής (για τη διαμόρφωση χρησιμοποιούμε το CLI, απλοποίησα τα ονόματα και τους κωδικούς πρόσβασης για αποφυγή σύγχυσης):

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

Η ομάδα snmp-server πρώτης γραμμής – ορίζει την ομάδα χρηστών SNMPv3 (snmpv3group), τη λειτουργία ανάγνωσης (ανάγνωση) και το δικαίωμα πρόσβασης της ομάδας snmpv3group για προβολή ορισμένων κλάδων του δέντρου MIB του αντικειμένου παρακολούθησης (snmpv3name και στη συνέχεια στο configuration καθορίζει σε ποιους κλάδους του δέντρου MIB μπορεί να έχει πρόσβαση η ομάδα η ομάδα snmpv3 θα μπορεί να αποκτήσει πρόσβαση).

Η δεύτερη γραμμή χρήστη snmp-server – ορίζει τον χρήστη snmpv3user, τη συμμετοχή του στην ομάδα snmpv3group, καθώς και τη χρήση ελέγχου ταυτότητας md5 (ο κωδικός πρόσβασης για md5 είναι md5v3v3v3) και η κρυπτογράφηση des (ο κωδικός πρόσβασης για το des είναι des56v3v3v3). Φυσικά, είναι καλύτερο να χρησιμοποιήσετε το aes αντί για το des· το δίνω εδώ απλώς ως παράδειγμα. Επίσης, κατά τον ορισμό ενός χρήστη, μπορείτε να προσθέσετε μια λίστα πρόσβασης (ACL) που ρυθμίζει τις διευθύνσεις IP των διακομιστών παρακολούθησης που έχουν το δικαίωμα να παρακολουθούν αυτήν τη συσκευή - αυτή είναι επίσης η βέλτιστη πρακτική, αλλά δεν θα περιπλέξω το παράδειγμά μας.

Η προβολή snmp-server τρίτης γραμμής ορίζει ένα κωδικό όνομα που καθορίζει κλάδους του δέντρου snmpv3name MIB, έτσι ώστε να μπορούν να ερωτηθούν από την ομάδα χρηστών snmpv3group. Το ISO, αντί να ορίζει αυστηρά έναν κλάδο, επιτρέπει στην ομάδα χρηστών snmpv3group να έχει πρόσβαση σε όλα τα αντικείμενα στο δέντρο MIB του αντικειμένου παρακολούθησης.

Μια παρόμοια ρύθμιση για τον εξοπλισμό Huawei (επίσης στο CLI) μοιάζει με αυτό:

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

Μετά τη ρύθμιση των συσκευών δικτύου, πρέπει να ελέγξετε για πρόσβαση από τον διακομιστή παρακολούθησης μέσω του πρωτοκόλλου SNMPv3, θα χρησιμοποιήσω το snmpwalk:

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

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Ένα πιο οπτικό εργαλείο για να ζητήσετε συγκεκριμένα αντικείμενα OID χρησιμοποιώντας αρχεία MIB είναι το snmpget:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Τώρα ας προχωρήσουμε στη ρύθμιση ενός τυπικού στοιχείου δεδομένων για το SNMPv3, εντός του προτύπου Zabbix. Για απλότητα και ανεξαρτησία MIB, χρησιμοποιώ ψηφιακά OID:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Χρησιμοποιώ προσαρμοσμένες μακροεντολές σε βασικά πεδία, επειδή θα είναι ίδιες για όλα τα στοιχεία δεδομένων στο πρότυπο. Μπορείτε να τις ορίσετε σε ένα πρότυπο, εάν όλες οι συσκευές δικτύου στο δίκτυό σας έχουν τις ίδιες παραμέτρους SNMPv3 ή εντός ενός κόμβου δικτύου, εάν οι παράμετροι SNMPv3 για διαφορετικά αντικείμενα παρακολούθησης είναι διαφορετικές:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Λάβετε υπόψη ότι το σύστημα παρακολούθησης διαθέτει μόνο όνομα χρήστη και κωδικούς πρόσβασης για έλεγχο ταυτότητας και κρυπτογράφηση. Η ομάδα χρηστών και το εύρος των αντικειμένων MIB στα οποία επιτρέπεται η πρόσβαση καθορίζονται στο αντικείμενο παρακολούθησης.
Τώρα ας προχωρήσουμε στη συμπλήρωση του προτύπου.

Πρότυπο δημοσκόπησης Zabbix

Ένας απλός κανόνας κατά τη δημιουργία οποιωνδήποτε προτύπων έρευνας είναι να τα κάνετε όσο το δυνατόν λεπτομερέστερα:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Δίνω μεγάλη προσοχή στο απόθεμα για να διευκολύνω την εργασία με ένα μεγάλο δίκτυο. Περισσότερα για αυτό λίγο αργότερα, αλλά προς το παρόν – ενεργοποιητές:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Για ευκολία οπτικοποίησης των κανόνων, οι μακροεντολές συστήματος {HOST.CONN} περιλαμβάνονται στα ονόματά τους, έτσι ώστε όχι μόνο τα ονόματα συσκευών, αλλά και οι διευθύνσεις IP να εμφανίζονται στον πίνακα εργαλείων στην ενότητα ειδοποιήσεων, αν και αυτό είναι περισσότερο θέμα ευκολίας παρά ανάγκης . Για να προσδιορίσω εάν μια συσκευή δεν είναι διαθέσιμη, εκτός από το συνηθισμένο αίτημα ηχούς, χρησιμοποιώ έναν έλεγχο για μη διαθεσιμότητα κεντρικού υπολογιστή χρησιμοποιώντας το πρωτόκολλο SNMP, όταν το αντικείμενο είναι προσβάσιμο μέσω ICMP αλλά δεν ανταποκρίνεται σε αιτήματα SNMP - αυτή η κατάσταση είναι δυνατή, για παράδειγμα , όταν οι διευθύνσεις IP αντιγράφονται σε διαφορετικές συσκευές, λόγω εσφαλμένων ρυθμισμένων τείχη προστασίας ή λανθασμένων ρυθμίσεων SNMP σε αντικείμενα παρακολούθησης. Εάν χρησιμοποιείτε τον έλεγχο διαθεσιμότητας κεντρικού υπολογιστή μόνο μέσω ICMP, τη στιγμή της διερεύνησης συμβάντων στο δίκτυο, τα δεδομένα παρακολούθησης ενδέχεται να μην είναι διαθέσιμα, επομένως η παραλαβή τους πρέπει να παρακολουθείται.

Ας προχωρήσουμε στην ανίχνευση διεπαφών δικτύου - για εξοπλισμό δικτύου αυτή είναι η πιο σημαντική λειτουργία παρακολούθησης. Δεδομένου ότι μπορεί να υπάρχουν εκατοντάδες διεπαφές σε μια συσκευή δικτύου, είναι απαραίτητο να φιλτράρετε τις περιττές, ώστε να μην ακατασταθεί η απεικόνιση ή ακαταστασία της βάσης δεδομένων.

Χρησιμοποιώ την τυπική συνάρτηση εντοπισμού SNMP, με περισσότερες ανιχνεύσιμες παραμέτρους, για πιο ευέλικτο φιλτράρισμα:

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]

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Με αυτήν την ανακάλυψη, μπορείτε να φιλτράρετε τις διεπαφές δικτύου με βάση τους τύπους, τις προσαρμοσμένες περιγραφές και τις καταστάσεις θύρας διαχείρισης. Τα φίλτρα και οι κανονικές εκφράσεις για φιλτράρισμα στην περίπτωσή μου μοιάζουν με αυτό:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Εάν εντοπιστούν, οι ακόλουθες διεπαφές θα εξαιρεθούν:

  • απενεργοποιήθηκε χειροκίνητα (adminstatus<>1), χάρη στο IFADMINSTATUS.
  • χωρίς περιγραφή κειμένου, χάρη στον IFALIAS.
  • έχοντας το σύμβολο * στην περιγραφή του κειμένου, χάρη στον IFALIAS.
  • που είναι σέρβις ή τεχνικά, χάρη στο IFDESCR (στην περίπτωσή μου, στις κανονικές εκφράσεις τα IFALIAS και IFDESCR ελέγχονται από ένα ψευδώνυμο τυπικής έκφρασης).

Το πρότυπο για τη συλλογή δεδομένων με χρήση του πρωτοκόλλου SNMPv3 είναι σχεδόν έτοιμο. Δεν θα σταθούμε λεπτομερέστερα στα πρωτότυπα των στοιχείων δεδομένων για τις διεπαφές δικτύου· ας προχωρήσουμε στα αποτελέσματα.

Αποτελέσματα παρακολούθησης

Αρχικά, κάντε απογραφή ενός μικρού δικτύου:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Εάν προετοιμάζετε πρότυπα για κάθε σειρά συσκευών δικτύου, μπορείτε να επιτύχετε μια εύκολη στην ανάλυση διάταξη των συνοπτικών δεδομένων σχετικά με το τρέχον λογισμικό, τους σειριακούς αριθμούς και την ειδοποίηση ενός καθαριστή που έρχεται στον διακομιστή (λόγω χαμηλού χρόνου λειτουργίας). Ένα απόσπασμα της λίστας προτύπων μου είναι παρακάτω:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Και τώρα - ο κύριος πίνακας παρακολούθησης, με τα ερεθίσματα που κατανέμονται ανά επίπεδα σοβαρότητας:

Παρακολούθηση εξοπλισμού δικτύου μέσω SNMPv3 στο Zabbix

Χάρη σε μια ολοκληρωμένη προσέγγιση των προτύπων για κάθε μοντέλο συσκευής στο δίκτυο, είναι δυνατό να διασφαλιστεί ότι, στο πλαίσιο ενός συστήματος παρακολούθησης, θα οργανωθεί ένα εργαλείο για την πρόβλεψη σφαλμάτων και ατυχημάτων (εάν υπάρχουν διαθέσιμοι κατάλληλοι αισθητήρες και μετρήσεις). Το Zabbix είναι κατάλληλο για την παρακολούθηση υποδομών δικτύου, διακομιστών και υπηρεσιών, και η εργασία συντήρησης του εξοπλισμού δικτύου καταδεικνύει ξεκάθαρα τις δυνατότητές του.

Κατάλογος πηγών που χρησιμοποιήθηκαν:1. Hucaby D. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014. σελ. 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. Κεφάλαιο: SNMP Έκδοση 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

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο