Protocolo Simple De Administración De Red (SNMP)

Transcription

Diego Morales, Mariano RochaMonitoreo red de la sala de telecomunicacionesEn el siguiente documento se propone la implementación de un sistemade monitorización de la red de la sala De Telecomunicaciones mediante el usodel protocolo SNMP (Simple Network Management Protocol) y el software demonitoreo MRTG (Multi Router Traffic Grapher).Protocolo Simple de Administración de Red (SNMP)El protocolo SNMP fue introducido en 1988 debido a la necesidad decrear un estándar para administrar dispositivos IP. Es un protocolo de capa deaplicación (capa 7, OSI) que facilita el intercambio de información de gestiónentre dispositivos de red.Este protocolo es parte del conjunto de protocolos TCP/IP (TrasmissionControl Protocol/Internet Protocol) y por su amplia utilización en redesempresariales, es considerado el estándar de hecho que se opone al protocoloCMIP (Common Management Information Protocol) basado en el modelo OSI,más utilizado en las grandes redes de Telecomunicaciones. SNMP permite a losadministradores: gestionar el rendimiento, encontrar y solucionar problemas yplanificar el crecimiento futuro de la red.Si bien SNMP se diseño con el propósito de hacer posible supervisar deforma sencilla y resolver problemas en routers y bridges, con su crecimiento,este protocolo puede ser utilizado para supervisar y controlar además switches,hubs y servidores.La información que se puede monitorizar son parámetros simples yestandarizados para todos los routers y/o switches (independiente delfabricante) como por ejemplo la cantidad de tráfico de entrada y salida de unainterfaz, la carga del CPU, el tiempo que lleva encendido el dispositivo, etc. Yparámetros más específicos proporcionados por el fabricante del dispositivo,como puede ser la temperatura.Las características de SNMP :Permite a los administradores gestionar el rendimiento de la red, buscar ymodificar la información de los dispositivos que la componen, encontrar ydiagnosticar problemas en la red, panificar su crecimiento y generar informessobre los nodos de la red.Es capaz de gestionar eficazmente dispositivos de diferentes fabricantes.Ofrece una simple combinación de solicitud-repuesta y un modo denotificación activo, así como tiempo de espera y mecanismos de retrasmisión.Contiene pocos tipos de paquetes con un formato sencillo, facilitando asísu resolución e implementación.

Diego Morales, Mariano RochaNET SNMPNET-SNMP es un conjunto de aplicaciones usado para implementar el protocoloSNMP usando IPv4 e IPv6. Incluye:– Aplicaciones de línea de comandos para: Tomar información de dispositivos capaces de manejar elprotocolo SNMP, ya sea usando peticiones simples(snmpget, snmpgetnext) o múltiples (snmpwalk,snmptable, snmpdelta). Manipular información sobre la configuración dedispositivos capaces de manejar SNMP (snmpset). conseguir un conjunto de informaciones de un dispositivocon SNMP (snmpdf, snmpnetstat, snmpstatus). traducir entre OIDs numéricos y textuales de los objetosde la MIB, y mostrar el contenido y estructura de la MIB(snmptranslate).– Un navegador gráfico de la MIB (tkmib), usando Tk/perl.– Un demonio para recibir notificaciones SNMP (snmptrapd). Lasnotificaciones seleccionadas pueden guardarse en un log (como syslog o unarchivo de texto plano), ser reenviadas a otro sistema de gestión de SNMP, oser pasadas a una aplicación externa.– Un agente configurable para responder a peticiones SNMP parainformación de gestión (snmpd). Incluye soporte para un amplio rango demódulos de información de la MIB, y puede ser extendido usando móduloscargados dinámicamente, scripts externos y comandos.– Una biblioteca para el desarrollo de nuevas aplicaciones SNMP, con APIspara C y Perl.El agente SNMP (snmpd)Snmpd es un agente SNMP que escucha en el puerto 161 de UDP (pordefecto), esperando la llegada de peticiones desde algún software de gestiónSNMP. Cuando recibe una petición, recopila la información y/o lleva a cabo lasoperaciones solicitadas, devolviendo la información correspondiente al emisorde la petición.El agente snmpd se ejecuta como demonio, permaneciendo en segundoplano durante toda su ejecución. Una vez instalado el paquete NET-SNMP, elagente se ejecutará al iniciar nuestro host mediante el sistema de serviciosestándar de GNU/Linux.

