INSTALACION Y CONFIGURACION DE SNMP Y MRTG


INSTALACION Y CONFIGURACION DE SNMP Y MRTG




¿ Que es MRTG ?


El Multi Router Traffic Grapher (MRTG) es una herramienta para supervisar la carga de tráfico de la red. MRTG genera páginas HTML que contienen imágenes PNG que ofrece representación visual de este tráfico.

¿ Qué es SNMP ?

SNMP (Simple Network Management Protocol) es un protocolo ampliamente utilizado en la administración de redes para supervisar la salud y el bienestar del equipo de la red, equipo de cómputo y otros dispositivos. Net-SNMP es la aplicación y el demonio es el SNMPD.

Instalación:

# apt-get install snmp snmpd mrtg

NOTA: En la instalacion nos preguntara si queremos que si el archivo mrtg.cfg sea solo legible para el usuario MRTG, y le diremos que Si.

En la ruta /etc/snmp/ se encuentra el archivo de configuración para el SNMP con el nombre de snmpd.conf al cual le haremos un Backup con el siguiente comando:

# cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf_Respaldo

Se deben crear las listas de control de acceso (ACL) correspondientes a nuestra red en el fichero /etc/snmp/snmpd.conf y que servirán para definir quien tendrá acceso hacia el servicio SNMP. A una de estas listas se le otorgará permiso de Lectura y Escritura para lo que sea necesario y a la otra de solo Lectura. Por razones de seguridad solo la interfaz 127.0.0.1 será la de lectura escritura. Se otorgará permiso de acceso de solo lectura a una red o bien a una IP en la otra lista de control de acceso (ACL).

Entraremos al archivo de configuración del SNMP a configurarlo con el siguiente comando:

# nano /etc/snmp/snmpd.conf

Buscaremos las siguientes líneas, aquí definiremos el nombre o los nombres de comunidades a las que el Servidor accederá, las cambiaremos por los siguientes parámetros:

com2sec local 127.0.0.1/32 private
com2sec miredlocal 10.3.64.0/24 public


Donde local será la Comunidad de Lectura y Escritura y miredlocal de solo Lectura, prívate será el nombre de la comunidad para 127.0.0.1 (localhost) y 192.168.0.0 sera el ID de nuestra Red, en vez de la IP lo podemos dejar con el parámetro default. Private será el nombre de la Comunidad para local y Public para miredlocal.

Crearemos dos grupos (debemos de tener en cuanta que ya hay unos grupos creados por defecto y debemos de crear conflicto), MyRWGroup y MyROGroup. El primero será un grupo al que se asignarán más adelante permisos de lectura-escritura y el segundo será un grupo al que posteriormente se asignarán permisos de solo lectura. Por cada grupo se asignan tres líneas que especifican el tipo de acceso que se permitirá en un momento dado a un grupo en particular. Es decir, MyRWGroup se asocia a local y MyROGroup a miredlocal, las líneas deben de quedar así:


group MyRWGroup v1 local
group MyRWGroup v2c local
group MyRWGroup usm local


group MyROGroup v1 miredlocal
group MyROGroup v2c miredlocal
group MyROGroup usm miredlocal

Especificaremos las ramas que se van a permitir ver a través del servicio. Lo más común, para, por ejemplo, utilizarse con MRTG, buscaremos las siguientes líneas y debemos de encontrarlas así:

## name incl/excl subtree mask(optional)

View all included 1 80

Se debe especificar que permisos tendrán los dos grupos, MyROGroup y MyRWGroup. Son de especial interés las últimas columnas, recordemos que local será de lectura-escritura y miredlocal lectura, debe de quedar así, tendremos cuidado con las ultimas líneas:

## group context sec.model sec.level prefix read write notif

access MyROGroup "" any noauth exact all none none

access MyRWGroup "" any noauth exact all all all

Se definen dos parámetros de carácter informativo para que cuando utilicen aplicaciones cliente como MRTG se incluya algo de información acerca de que sistema se está accediendo, cambiaremos las líneas con la información de nuestro dominio (en nuestro caso nluder55.com), asi:

syslocation Servidor Linux en rua.cumbia.com
syscontact Administrador (administrador@cumbia.com)

Reiniciaremos el servicio de SNMP y lo añadiremos al resto de los servicios que arrancan junto con el sistema (Si no nos da esta comando es porque ya está en el arranque del sistema):

# service snmpd start

# chkconfig snmpd on

Antes de provar el Servidor verificaremos la conexión con el localhost o si queremos con la ip de un equipo de la red, para ello necesitaremos instalar el scli con el siguiente comando:

# apt-get instakk scli

Despues de instalarlo vasta con ejecutar el comando seguido de la IP a vereificar, así:

# scli 127.0.0.1

100-scli version 0.2.12 (c) 2001-2002 Juergen Schoenwaelder

100-scli trying SNMPv2c ... good

(127.0.0.1) scli >

En esta prom le podemos dar monitor y nos debe dar informacion del Equipo. Probaremos el servidor con el siguiente comando (nos debe de arrojar información acerca del Equipo):

# snmpwalk -v 1 127.0.0.1 -c private system
# snmpwalk -v 1 127.0.0.1 -c private interfaces

