Monitoreo SNMP
![]() |
En el tema de seguridad es de suma importancia el monitoreo, ya que para poder controlar algo es necesario medirlo. Los ataques a la seguridad informática en una organización pueden ser bien por virus, por intrusiones o por abuso de la misma gente de la organización (fuga de información, por ejemplo). Si tenemos un monitoreo en el tráfico de nuestros usuarios podremos ver, por desviación de la tendencia, cuando algo “raro” está pasando. Sin embargo, en ocasiones pueden presentarse situaciones que afecten la disponibilidad del servicio, ya sea por un ataque DOS, DDOS o simplemente por un mal dimensionamiento de la infraestructura, el cual ocasione que el equipo se sature ocasionando lentitud en el servicio (en el mejor de los casos) o incluso pérdida del mismo. Es en este punto donde nos centraremos, realizando un monitoreo de dos puntos clave en cualquier equipo, como lo son el consumo de CPU y el consumo de memoria en los equipos base de toda nuestra red; es decir, los switches y routers. Para ello utilizaremos una herramienta libre llamada MRTG (Multi Router Traffic Grapher). “MRTG es una herramienta escrita en C y Perl, por Tobias Oetiker y Dave Rand, que se utiliza para supervisar la carga de tráfico de interfaces de red. MRTG genera páginas HTML con gráficos que proveen una representación visual de este tráfico. Además, utiliza SNMP (Simple Network Management Protocol) para recolectar los datos de tráfico de un determinado dispositivo (ruteadores o servidores); por tanto, es requisito contar con al menos un sistema con SNMP funcionando y correctamente configurado. SNMP manda peticiones con dos objetos identificadores (OIDs) al equipo. Una base de control de información (MIBs) controla las especificaciones de los OIDs. Después de recoger la información la manda sin procesar mediante el protocolo SNMP. MTRG graba la información en archivos de bitácora por cada equipo. El software crea un documento HTML de dichas bitácoras, estos tienen una lista de gráficas detallando el tráfico del dispositivo. El software viene configurado para que se recopilen datos cada cinco minutos, pero el tiempo puede ser modificado.”
•http://es.wikipedia.org/wiki/MRTG Para el presente documento daremos por hecho que el lector ya ha realizado configuraciones iniciales (realizando monitoreo de interfaces) y nos centraremos en la configuración para el monitoreo de CPU y memoria. Cabe señalar que el ejemplo descrito a continuación se basa en equipos Cisco Systems (ruteadores o switches) y que puede ser aplicable a otros, siempre y cuando se disponga de las MIBs correspondientes. Requisito: Configurar en el equipo a monitorear una comunidad de sólo lectura para que MRTG pueda hacer las consultas necesarias.
OID’s para uso de CPU 1.3.6.1.4.1.9.2.1.57.0 1.3.6.1.4.1.9.2.1.58.0 OID’s para consumo de memoria 1.3.6.1.4.1.9.9.48.1.1.1.5.1 1.3.6.1.4.1.9.9.48.1.1.1.6.1
Tomado de: SNMP Object Navigator (http://tools.cisco.com/Support/SNMP/do/BrowseOID.do)
Object avgBusy1 OID 1.3.6.1.4.1.9.2.1.57 Type INTEGER Permission read-only Status mandatory MIB OLD-CISCO-CPU-MIB ; – View Su pporting Images Description “1 minute exponentially-decayed moving average of the CPU busy percentage.”
Object avgBusy5 OID 1.3.6.1.4.1.9.2.1.58 Type INTEGER Permission read-only Status mandatory MIB OLD-CISCO-CPU-MIB ; – View Supporting Images Description “5 minute exponentially-decayed moving average of the CPU busy percentage.”
Object ciscoMemoryPoolUsed OID 1.3.6.1.4.1.9.9.48.1.1.1.5 Type Gauge32 Permission read-only Status current MIB CISCO-MEMORY-POOL-MIB; View Supporting Images Description “Indicates the number of bytes from the memory pool that are currently in use by appli- cations on the managed device.” More Information • How to Get Free and Largest Block of Contiguous Memory Using SNMP
Object ciscoMemoryPoolFree OID 1.3.6.1.4.1.9.9.48.1.1.1.6 Type Gauge32 Permission read-only Status current MIB CISCO-MEMORY-POOL-MIB ; View Supporting Images Description “Indicates the number of bytes from the memory pool that are currently unused on the managed device.
Note that the sum of cisco Me- moryPoolUsed and ciscoMemory PoolFree is the total amount of memory in the pool” More Information •How to Get Free and Largest Block of Contiguous Memory Using SNMP0
Configuración de MRTG. Agregar al archivo de configuración creado con cfgmaker las siguientes líneas: ############################## Monitoreo de CPU Target[cpu]: 1.3.6.1.4.1.9.2.1.57.0&1.3.6.1.4.1.9.2.1.58.0:<COMUNIDAD>@<IP DEL HOST>: MaxBytes[cpu]: 100 AbsMax[cpu]: 100 Options[cpu]: growright,gauge Unscaled[cpu]: dwmy YLegend[cpu]: Utilizacion ShortLegend[cpu]: % LegendI[cpu]: 1 Min: LegendO[cpu]: 5 Min: Legend1[cpu]: AvgBusy 1 Min Legend2[cpu]: AvgBusy 5 Min Legend3[cpu]: Legend4[cpu]: Title[cpu]: Cisco Utilizacion de CPU PageTop[cpu]: <H1>Cisco Utilizacion de CPU</H1> ############################ Monitoreo de Memoria
Target[mem]: 1.3.6.1.4.1.9.9.48.1.1.1.5.1&1.3.6.1.4.1.9.9.48.1.1.1.6.1: <COMUNIDAD>@<IP DEL HOST>: MaxBytes[mem]: 40000000 AbsMax[mem]: 40000000 Options[mem]: growright, gauge, integer, nopercent Unscaled[mem]: dwmy YLegend[mem]: Memoria Usada/Disponible Legend1[mem]: Memoria Usada Legend2[mem]: Memoria Disponible LegendO[mem]: Disponible LegendI[mem]: Usada ShortLegend[mem]: b Title[mem]: Cisco Utilizacion de Memoria PageTop[mem]: <H1>Cisco Utilizacion de Memoria</H1>
|
Con estas configuraciones se obtendrán gráficas como las mostradas a continuación:
Al contar con este monitoreo constante lograremos, mediante desviación de tendencias, detectar cualquier anomalía sin importar su origen.
Para saber más sobre SNMP, Mibs y OID, aconsejamos consultar:
• http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol • http://en.wikipedia.org/wiki/Management_information_base
Si bien en el presente artículo nos basamos en el monitoreo de equipos de telecomunicaciones, bien podría aplicarse a servidores.
|