Diego Morales, Mariano RochaAgente GestorEn el mundo SNMP existen dos entidades, las estaciones que gestionanlas cuales se denominan NMS (Network Management Station) y los dispositivosque son gestionados, denominados agentes.Un NMS procesa y muestra información sobre el estado de losdispositivos y la red, que obtiene de los Agentes usando el protocolo de red(SNMP). En él se ejecuta una aplicación mediante la cual el administrador escapaz de supervisar y controlar, los dispositivos administrados (solo aquellosque posean el agente SNMP).Los NMS envían POLLs, las cuales son un pedido de información generadopor la misma estación de gestión dirigida al agente, generalmente el pedido serealiza de manera periódica.Los Agentes son módulos de software que se instalan en los dispositivosque se desean gestionar, y que obtienen información del estado del mismodesde la base de información de administración (MIB). Puede ser un programaseparado (un demonio, en el lenguaje Unix), o puede ser incorporado en elsistema operativo (por ejemplo, en el Sistema Operativo de un router). ELagente se encarga de recopilar, mantener y enviar la información de losdispositivos administrados a los NMS, respondiendo a las solicitudes de este otambién es capaz de enviar alertas o “traps” cuando sea necesario.TrapsEs un paquete de información generado por un agente SNMP dirigido a laestación de gestión, es un mecanismo utilizado por los agentes para informarde situaciones como cambios de estado de enlaces, reboots , etc.Una “Trap” es la forma con la que el agente le dice al NMS que algo hapasado, una notificación. Dado que se trata de alertas, son enviadas sinpetición precia, de forma asincrónica, al NMS ; quien por su parte esadicionalmente responsable de realizar o ejecutar una acción basada en lainformación que recibe del agente. Por ejemplo, cuando el router que daacceso a Internet se cae, éste puede enviar un trap al NMS informándole de talhecho. EL NMS por su parte puede tomar alguna acción, quizá activar una

Diego Morales, Mariano Rochaalarma sonora para hacerle saber encargado de la red que algo ha ocurrido.Muchos dispositivos además de mandar las “traps” cuando algo ocurre,también tiene la funcionalidad de mandar paquetes de “all clear”, esto permiteinformar cuando hay una transición de un mal estado a un buen estado, lo quees útil para determinar cuándo se ha resuelto una situación problemática.Versiones del protocolo SNMPEl requisito fundamental para el diseño de SNMP fue la sencillez, lo que sibien facilito su expansión, ha hecho necesarias varias revisiones para adaptarel protocolo a las necesidades actuales, entre las que cabe destacar lasexigencias en cuanto a la seguridad del sistemaLas versiones de SNMP mas utilizadas son SNMP versión 1 (SNMPv1) ySNMP versión 2 (SNMPv2). SNMP en su última versión (SNMPv3) posee cambiossignificativos en relación a sus predecesores, sobre todo en aspectos deseguridad.SNMPv1: Se desarrollo debido a la necesidad de un mecanismo simple yestandarizado para la gestión y monitoreo de los equipos de la red y que nosupusiese cambios en el rendimiento de las redes.SNMPv2 y SNMPv2c: Se desarrollo para mejorar la primera versión ysolventar problemas de seguridad y sobrecarga en las transferencias de datos.Sin embargo solo se optimizo las trasferencias de datos, por ello también sedenomina SNMPv2c, donde la “c” indica que se mantiene el esquema deseguridad basado en comunidades. Actualmente es el más empleado debido,sobre todo, a su facilidad de implantación y mantenimiento.SNMPv3: Surge con el propósito de promover un sistema de seguridad yadministración más robusta y flexible. Utiliza un nuevo modelo de seguridadque asegura la autenticación y encriptación. No supone cambios determinantesen cuanto a la operatividad que ofrece SNMPv2, solo supone cambios encuanto a la seguridad.ComunidadesTanto SNMPv1 como SNMPv2c emplean un esquema de seguridad basadoen comunidades (comunity-string) para establecer la autenticación entre unNMS y los agentes. Las comunidades son esencialmente contraseñas, cadenasde texto que permiten a cualquier aplicación basada en SNMP y que conozcala cadena de texto para acceder a la información de gestión del dispositivocliente o Agente.

Diego Morales, Mariano RochaEl conjunto de dispositivos que pueden acceder a la MIB de un agente sedefine por una lista de control de acceso que relaciona las direcciones IP conuna palabra clave, la comunidad.Las estaciones administradores se pueden configurar con tres tipos depermisos:-De solo lectura (read-only): permite leer los valores de datos, perodeniega su modificación. Por ejemplo, permite leer el numero de paquetes quese han transmitido a través de los puertos de los elementos de la red (ejemploun router), pero no se permite resetear el contador.-De lectura-escritura (read-write): se permite leer los valores de los datosy realizar cambios en los elementos que tengan la propiedad de sermodificables.-De notificación (trap): se permite recibir notificaciones por parte delAgente.Nota: La mayoría de los fabricantes envían su equipo con nombres decomunidad predeterminados, utilizan “public” para la comunidad de read-onlyy “prívate” para la comunidad read-write.La versión SNMPv3 del protocolo define un nuevo modelo de seguridad,concretamente el modelo de seguridad de usuario o USM (User SecurityModel), Este modelo proporciona las siguientes características:-Integridad del mensaje: Garantizar que un paquete no ha sea alterado,al recorrer la red.-Autenticación: Determinar que el mensaje proviene de una fuente valida.-Encriptación: Cifrar el contenido de un paquete a fin de evitar ser leídopor una fuente no autorizada.Nota: SNMPv3 tiene variantes que proveen autenticación basados enalgoritmos de HMAC-SHA o HMAC-MD5.Operaciones SNMPEl motor de SNMP es una serie simple de operaciones (y la informaciónque estas obtienen) que les da a los administradores la capacidad de analizarlos distintos dispositivos administrados e interactuar con estos.Las operaciones de SNMP son:Get-request: Solicita el valor de una variable específica, mediante su OID.Get-next-request: Solicita el valor de una variable sin conocer su nombreexacto. Útil para búsquedas secuenciales dentro de una rama MIB.Get-bulk-request: Solicita grandes bloques de datos, como por ejemplo varias