Ahora en MRTG crearemos un respaldo del archivo de cnfiguración, con el siguiente comando:

# cp /etc/mrtg.cfg /etc/mrtg.cfg_Respaldo

Entreremos al archivo de configuracion del MRTG con el Siguiente comando:

# nano /etc/mrtg.cfg

Verificaremos si estan estas lineas en archivo de configuracion, de lo contrario agregarlas:

RunAsDaemon: yes
EnableIPv6: no
WorkDir: /var/www/mrtg
Options[_]: bits,growright
WriteExpires: Yes
Title[^]: Traffic Analysis for



Para el Servidor MRTG cada 5 minutos verificara el estado de las interfaces, para mirar la configuracion de este seraa así:

# cat /etc/cron.d/mrtg

El contenido debe de ser como este, donde el 5 es el valor por defecto para el escaneo de los equipos en la red:

*/5 * * * * root if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi

Ahora agregaremos a nuestro Equipo al archivo de configuracion del MRTG con el siguiente comando, donde private sera la comunidad para la red localhost y se añadira al archivo mrtg.cfg, asi:

# cfgmaker private@localhost > /etc/mrtg.cfg

Para que el MRTG nos grafique (Entorno Grafico) debemos de crear la pagina para el equipo que agregamos con el comando antrerior, así:

# indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html

Ingresaremos a la interfaz graica del MRTG por medio del Navegador Web con http://10.3.64.86/mrtg, nos debe de mostrar el nustro equipo con el nombre completo, para mirar el estado de este sera darle Clic en el cuadro y mirar todo lo que MRTG y SNMP tienen para graficarnos. Recordemos que MRTG muestra el estado del Equipo cada 5 minutos por lo cual tendremos que esperar un poco.

Para agregar un Equipo o Dispositivo de red al MRTG vasta con tomar los pasos que hicimos con nuestro PC (localhost) y listo.


Los pasos serian:

1. Provar la conexión con SCLI.
2. Escanear el Equipo o Dispositivo por consola con el comando snmpwalk
3. Agregar el equipo al archivo de configuracion del MRTG.
4. Agregar el Equipo a la interfaz grafica del MRTG.

Es posible que tu navegador no permita visualizar esta imagen.Esta sera la ventana para nustro Equipo:

PROBLEMA CON MYSQL-SERVER

Me ocurrio que mientras instalava el mysql-server en mi Equipo con Debian para instalar y configurar el Zenoss y me salian dos errores, el primero era:

* /etc/init.d/mysql: ERROR: Using expire_logs_days without log_bin crashes the server. See README.Debian.gz

y el segundo era:

/etc/init.d/mysql: ERROR: Using expire_logs_days without log_bin crashes the server. See README.Debian.gz
/etc/init.d/mysql: line 122: /etc/mysql/debian-start: Permiso denegado


Entonces trate de resover el primer error que lo plantee en una entrada pasada pero me encontre con que el archivo my.cnf no estaba en el directorio /etc/mysql/, tampoco existia el archivo debian-start ni el directorio conf.d y el archivo old_passwords.cnf. Despues de mucho buscar decidi copiar los archivos que me hacian falta de otro Equipo de mi red y me funciono, claro despues de otros comandos que necesitamos ejecutar, debemos de hacer lo siguiente:

Copiaremos los archivos que nos hacen falta de otro Equipo que los tenga y este funcionando correctamente el Myqsl-Server, despues crearemos la carpeta conf.d dentro del /etc/mysql/, así:

# mkdir /etc/mysql/conf.d/

Despues copiaremos los archivos respectivos a la ruta del Mysql, en mi caso solo tenia el archivo de configuracion debian.cnf, me toco copiar el debian-start, my.cnf y el old_passwords.cnf en la carpeta conf.d.

Despues de esto pense que ya lo tenia todo listo pero como copie los archivos de otro equipo el usuario y grupo propietario eran los de ese Equipo, me toco ejecutar el siguiente comando para cambiarlo de propietario, así:

# chown root:root /etc/mysql/debian-start
# chown root:root /etc/mysql/my.cnf


Tambien pense que todo estaba ya listo pero los permisos de lectura para el usuario y el grupo propietario no eran los correctos, me toco ejecutar el siguiente comando:

# chmod u+rwx /etc/mysql/debian-start
# chmod go+rx /etc/mysql/debian-start


Por fin despues de esto reinicie el mysql-server y me corrio correctamente, despues de reiniciarlo es posible que nos salga la siguiente linea:

Checking for corrupt, not cleanly closed and upgrade needing tables..

Esta linea no es un error como yo lo creia, solo nos quiere decir que esta chequeando las tablas a ver si estan corructas. En mi caso desinstale de nuevo el Servidor y lo instale de nuevo para corregir algun error posible que no podemos identificar, recordemos verificar el estado de los paquete con el comando dpkg -l, en mi caso los paquetes quedaron con iF y los queria ver ii, por eso los desinstale y los instale de nuevo.

Recordemos que los paquetes para el Mysql son: mysql-server y mysql-server-5.0


Gracias a Bluder que fue el que me colaboro con la solucion del problema
http://bluder10.blogspot.com/

top