Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Este artigo está dedicado ás características de monitorización de equipos de rede mediante o protocolo SNMPv3. Falaremos de SNMPv3, compartirei a miña experiencia na creación de modelos completos en Zabbix e amosarei o que se pode conseguir ao organizar alertas distribuídas nunha gran rede. O protocolo SNMP é o principal ao supervisar equipos de rede, e Zabbix é excelente para supervisar un gran número de obxectos e resumir grandes volumes de métricas entrantes.

Algunhas palabras sobre SNMPv3

Comecemos polo propósito do protocolo SNMPv3 e as características do seu uso. As tarefas de SNMP son supervisar os dispositivos de rede e a xestión básica enviándolles comandos sinxelos (por exemplo, activar e desactivar interfaces de rede ou reiniciar o dispositivo).

A principal diferenza entre o protocolo SNMPv3 e as súas versións anteriores son as funcións de seguridade clásicas [1-3], a saber:

  • Autenticación, que determina que a solicitude se recibiu dunha fonte de confianza;
  • cifrado (cifrado), para evitar a divulgación dos datos transmitidos cando son interceptados por terceiros;
  • integridade, é dicir, unha garantía de que o paquete non foi manipulado durante a transmisión.

SNMPv3 implica o uso dun modelo de seguridade no que se establece a estratexia de autenticación para un determinado usuario e o grupo ao que pertence (nas versións anteriores de SNMP, a solicitude do servidor ao obxecto de monitorización comparaba só con “comunidade”, un texto cadea cunha "contrasinal" transmitida en texto claro (texto simple)).

SNMPv3 introduce o concepto de niveis de seguridade: niveis de seguridade aceptables que determinan a configuración do equipo e o comportamento do axente SNMP do obxecto de monitorización. A combinación do modelo de seguridade e o nivel de seguridade determina que mecanismo de seguridade se usa ao procesar un paquete SNMP [4].

A táboa describe combinacións de modelos e niveis de seguridade SNMPv3 (decidín deixar as tres primeiras columnas como no orixinal):

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

En consecuencia, utilizaremos SNMPv3 no modo de autenticación mediante o cifrado.

Configuración de SNMPv3

A monitorización dos equipos de rede require a mesma configuración do protocolo SNMPv3 tanto no servidor de monitorización como no obxecto monitorizado.

Comecemos coa configuración dun dispositivo de rede Cisco, a súa configuración mínima requirida é a seguinte (para a configuración usamos a CLI, simplifiquei os nomes e os contrasinais para evitar confusións):

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

A primeira liña snmp-server group - define o grupo de usuarios SNMPv3 (snmpv3group), o modo de lectura (lectura) e o dereito de acceso do grupo snmpv3group para ver determinadas ramas da árbore MIB do obxecto de monitorización (snmpv3name entón no configuración especifica a que ramas da árbore MIB pode acceder o grupo snmpv3group poderá acceder).

A segunda liña snmp-server user - define o usuario snmpv3user, a súa pertenza ao grupo snmpv3group, así como o uso da autenticación md5 (o contrasinal para md5 é md5v3v3v3) e o cifrado des (o contrasinal para des é des56v3v3v3). Por suposto, é mellor usar aes en lugar de des; póñoo aquí só como exemplo. Ademais, ao definir un usuario, pode engadir unha lista de acceso (ACL) que regule os enderezos IP dos servidores de supervisión que teñen dereito a supervisar este dispositivo; esta tamén é a mellor práctica, pero non vou complicar o noso exemplo.

A vista do servidor snmp de terceira liña define un nome de código que especifica ramas da árbore MIB snmpv3name para que poidan ser consultadas polo grupo de usuarios snmpv3group. ISO, en lugar de definir estrictamente unha única rama, permite que o grupo de usuarios snmpv3group acceda a todos os obxectos da árbore MIB do obxecto de monitorización.

Unha configuración similar para os equipos Huawei (tamén na CLI) ten este aspecto:

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

