Instalar y configurar SNMP en Ubuntu.

Posted on noviembre 9, 2009. Filed under: General |

Hoy tuve la necesidad de configurar el servicio snmp en Ubuntu, y me di unos cuantos golpes, pero al final resolvi gracias a google como siempre, aqui les dejo como hacerlo…

1.Instalacion

root@vulcano:~# sudo apt-get install snmpd snmp
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libmpich1.0gf libdc1394-22 genisoimage linux-headers-2.6.27-7 libgfortran2
dvd+rw-tools linux-headers-2.6.27-7-generic libcarp-clan-perl libxml-xql-perl libparse-yapp-perl
  rdate python-xml localechooser-data gcc-4.2-base libimage-size-perl libdebconfclient0
libvisual-0.4-0 libmyth-python perlmagick libvisual-0.4-plugins libavdevice52
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  libperl5.10 libsensors3 libsnmp-base libsnmp15
Suggested packages:
  lm-sensors
The following NEW packages will be installed:
  libperl5.10 libsensors3 libsnmp-base libsnmp15 snmpd
0 upgraded, 5 newly installed, 0 to remove and 3 not upgraded.
Need to get 2463kB of archives.
After this operation, 7987kB of additional disk space will be used.
Do you want to continue [Y/n]?

respuesta: y

2. Configuracion

Mueve el archivo existente /etc/snmp/snmpd.conf para /etc/snmp/snmpd.conf.bck  (esto lo que haria es no usar el archivo por defecto snmpd.conf pues trae muchas cosas que la verdad no deseo utilizar, simplemente quiero que funcione rapidamente mi snmpd), lo hacemos asi:

mv /etc/snmp/snmpd.conf  /etc/snmp/snmpd.conf.bck

Editamos el nuevo archivo /etc/snmp/snmpd.conf:

vi /etc/snmp/snmpd.conf

Y creamos el archivo con la siguiente información (esta es de ejemplo, tu pones la que te convenga):

rwcommunity  tran$port
syslocation  "Empresa, Ernesto Centro de Computo"
syscontact   ernesto@suempresa.net

Hacemos que el demonio snmpd use el nuevo archivo creado y le indicamos que escuche para todas las interfaces:

Edita /etc/default/snmpd:

vi /etc/default/snmpd

Cambia de:

# snmpd options (usa syslog, cierra stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

Para:

# snmpd options (use syslog, close stdin/out/err).
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf'

y reiniciamos  snmpd

/etc/init.d/snmpd restart

3. Testeamos

Hacemos un  snmpwalk desde otro host para el nuevo host configurado.

[root@vulcano ~]# snmpwalk -v 1 -c public -O e serverSNMP
SNMPv2-MIB::sysDescr.0 = STRING: Linux ibsen 2.6.27-9-generic #1 SMP Thu Nov 20 21:57:00 UTC 2008 i686
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (68869) 0:11:28.69
SNMPv2-MIB::sysContact.0 = STRING: eleon@myempresa.net
SNMPv2-MIB::sysName.0 = STRING: serverSNMP
SNMPv2-MIB::sysLocation.0 = STRING: "Ernesto Centro de Computo"
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORID.1 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.2 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip

Listo!!

Make a Comment

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

16 comentarios to “Instalar y configurar SNMP en Ubuntu.”

RSS Feed for Unix – Linux Tips & Tricks Comments RSS Feed

serverSNMP que es??

Esa es la IP o el nombre (si tienes DNS o configurado en el /etc/hosts), del equipo que tiene instalado el servicio snmp. He observado y este how to es algo difuso, procurare mejorarlo en cuanto tenga un tiempo para que se entienda mucho mejor. Disculpen lo malo.

Hola …creo que ya te tardaste amigo… nada más entendí en cambiar el nombre del archivo y crear el nuevo, pero ¿en donde meto los nuevos datos rwcommunity, tengo que hacer un basic setup antes o que? quiero ver el desempeño del disco duro para monitorerar con nagios desde otro server pero soy muy novato, así que un poco de ayuda de snmp me caería de maravilla.

saludos

Si veo que el tutorial no esta para principiantes, lo voy a arreglar pero mientras te explico.

