>SNMP o Simple Network Management Protocol, es un protoclo de capa aplicacion que facilita el intercambio de información de administración entre dispositivos de red.

El mismo se puede definir como un protocolo que a manera de servicio nos permite recuperar informacion remota acerca de los componentes conectados a la red tales como computadoras, servidores, impresoras, routers, etc.

Para tener en cuenta…

Se puede definir el funcionamiento de SNMP a manera de un modelo cliente servidor, ya que para que funcione necesitamos dos aplicaciones basicas snmpd y snmp, en las cuales se puede definir la primera como el servidor y la otra como el cliente.

Aunque podamos relacionar el funcionamiento de esta manera cabe destacar que ambas aplicaciones deben estar instaladas en los equipos que componen la red, es decir tanto en el servidor u equipo de donde voy a monitorear los componentes de la red como tambien dichos componentes.

Instalación

Para lograr que SNMP se ejecute de manera adecuada en nuestra red tenemos que instalar snmp y snmpd, abriendo una consola y escribiendo :

root@server1:# sudo apt-get install snmp snmpd

Configuracion

Una vez instalado, procederemos a configurar snmpd.

root@server1:# cd /etc/snmp/
root@server1:# mv snmpd.conf snmpd-backup.conf
root@server1:# echo “” > snmpd.conf

Lo que haremos es trabajar con una copia vacia del archivo de configuracion snmpd.conf.

root@server1:# mcedit snmpd.conf

Luego lo editamos y escribimos:

# Listas de control de acceso (ACL)
## sec.name source community (alias clave de acceso)
com2sec local 127.0.0.1/32 local
com2sec miRed 192.168.1.0/24 public

recommunity miRed

#Se asigna ACL al grupo de lectura escritura
group MyRWGroup v1 local
group MyRWGroup v2c local
group MyRWGroup usm local

#Se asigna ACL al grupo de solo lectura
group MyROGroup v1 miRed
group MyROGroup v2c miRed
group MyROGroup usm miRed

# Ramas MIB que se permiten ver
## name incl/excl subtree mask(optional)
view all included .1 80

# Establece permisos de lectura y escritura
## 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

# Informacion de Contacto del Sistema
syslocation Servidor X en CUALQUIER PARTE
syscontact Encargado (hablame@gmail.com)

Ya hemos configurado:


  • Listas de control de acceso: Se deben crear las listas de control de acceso (ACL o Access Control List) , las cuales sirven para definir lo que tendrá acceso hacia el servicio snmpd. A una de estas listas se le otorgará permiso de acceso de lectura y escritura, para lo que sea necesario en relación con administración, y a la otra de solo lectura. Por razones de seguridad solo la interfaz 127.0.0.1 estará en la lista de lectura escritura. Se otorgará permiso de acceso de solo lectura a una red o bien a una dirección IP en la otra lista de control de acceso.
  • Definición de grupos: Se crean al menos dos grupos: 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 miRed.
  • Ramas permitidas: Se especifican las ramas que se van a permitir ver a través del servicio.
  • Asignación de permisos a los grupos: Se debe especificar que permisos tendrán los dos grupos, MyROGroupMyRWGroup. Son de especial interés las últimas columnas.
  • Parámetros de carácter informativo: 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.
Luego simplemente guardamos el archivo. Ahora tenemos que configurar el servicio snmp para que se accedido desde cualquier parte de miRed por lo cual, tendremos que editar el archivo /etc/default/snmpd y buscar la linea:


SNMPDOPTS=’-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid’

y la reemplazamos por


SNMPDOPTS=’-C -c /etc/snmp/snmpd.conf -p /var/run/snmpd.pid’


Guardamos el archivo y luego reiniciamos el servicio snmpd tecleando

root@server1:# /etc/init.d/snmpd restart


Pruebas

Una vez hemos terminado la parte de configuracion debemos proceder a hacer unas pruebas minimas para saber si nuestro SNMP se esta ejecutando adecuadamente en nuestra red. Para esto abrimos una consola y tecleamos

root@server1:# snmpwalk 127.0.0.1 -c local -v2c system

y luego tecleamos

root@server1:# snmpwalk 192.168.1.131 -c public -v2c system

Si en ambos casos la respuesta es una maraña de informacion, podemos dar por sentado que el servicio se ejecutó adecuadamente a nivel local (es decir sobre la máquina donde lo ejecutamos) y a nivel de red.