Diego Morales, Mariano Rochafilas de un subárbol MIB.Get- response: Repuesta del Agente a las operaciones de get-request, getnext-request, o set-request.Set-request Almacena, altera un valor en una variable específica.Inform-request: Comunicación entre gestores SNMP (NMS).Trap: mensaje no solicitado enviado por un Agente a un NMS cuando ocurrealgún evento.MRTG (Multi Router Traffic Grapher)Es una herramienta para monitorizar diversos parámetros de red y generarpaginas HTML que contienen imágenes (con formato PNG) que proporcionanuna representación gráfica en vivo de los datos que se obtienen del protocoloSNMP.Características:-MRTG es multiplataforma por lo que es compatible con la mayoría deplataformas Unix y Windows NT. Es además un software libre bajo la licenciaDNU/GPL.-Esta escrito en Perl.-Utiliza una aplicación SNMP portátil escrito completamente en Perl, por lo queno hay necesidad de instalar ningún paquete externo SNMP.-Las interfaces pueden ser fácilmente identificadas por su dirección IP, ladescripción y la dirección Ethernet además de la interfaz de serie normal.-MRTG mantiene constante el tamaño de los archivos de registro (logfiles),estosarchivos no crecen en exceso gracias a la utilización de un único algoritmo deconsolidación de datos.-Algunas rutinas están escritas en C para mejorar el Rendimiento.-Los gráficos son generados directamente en formato PNG.-El aspecto de las páginas web producidas por MRTG así como la configuraciónde este son altamente configurables.MRTG consiste en un script de Perl que utiliza el protocolo SNMP para controlarcualquier variable que se elija, y un rápido programa en C que registra eltráfico de datos y crea los gráficos para representarlos. Estos gráficos seincrustan entonces en páginas web.

Diego Morales, Mariano RochaConfiguraciónEl comportamiento en tiempo de ejecución MRTG se rige por unos archivode configuración (por defecto se crea uno, mrtg.cfg bajo el directorio de /etc).Estos archivos de configuración pueden ser generados automáticamente con elscript “cfgmaker”. Sin embargo, para configuraciones mas elaboradas esnecesario darle algunos parámetros ha dicho Script.El script de cfgmaker crea archivos de configuración basado en lainformación extraídos de un enrutador u otro dispositivo SNMP disponible. Seejecuta a través de la línea de comandos y tiene la siguiente sintaxis: sudo cfgmaker (OPCIONES) Comunidad@IP DISPOSITIVOSComunidad: es el nombre de la comunidad del dispositivo a configurar,según se haya especificado en el archivo de configuración de SNMP. Pordefecto se pone a “public”.Dispositivo: Hace referencia al nombre DNS o dirección IP del dispositivocon el Agente SNMP.Opciones (variables globales): se pueden especificar las opciones para elfichero a que se crea.Indexmaker es un script que puede crear páginas web que mostrara unaserie de enlaces hacia las páginas de la diferencias interfaces monitorizadas. Elcomando a ejecutar para crear las páginas de índice tiene la siguiente sintaxis: Sudo indexmaker /var/www/mrtg/index.html/ /archivo.cfg/ /archivo1.cfgEl script se encarga de convertir los ficheros de configuración en ficheroshtml visible desde cualquier navegador.

Diego Morales, Mariano pages/index.php/como linux snmphttp://protocolo snmp.blogspot.com.uy/2011/06/versiones de snmp.htmlhttp://protocolo snmp.blogspot.com.uy/2011/06/versiones de /www.gra2.com/article.php/configurar mrtg snmp linuxhttp://es.slideshare.net/mafertag/snmp taciones/gestion traps.pdfhttp://www.net snmp.org/tutorial/tutorial reCastroFlores/net snmp com.uy/2014/03/monitoreo de ancho de banda ex.php/Quick HOWTO : Ch22 : Monitoring Server t/linux/docs/uniqlinuxfeatures/mrtg/snmpd.conf.txt

Permite a los administradores gestionar el rendimiento de la red, buscar y modificar la información de los dispositivos que la componen, encontrar y diagnosticar problemas en la red, panificar su crecimiento y generar informes sobre los nodos de la red. Es capaz de gestionar eficazmente dispositivos de diferentes fabricantes. Ofrece una simple .