Los datos de rwcommunity lo colocas dentro del archivo de configuracion puedes editar el archivo con “vi”.

Si tienes mas dudas avisa.

sip..

¿cuando y por qué en unos se coloca tanta paja en ese archivo? ¿que diferencia hay de eso a las líneas que pones? lo digo porque los comandos de nagios piden la contraseña de snmp

esta es la paja a la que me refiero ¿me puedes explicar por favor?

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

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

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

# 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

Mucha gracias por responder

Mira, acabo de editar el post, asi que leelo y realiza los pasos que dejo alli deberia funcionar todo.

Te comento que ese archivo original lo debes guardalo como “.bck” (backup) y crea uno nuevo con las directrices sencillas que les doy.

Esas son un poco de politicas, pero para lo que quieres con una comunidad de read only y read write te sirve, luego haces pruebas de snmpwalk contra tu equipo a ver si da respuestas snmpd.

No te mortifiques, guarda el archivo como “punto old o punto bck”, y creas uno nuevo con el mismo nombre y le pones lo que te he dicho.

Saludos!

Gracias:

snmpwalk funciona localmente, pero desde otro equipo no responde, los dos están en un vmware sphere, al que tiene snmp ya le abrí puertos con ip tables 161 y 162 pero ni así, ¿alguna idea?.

muchas gracias por tus respuestas.

Primero para que te asegures que “realmente” abristes el puerto, prueba desde un equipo conectado a la red y si la misma tiene linux mejor.

Prueba desde ese equipo contra el servidor snmpd con lo siguiente:

nmap -A -T4 direccionIPdelservidor

Alli deberias ver el puerto 161 abierto.

Al asegurarte que en realidad el puerto esta abierto, haz pruebas con snmpwalk.

Ojo, es posible que no tengas instalado en ese equipo nmap, si ese es el caso, haz un:

sudo apt-get install nmap

Y luego usa ese comando.

Lo mismo con snmpwalk, si no lo tienes, instalalo.

Me avisas.

Creo yo que no están (por lo poco que sé no los veo) aunque lo definí con iptables.
# iptables -A INPUT -p tcp –dport 161 -j ACCEPT
# iptables -A INPUT -p udp –dport 161 -j ACCEPT

lo mismo que el 162.