Despois de configurar os dispositivos de rede, cómpre comprobar o acceso desde o servidor de monitorización a través do protocolo SNMPv3, usarei snmpwalk:

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

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Unha ferramenta máis visual para solicitar obxectos OID específicos usando ficheiros MIB é snmpget:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Agora pasemos a configurar un elemento de datos típico para SNMPv3, dentro do modelo Zabbix. Para simplicidade e independencia do MIB, uso OID dixitais:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Utilizo macros personalizadas nos campos clave porque serán iguais para todos os elementos de datos do modelo. Pode configuralos dentro dun modelo, se todos os dispositivos de rede da súa rede teñen os mesmos parámetros SNMPv3, ou dentro dun nodo de rede, se os parámetros SNMPv3 para diferentes obxectos de monitorización son diferentes:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Teña en conta que o sistema de vixilancia só ten un nome de usuario e contrasinais para a autenticación e o cifrado. O grupo de usuarios e o alcance dos obxectos MIB aos que se permite o acceso especifícanse no obxecto de monitorización.
Agora pasemos a cubrir o modelo.

Modelo de enquisa Zabbix

Unha regra sinxela ao crear modelos de enquisas é facelos o máis detallados posible:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Presto moita atención ao inventario para facilitar o traballo cunha rede grande. Máis sobre isto un pouco máis tarde, pero por agora - desencadenantes:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Para facilitar a visualización dos disparadores, as macros do sistema {HOST.CONN} inclúense nos seus nomes para que non só os nomes dos dispositivos, senón tamén os enderezos IP se mostren no panel de control na sección de alertas, aínda que isto é máis unha cuestión de conveniencia que de necesidade. . Para determinar se un dispositivo non está dispoñible, ademais da solicitude de eco habitual, utilizo unha comprobación da indisponibilidade do host mediante o protocolo SNMP, cando o obxecto é accesible a través de ICMP pero non responde ás solicitudes SNMP; esta situación é posible, por exemplo. , cando os enderezos IP se duplican en diferentes dispositivos, debido a cortalumes configurados incorrectamente ou a configuración SNMP incorrecta en obxectos de monitorización. Se utilizas a comprobación da dispoñibilidade do host só a través de ICMP, no momento de investigar incidentes na rede, os datos de seguimento poden non estar dispoñibles, polo que hai que supervisar a súa recepción.

Pasemos á detección de interfaces de rede: para os equipos de rede esta é a función de vixilancia máis importante. Dado que nun dispositivo de rede pode haber centos de interfaces, é necesario filtrar as innecesarias para non desordenar a visualización nin desordenar a base de datos.

Estou usando a función de descubrimento SNMP estándar, con parámetros máis detectables, para un filtrado máis flexible:

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]

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Con este descubrimento, pode filtrar as interfaces de rede segundo os seus tipos, descricións personalizadas e estados dos portos administrativos. Os filtros e expresións regulares para filtrar no meu caso teñen o seguinte aspecto:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Se se detectan, excluiranse as seguintes interfaces:

  • desactivado manualmente (adminstatus<>1), grazas a IFADMINSTATUS;
  • sen descrición de texto, grazas a IFALIAS;
  • tendo o símbolo * na descrición do texto, grazas a IFALIAS;
  • que son de servizo ou técnicos, grazas a IFDESCR (no meu caso, nas expresións regulares IFALIAS e IFDESCR compróbanse mediante un alias de expresión regular).

O modelo para recoller datos mediante o protocolo SNMPv3 está case listo. Non nos deteremos máis en detalle nos prototipos de elementos de datos para interfaces de rede; pasemos aos resultados.

Resultados do seguimento

Para comezar, fai un inventario dunha pequena rede:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Se preparas modelos para cada serie de dispositivos de rede, podes conseguir un deseño sinxelo de analizar dos datos de resumo sobre o software actual, os números de serie e a notificación dun produtor de limpeza que chega ao servidor (debido ao baixo tempo de actividade). A continuación móstrase un extracto da miña lista de modelos:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

E agora - o panel de seguimento principal, con disparadores distribuídos por niveis de gravidade:

Monitorización de equipos de rede mediante SNMPv3 en Zabbix

Grazas a un enfoque integrado de modelos para cada modelo de dispositivo na rede, é posible garantir que, no marco dun sistema de vixilancia, se organizará unha ferramenta de predición de avarías e accidentes (se hai sensores e métricas adecuadas). Zabbix é moi axeitado para supervisar infraestruturas de rede, servidores e servizos, e a tarefa de manter os equipos de rede demostra claramente as súas capacidades.

Lista de fontes utilizadas: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. Guía de configuración SNMP, Cisco IOS XE Release 3SE. Capítulo: SNMP Versión 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

Fonte: www.habr.com

Engadir un comentario