SNMP 0.6b

Anuncio
Single Network Management Protocol - SNMP
¿Qué es SNMP?
SNMP (Single Network Management Protocol) es un estándar de administración de red.
Proporciona un método de gestión de nodos de red (Servidores, estaciones de trabajo,
enrutadores, puentes y concentradores) desde un NMS (Network Management Station).
Utiliza una estructura de agentes SNMP que encontramos en todos los elementos que
administra. Los gestionados y los que gestionan. El NMS es el que conecta con estos agentes
instalados en cada uno de los elementos que van a ser administrados.
Toda la información de los equipos está en una base de datos MIB (Management Information
Base). Esta base de datos con estructura de árbol es recogida por el agente SNMP y
comunicada al NMS.
La ampliación más importante de SNMP fue RMON que nos permite monitorizar globalmente
una subred, no sólo sus dispositivos.
Utiliza los puertos 161, 162 y el protocolo UDP. Los agentes escuchan por el puerto 161 y las
estaciones gestoras escuchan los Traps en el puerto 162.
Componentes básicos de SNMP
En cualquier red administrada con el protocolo SNMP encontraremos siempre 3 componentes
básicos:
-
Dispositivos administrativos: Elementos de una red administrada que contienen un
agente SNMP. Tales como routers, switches, servidores de acceso, computadores,
impresoras, hubs, bridges.
-
Agente: Componentes software que se ejecuta en el dispositivo a gestionar, y el que
gestiona. Es un elemento pasivo y no origina mensajes si no que responde a las
peticiones de los NMS’s. Únicamente iniciará la comunicación cuando deba comunicar
una alarma porqué el sistema se ha reiniciado o por fallos de seguridad en el sistema.
-
NMS: Ejecuta aplicaciones que supervisan y controlan a los dispositivos administrados
mediante SNMP. Estos NMS’s conectan con los agentes SNMP para proporcionar
volumen de recursos de procesamiento y memoria requeridos para la administración
de la red. Cuando un NMS envía una solicitud el agente devuelve la información
solicitada desde el MIB.
-
Base de información de gestión (MIB): Los recursos de la red que se pueden gestionar
se presentan mediante objetos aunque básicamente son variables. La MIB es
básicamente una colección de estos objetos.
Dispositivos que se pueden gestionar mediante SNMP
Ordenes básicas del estándar SNMP
Mostramos los tipos de mensaje que existen en la comunicación entre el agente y el NMS.
GetRequest: Mensaje de solicitud SNMP básico. Enviado por un NMS, solicita información de
una sola entrada MIB a un agente.
GetNextRequest: Tipo extendido de mensaje que se utiliza para ver la jerarquía completa de
objetos de administración. Se devuelve el valor del siguiente objeto.
SetRequest: Es un mensaje para actualizar un valor en el MIB, siempre que exista acceso de
lectura.
GetBulkRequest: Solicitud de transferencia de datos tan grande como sea posible. Minimiza el
número de intercambios requeridos para obtener una gran cantidad de información. Solo
utilizado en versiones 2 y 3 de SNMP.
Trap: Mensaje no solicitado por un NMB que envía el agente cuando detecta cierto evento. El
tipo de mensaje que inicia el agente cuando se produce una alarma.
Formato de un mensaje SNMP
Versión
20 bytes
Comunidad
PDU (GetRequest...)
8 bytes
-
Campo Versión: Toma valores en función de la versión de SNMP
-
Campo Comunidad: Se define en el agente y en este mismo se le asigna un perfil a
cada comunidad para determinar si tiene permiso de modificación e incluso lectura
sobre las variables de la MIB.
-
Campo PDU: Existen a modo genérico 2 tipos de formatos en las PDU SNMP, aunque
luego veremos que se dividen en más tipos. El primero de estos 2 tipos es general y
común a casi todas ellas, y el segundo tipo corresponde a la PDU Trap. Cabe recordar
que las consultas las realiza el NMS y el Trap es la única que realiza el agente por
iniciativa propia por tanto es comprensible que exista un tipo de PDU para cada una de
ellas.
Tipos de PDU: Especifican el tipo de mensaje y los valores posibles son:
Tipo PDU
0
1
Nombre
GetRequest
GetNextRequest
2
3
4
SetRequest
Respone
Trap
Identificación de la petición: Se utiliza para relacionar peticiones y respuestas. SNMP puede
hacer frente a PDU’s duplicadas por un servicio de transporte inseguro como UDP gracias a
que cada una de estas peticiones va identificada por el emisor.
Estado de error: Se emplea para indicar que ha ocurrido una anomalía mientras se procesaba
una consulta existiendo valores diferentes para cada tipo de error. Tiene diferentes valores
tales como:
Tipo de error
0
1
2
3
4
5
Significado
No hay error
Demasiado grande
No existe esa variable
Valor incorrecto
El valor es de solo lectura
Error genérico
Índice de error: Se utiliza cuando el campo estado de error es diferente de 0 y tiene como
objetivo proporcionar información adicional.
Lista de variables: Es una lista de nombres de variables con sus valores correspondientes.
Existe tanto en las preguntas como en las respuestas.
Estructura de la base de información de gestión - MIB
MIB es una base de datos en forma de árbol, obtenido una jerarquía para cada uno de los
objetos de la base de datos, cada uno de estos tiene un numero identificador que lo identifica
dentro de este árbol.
Como podemos observar en la captura hay dos directorios importantes ya que de estos cuelga
toda la información importante para la monitorización del protocolo.
“SNMPv2” aquí se encuentra la información genérica del elemento, fabricante, modelo , etc…,
podemos observar que su ubicación es .1.3.6.1.6. En cambio “private” hay información extra
que el fabricante proporciona, dependiendo el producto puede ser más completa o menos,
esta es totalmente para uso corporativo donde el fabricante nos ofrece el software de gestión
para pode acceder a dicho directorio.
Aplicaciones del estándar SNMP a diferentes escenarios
SNMP puede utilizarse de varias maneras:
-
Para configurar dispositivos remotos: desde el NMS configuramos los equipos.
-
Para supervisar el rendimiento de la red: se puede hacer un seguimiento de la
velocidad de la red.
-
Para detectar fallos de red: Puede llevar una alarma al NMS cuando:
-
o
Se apague un dispositivo.
o
Se detecte un error de enlace con un enrutador.
Para auditar el uso de la red: Se puede auditar el uso de los equipos por sus usuarios.
Simulación del protocolo SNMP
En este apartado haremos una pequeña simulación con el protocolo SNMP para eso
necesitamos un software de gestión y un elemento que monitorizar.
La aplicación que utilizaremos es “iReasoning MIB Browser Personal Edition”, está tiene una
versión de prueba de 30 días. Este punto hay que remarcarlo nosotros realizaremos una
prueba, por lo tanto el software de gestión nos era un poco igual cual fuera, cualquiera
aplicación gratuita hubiera echo la función pero esto en un entorno corporativo es muy
diferente. Aquí interviene otro factor, la marca del hardware instalado, estos productos
incorporan en una parte de su MIB datos específicos del fabricante, estos nos dotaran de datos
que aran mucho más eficiente nuestra monitorización, por eso siempre se recomienda que todo
el hardware instalado sea del mismo proveedor, esta MIB especifica solo puedes acceder a ella
con la aplicación de gestión propietaria de dicho fabricante.
El elemento ha monitorizar será un router CISCO modelo c2691. El router la virtulizaremos con
la aplicación GNS3, este punto podríamos haber utilizado el cliente que incorpora Windows
pero hemos preferido simular un elemento externo de donde estaba ubicado el cliente SNMP.
Lo primero que haremos es instalar la aplicación y crear la topología con GNS3. La topología es
muy simple, solo necesitaremos un router conectador a la NIC de nuestro ordenador.
La configuración del router es muy simple, solo necesitamos configurar la interface Ethernet
con una IP del rango de nuestra red, en este caso utilizaremos una 172.16.0.10/16 y activar el
cliente SNMP. Para eso hemos utilizado la siguientes comandas:
Router> enable
Router# configure terminal
Router(config)# interface FastEthenert 0/0
Router(config)# ip address 172.16.0.10 255.255.0.0
Router(config)# no shutdown
Router(config)# exit
Router(config)# snmp-server community public RO
Router(config)# snmp-server community private RW
Router(config)# exit
Router# show running-config | include snmp
;Verdificar ativación SNMP
Una vez configurado el router con el servició SNMP empezaremos ha enviar algunas comandas
al router desde la aplicación pero previamente haremos un vistazo general al software donde
veremos todos los parámetros comentados anteriormente.
Captura de la aplicación iReasoning MIB Browser
Como podemos observar en la captura hay varios campos señalados:
-
Address: La dirección IP del agente en este caso el router .
-
Operation: Una lista de operaciones básicas, para pode gestionar el contenido de la
MIB.
-
SNMP MIBs: Aquí podemos visualizar de una forma la distribución de los directorios de
la MIB del router.
-
Result Table: Este apartado aparecerá el contenido de la petición echa, en este caso el
objeto es sysDescr del directorio system.
Vistos los elementos básicos de la aplicación procederemos ha hacer una peticion.
System  sysDescr ubicada en .1.3.6.1.2.1.1, obtenemos la siguiente información.
Value: Cisco Internetwork Operating System Software
IOS (tm) 2600 Software (C2691-JK9O3S-M), Version 12.2(15)T17, RELEASE
SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2005 by cisco Systems, Inc.
Compiled Fri 12-Aug-0
Type: OctetString
Observamos que estamos utilizando una IOS genérica de la serie 2600 de CISCO versión 12.2,
para el router C2691, compilada el viernes 12 de agosto del 2000. La información
subministrada es del tipo OctetString (texto).
Vista la petición vamos ha ver a nivel de trama la información para captura la trama
utilizaremos la aplicación Wireshark.
Como se observa en la captura la petición “get-request” se ha realizado desde ordenador
172.16.0.4 hacia el agente 172.16.0.10 el cual a respondido con “get-response”.
Ahora vamos ha entrar con más detalle.
La petición al objeto 1.3.6.1.2.1.1.1.0 esta petición se realizada por el puerto UDP 54374 hacia
el 161, estamos utilizando la versión 1 de SNMP.
En la respuesta podemos observar que no habido ningún error, una apartado significativo que
no hemos comentado en la parte anterior esta petición va dirigida a la comunidad publica.
Conclusiones
Bibliografía:
http://webcache.googleusercontent.com/search?q=cache:DzufnCedgKIJ:personal.telefonica.te
rra.es/web/lmp/SMNP/SNMP.doc+NMS+en+SNMP&cd=1&hl=es&ct=clnk&gl=es&client=firefox
-a
http://es.wikipedia.org/wiki/Simple_Network_Management_Protocol#Componentes_b.C3.A1
sicos
http://www.ireasoning.com/download.shtml
http://www.gns3.net/
http://www.wireshark.org
http://www.luteus.biz/Download/LoriotPro_Doc/V4/LoriotProV4Doc/C3Introduction_to_Network_supervision/C3-E5_MIB.htm
Descargar