Starting Nmap 5.00 ( http://nmap.org ) at 2012-02-17 14:35 CST
Interesting ports on 192.168.9.219:
Not shown: 997 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3 (protocol 2.0)
| ssh-hostkey: 1024 aa:1e:22:7a:69:3a:4b:c1:eb:1d:5d:6c:88:cd:3c:67 (DSA)
|_ 2048 9c:0d:b3:72:55:1a:9d:a4:cb:28:32:2b:59:de:e3:c5 (RSA)
111/tcp open rpcbind
| rpcinfo:
| 100000 2,3,4 111/udp rpcbind
| 100021 1,3,4 45936/udp nlockmgr
| 100024 1 57964/udp status
| 100000 2,3,4 111/tcp rpcbind
| 100021 1,3,4 35885/tcp nlockmgr
|_ 100024 1 39310/tcp status
5432/tcp open postgresql PostgreSQL DB
MAC Address: 00:0C:29:F8:82:83 (VMware)
No exact OS matches for host (If you know what OS is running on it, see http://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=5.00%D=2/17%OT=22%CT=1%CU=34889%PV=Y%DS=1%G=Y%M=000C29%TM=4F3EBA3
OS:1%P=i686-pc-linux-gnu)SEQ(SP=C2%GCD=1%ISR=CE%TI=Z%CI=Z%II=I%TS=A)OPS(O1=
OS:M5B4ST11NW7%O2=M5B4ST11NW7%O3=M5B4NNT11NW7%O4=M5B4ST11NW7%O5=M5B4ST11NW7
OS:%O6=M5B4ST11)WIN(W1=16A0%W2=16A0%W3=16A0%W4=16A0%W5=16A0%W6=16A0)ECN(R=Y
OS:%DF=Y%T=40%W=16D0%O=M5B4NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD
OS:=0%Q=)T2(R=N)T3(R=Y%DF=Y%T=40%W=16A0%S=O%A=S+%F=AS%O=M5B4ST11NW7%RD=0%Q=
OS:)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=
OS:S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(R=Y%DF
OS:=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(R=Y%DF=N%T=40%IPL=164%UN=0%RIPL=
OS:G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=40%CD=S)

Network Distance: 1 hop

OS and Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 26.34 seconds

Gracias por tu respuesta.

Hola Daniel, bueno el hecho que no lo veas en la salida de nmap, no corresponde (como tal), que el puerto este cerrado, eso lo revisamos luego… ; )

Ahora lo que te recomiendo es que veas, si (en realidad), esta arriba el daemon de snmpd.

¿Como lo haces?, haz una llamada en el prompt de lo siguiente:

ps -fea | grep snmp | grep -v grep

La salida de esto, deberia darte lo que esta corriendo en el servidor (como snmpd o lo que con ese nombre).

Luego si esta corriendo, entonces, verifica que el puerto 161 esta a la escucha…

Lo haces asi:

netstat -an | grep 161

Alli podras ver como va la cosa, en que estado esta ese puerto en el servidor Unix.

SI todo esta arriba, y a la escucha, entonces, vamos a revisar estas politicas IPTABLES que tienes, pero haz eso primero y comentame.

Enjoy!

Gracias: la salida que me da es esta:
root 22369 1 0 18:39 ? 00:00:00 /usr/sbin/snmpd -LS0-6d -Lf /dev/null -p /var/run/snmpd.pid
Lo que realmente me extraña ya que edité el archivo como tu me lo indicaste, según entiendo debe de salir: -Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf.
ahora lo de los puertos tanto 161 como 162: creo esta bién:

udp 0 0 0.0.0.0:161 0.0.0.0:*
unix 2 [ ACC ] STREAM LISTENING 16110 @/tmp/.ICE-unix/1974
unix 2 [ ACC ] STREAM LISTENING 16135 /tmp/orbit-fastweb/linc-800-0-2795d5c0c8800
unix 2 [ ACC ] STREAM LISTENING 16111 /tmp/.ICE-unix/1974
unix 3 [ ] STREAM CONNECTED 16138 @/tmp/dbus-2b5XY9S1gJ
unix 3 [ ] STREAM CONNECTED 16137
unix 3 [ ] STREAM CONNECTED 16122 /var/run/dbus/system_bus_socket
unix 3 [ ] STREAM CONNECTED 16121
unix 3 [ ] STREAM CONNECTED 11613
unix 3 [ ] STREAM CONNECTED 11612

unix 3 [ ] STREAM CONNECTED 13162

Gracias por tus respuestas. (hoy si he estado aprendiendo bastante)

Edita /etc/default/snmpd:

vi /etc/default/snmpd

Cambia de:

# snmpd options (usa syslog, cierra stdin/out/err).
SNMPDOPTS=’-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1′

Para:

# snmpd options (use syslog, close stdin/out/err).
#SNMPDOPTS=’-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1′
SNMPDOPTS=’-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf’

y reiniciamos snmpd

/etc/init.d/snmpd restart

Luego que reinicies vuelve a hacer un:
ps -fea | grep snmp | grep -v grep

(Deberias ver que se esta apuntando al archivo de configuración que preparastes), por favor mandame a rdiazmontesdeoca@gmail.com una copia del archivo de configuración para revisarlo.

Gracias. Archivo enviado en este la localización está en /etc/sysconfig.

Hola. creo que ya vi cual fue el error, aunque siga sin apuntar lo que hice en el archivo smnp.conf fue tomar uno como el de arriba y en lugar de la ip le coloqué “default”:

com2sec public default public

Bueno ahora desde un servidor de la red (otro linux 192.168.9.74) #snmpwalk -v 1 192.168.9.219 -c public -v2c system y ya jaló,

Aún así sigo buscando la interrogante del ¿por qué no apunta?

Gracias por compartir tu conocimiento.

Que bueno que ya resolviste, tendriamos que sentarnos a revisar con mas detalle.

Cuidate.

Muchas gracias por la ayuda, me fue de mucha utilidad ahora que estoy en practicas de la escuela para la materia de Topicos de redes del ITC. Gracias! ISC Jozz Rodriguez


Where's The Comment Form?

Liked it here?
Why not try sites on the blogroll...

A %d blogueros les gusta esto: