delete

Crear iconos gd2 para usar con Nagios

Bueno, aún no he publicado todo lo que tengo en borradores, pero tengo que ponerme al día.

Esta vez, vamos a crear ficheros .gd2 para poder usarlos con nagios y nos sea más bonito y nuestros hosts sean más reshulones en la vista “map” xD.

Lo primero crear una imagen PNG con el icono que queremos crear con un tamaño de 45x45px.

Instalar:

apt-get install libgd-tools

Ejecutar:

pngtogd2 archivo.png archivo.gd2 0 1

Y, por último:

Subir los dos archivos a share/images/logos.
Ya podemos añadir “icon image archivo.png” y “statusmap_image archivo.gd2” a nuestros hosts.

Nota: Si queréis que check_mk los muestre hay que subir los .PNG donde lo tengamos instalado.
En mi caso:
/usr/share/check_mk/web/htdocs/images/icons/

delete

Avisos Nagios en Telegram – Debian 7

nagiostelegram
Siguiendo el hilo del servidor nagios con avisos telefónicos que montamos en mis ultimas entradas, ahora vamos a implementar avisos por telegram, usando Telegram-cli, así ademas de recibir la llamada, tendremos información detallada de que ocurre sin tener que conectarnos al nagios.

Lo primero es instalar las dependencias necesarias para telegram-cli

apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev python2.7-dev make git

Y clonar el repositorio de telegram-cli, yo lo haré en mi carpeta home

cd home
git clone --recursive https://github.com/vysheng/tg.git && cd tg
./configure

Si no ha dado ningún error podemos compilar.

make

Al terminar comprobaremos que funciona correctamente con:

/home/tg/bin/telegram-cli -k /home/tg/tg-server.pub -W -e "msg <nombretelegram> probando"

La primera vez que lo ejecutemos nos pedirá que introduzcamos un numero de teléfono, importante no olvidar el código de país, para españa +34.
Nos llegara un mensaje con el código que debemos de introducir.
Este paso se tendrá que repetir con todos los usuarios que vayan a usar telegram-cli, lo que quiere decir que si estamos con root, tendremos que cambiar al usuario nagios y ejecutar telegram-cli para que nos pida nuevamente otro código.

Ahora vamos a la parte Nagios.

Tenemos que editar los siguientes archivos: commands.cfg y contacts.cfg

En commands.cfg añadiremos lo siguiente (comprobando que la ruta de telegram-cli y tg-server.pub sean correctas)

#Telegram
define command{
	command_name	notify-host-by-telegramcli
	command_line	/home/tg/bin/telegram-cli -k /home/tg/tg-server.pub -WR -U root -D -e 'msg $_CONTACTTG$ $NOTIFICATIONTYPE$ Host : $HOSTNAME$ is $HOSTSTATE$ Address: $HOSTADDRESS$ Info: $HOSTOUTPUT$ @ $LONGDATETIME$'
	}		
 
define command{
	command_name	notify-service-by-telegramcli
	command_line    /home/tg/bin/telegram-cli -k /home/tg/tg-server.pub -WR -U root -D -e 'msg $_CONTACTTG$ $NOTIFICATIONTYPE$ Host : $HOSTNAME$ Address: $HOSTADDRESS$ - Service : $SERVICEDESC$ is $SERVICESTATE$ Additional Info: $SERVICEOUTPUT$ @ $LONGDATETIME$'
	}

En contacts.cfg añadimos:

define contact{
contact_name telegram-cli
_tg nombredelcontacto ; Nombre de telegram al que irán dirigidos los mensajes, si tiene espacios hay que usar "_"
alias pruebas
service_notification_period 24x7
host_notification_period 24x7
service_notification_options c
host_notification_options d
service_notification_commands notify-service-by-telegramcli
host_notification_commands notify-host-by-telegramcli
}

Y solo nos queda editar algún host o servicio y poner el contacto elegido, en mi caso “telegram-cli” aunque también es posible añadir notify-service-by-telegramcli y notify-host-by-telegramcli a un contacto ya existente, sin olvidar añadir el nombre de telegram con “_tg” y complementar notificaciones.

Por último reiniciamos el servicio y a comprobar que todo funcione.

service nagios restart

delete

Por fin, google a aceptado el cambio, ya somos Lantejuela (a secas)

Más vale tarde que nunca pero la madrugada pasada recibí esta respuesta a la petición para que quitasen el “La”, parece que se lo toman muy enserio.

Hola:

Nos complace comunicarte que tu incidencia se ha corregido.

Dependiendo del tipo de incidencia que nos hayas notificado, puede pasar un tiempo hasta que la actualización aparezca en otros productos y servicios, como las indicaciones de ruta en coche, Google Maps para móviles y Google Earth. Si crees que no hemos resuelto correctamente la incidencia, ponte en contacto con nosotros.

Gracias de nuevo por ayudarnos a mejorar Google Maps. Tu información nos permite crear mapas mejores y más útiles para todos los usuarios.

Sigue explorando,
El equipo de Google Maps

delete

Paint It Black (Todo negro)

Bueno, antes de nada, Felices fiestas a tod@s.
Aunque sea alguien arisco y al que no le gustan estas fechas (ni ninguna otra) hay que reconocer que tiene su mérito.

Y como no se en que anuncio la he oído (Creo que en alguno de ps4), se me ha metido en la cabeza y no la saco XD

Y en castellano.

delete

Instalar NTOP en Ubuntu server 14.04

Por necesidades del guion en la última semana hemos necesitado hacer uso de este tipo de aplicaciones.
Avisar que NTOP se dejó aparcado para ofrecer NTOPNG pero no es exactamente lo mismo, dejare aquí escrito el cómo por si en el futuro vuelvo a necesitarlo.
Lo vamos a instalar en un servidor dedicado con Ubuntu server 14.04 y de forma que yo lo entiendo, seguramente hay formas más resumidas o más estilizadas pero esto es personal :P

Actualizamos.

apt-get update && apt-get upgrade -uV

Instalamos el software necesario.

apt-get install libtool automake autoconf make build-essential python-dev subversion -y

Seguimos con las librerías necesarias.

apt-get install libpcap-dev libgdbm-dev zlib1g-dev libgeoip-dev libgraphviz-dev graphviz rrdtool librrd-dev -y

Visitando http://sourceforge.net/projects/ntop/files/ntop/Stable/ vemos que la última versión estable antes de pasar a ser ntopng es la 5.0.1 , será la que usaremos.

cd ~
wget http://sourceforge.net/projects/ntop/files/ntop/Stable/ntop-5.0.1.tar.gz

Descomprimimos y entramos dentro de la carpeta.

tar xvfz ntop-5.0.1.tar.gz
cd ntop-5.0.1

Configuramos, compilamos e instalamos.

./autogen.sh
make
make install

Creamos un nuevo usuario en el sistema y cambiamos el propietario de las carpetas.

useradd -r -s /bin/false ntop
chown -R ntop:ntop /usr/local/share/ntop /usr/local/lib/ntop /usr/local/var/ntop

Actualizar los links y la cache de las librerías compartidas.

/sbin/ldconfig

Y lanzamos el comando por fin.

ntop

Nos pedirá la contraseña para el usuario administrador y una vez establecida podremos entrar por http://ipdelservidor:3000

Errores típicos:

Si nos fijamos en la consola veremos:

**ERROR** RRD: Disabled – unable to create base directory (err 13, /usr/local/var/ntop/rrd)

Para solucionarlo:

mkdir /usr/local/var/ntop/rrd
chmod 0777 /usr/local/var/ntop/rrd

En Utils –> RRD Alarms ntop Python Configuration Error

apt-get install python-setuptools
easy_install Mako

ntop

PD: En un primer momento para probar se instaló en una máquina virtual, pero visto como consume recursos, lo hemos dejado en un servidor dedicado.

delete

Uno menos

Hay que buscar el lado positivo de las cosas.
Un año menos para volver a vernos.

delete

Instalar Nagios en Debian 7 – Parte II

En esta parte de la guía nos vamos a centrar en configurar nuestro Nagios para que sea capaz de realizar llamadas VoIP.
Esto surge de la necesidad de poder ser avisado de una forma de la que no tengamos que estar revisando el correo constantemente.
Así que si estáis dispuesto a realizar el sacrificio espero que os lo paguen muy bien en el trabajo, por que si no… lo siento por vosotros.

Importante mencionar que necesitamos una cuenta de algún proveedor VoIP, ya que sin ella se hará imposible :P

Vamos a usar PJSIP/PJSUA así que empezamos instalando subversion y nos copiamos localmente el repositorio de pjproject.

apt-get install subversion
svn checkout http://svn.pjsip.org/repos/pjproject/trunk

Instalamos las dependencias necesarias

apt-get install build-essential automake autoconf libtool libasound2-dev libpulse-dev libssl-dev libsamplerate0-dev libcommoncpp2-dev libccrtp-dev libzrtpcpp-dev libdbus-1-dev libdbus-c++-dev libyaml-dev libpcre3-dev libgsm1-dev libspeex-dev libspeexdsp-dev

Nos vamos al directorio donde hemos descargado el repo y configuramos, compilamos e instalamos:

cd trunk
./configure && make dep && make clean && make && make install

Copiamos el ejecutable en /usr/bin/

cp pjsip-apps/bin/pjsua-i686-pc-linux-gnu /usr/bin/pjsua

Configurar pjsua.

Creamos el archivo de configuración llamado pjsuarc en /etc con la siguiente plantilla (los detalles dependerán del proveedor voip):

nano /etc/pjsuarc
--null-audio
--registrar sip:IPSERVIDOR:PUERTO
--realm=*
--id sip:<username>@<IPSERVIDOR>:PUERTO
--username <username>
--password <password>

Ahora podemos probar a realizar una llamada, y si todo funciona bien podemos seguir.

/usr/bin/pjsua --config-file=/etc/pjsuarc sip:<TELEFONOALQUELLAMAR>@<IPSERVIDOR>:PUERTO

Volvemos con Nagios, recordando que los archivos de configuración estan en la carpeta:

/usr/local/nagios/etc/objects

Necesitamos editar commands.cfg y contacts.cfg.

nano /usr/local/nagios/etc/objects/commands.cfg

Y añadir al final

define command{
        command_name  notify-host-by-sip
        command_line  (sleep 30 && echo q) | /usr/bin/pjsua --config-file=/etc/pjsuarc sip:$CONTACTEMAIL$
}
define command{
        command_name  notify-service-by-sip
        command_line  (sleep 30 && echo q) | /usr/bin/pjsua --config-file=/etc/pjsuarc sip:$CONTACTEMAIL$
}

Ahora añadimos el contacto

nano /usr/local/nagios/etc/objects/contacts.cfg
define contact{
        contact_name  user_sip
        alias  useralias
        service_notification_period  24x7
        host_notification_period  24x7
        service_notification_options  c
        host_notification_options  d
        service_notification_commands  notify-service-by-sip
        host_notification_commands  notify-host-by-sip
        email  TELEFONOALQUELLAMAR>@<IPSERVIDOR>:PUERTO
}

Y con esto hemos acabado, solo nos quedaría añadir como contacto en nuestros hosts o servicios el usuario “user_sip” y ya podremos recibir los avisos en el teléfono.
Nota: Se puede complicar un poco más, haciendo que al descolgar nos reproduzca una grabación, en mi caso con solo ver la llamada me basta ya que inmediatamente puedo entrar y ver donde esta el problema.

delete

Instalar Nagios en Debian 7 – Parte I

Buenos días, esta entrada no es más que para recordar como he podido llevar a cabo una instalación limpia de Nagios.
Va a constar de dos partes, una para instalar Nagios 4.0.8 y otra más especial de la que no he encontrado nada que funcione a día de hoy para poder recibir avisos telefónicos.
Nota: Acaba de salir la versión 4.1.1 pero he preferido omitirla, en este tipo de cosas no nos la podemos jugar :)

Necesitamos instalar los siguientes paquetes:

Apache2
PHP 5
El compilador GCC y las librerias de desarrollo
Las librerias GD

Empezamos con el terminal:

apt-get -y update
apt-get -y install apache2 libapache2-mod-php5 build-essential libgd2-xpm-dev

Creamos el usuario nagios y le asignaremos una contraseña:

useradd -m -s /bin/bash nagios
passwd nagios

Añadimos el nuevo usuario en el grupo nagios

usermod -G nagios nagios

Creamos el nuevo grupo nagcmd para alojar los comandos usados por la interfaz web.

groupadd nagcmd

Añadimos el usuario en el grupo nagios

usermod -a -G nagcmd nagios

También en el grupo apache

usermod -a -G nagcmd www-data

Descargar Nagios y sus Plugins

Para mantener un poco el orden si no existe aun, vamos a crear una carpeta.

mkdir downloads 
cd downloads

Descargamos via wget nagios-core y sus plugins:

wget http://downloads.sourceforge.net/project/nagios/nagios-4.x/nagios-4.0.8/nagios-4.0.8.tar.gz
wget http://www.nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz

Descomprimimos los paquetes descargados y accedemos al nuevo directorio:

tar xzf nagios-4.0.8.tar.gz
cd nagios-4.0.8

Ejecutamos el script de configuración, pasándolo por el grupo que hemos creado nagcmd

./configure --with-command-group=nagcmd

Compilamos el código fuente:

make all

Instalamos los binarios, los scripts de inicio y los archivos de ejemplo.

make install
make install-init
make install-config
make install-commandmode

Configurar al Interfaz Web

Ejecutaremos el script install-webconf desde el directorio ….downloads/nagios-4.1.1

make install-webconf

Asignaremos el usuario nagiosadmin a la interfaz web de nagios. Nos pedirá una contraseña que sera usada para acceder vía web.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Reiniciamos el servicio Apache

/etc/init.d/apache2 restart

Compilar e Instalar Plugins

Volvemos al directorio donde teníamos el archivo descargado de los plugins, lo descomprimimos y accedemos al directorio.

tar xzf nagios-plugins-2.1.1.tar.gz
cd nagios-plugins-2.1.1

Compilamos e instalamos los plugins

./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

Ya esta todo listo, así que preparemos el terreno para que en el próximo reinicio arranque todo automáticamente.

Crearemos un enlace simbólico con el comando ln, para que arranque el servicio al encender nuestra máquina.

./configure --with-nagios-user=na
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Comprobaremos que toda la configuración es correcta.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si no devuelve ningún error ya podemos arrancar el servicio.

/etc/init.d/nagios start

Seguimos en Instalar Nagios en Debian 7 – Parte II

delete

The Sound of Silence

(más…)

delete

Restore AC power loss – ELASTIX NLX4000

El pasado mes de Agosto decidimos volver a tener en nuestras instalaciones un PBX, la experiencia anterior a modo de pruebas fueron bonitas pero por los ataques que sufren este tipo de servicios nos costo el dinero a pesar de seguir los consejos, manuales de la red y del propio proveedor.
No fue un gran susto para lo que podría haber pasado pero si que te descuadra los planes, por este motivo  tomamos la decisión de abandonar la idea y seguir prestando el servicio mediante otra empresa.

No queríamos que volviera a pasar y es por eso que optamos por adquirir hardware certificado y ya configurado de la mano de profesionales (avanzada7), elegimos la máquina  NLX4000 por ser el producto del año. Incluso hemos adquirido horas de mantenimiento remoto.
Pues bien, imaginad nuestra sorpresa que tras un corte de luz, el servidor no arranca solo, si no que hay que ir a pulsar el botón, a pesar de estar correctamente configurado.
2014-09-29 19.49.00

 

Correo al proveedor oficial, preguntando si dispone de “wake on lan”  y nos dicen que creen que no, y que la opcion de la bios debe de funcionar (con el wake on lan, ya podríamos haber programado un script que se lanzara al no devolver ping).

Correo al fabricante de la placa base (chino), los cuales ya nos dicen muy por encima algo de que existe un problema en esa función el cual se necesita cambiar unas resistencias.

Correo a Elastix y estos ya nos dicen que esa función no esta operativa debido a una resistencia mal colocada en el panel lcd, adjunta una imagen de como debería de estar, y advirtiendo que esto podría anular la garantía.

Con dos cojones, casi dos mil leños entre el hardware y el software configurado con menos de un mes entre nosotros  para que una funcionalidad básica no le funcione. Suerte que probamos las cosas durante semanas y meses por que nos llegamos a enterar cuando esta en producción y nos echamos a llorar …

Pero garantía aparte, hemos decidido hacer el arreglo por nuestra cuenta y riesgo por que es bien sencillo y necesitamos para poder dormir mas tranquilos que funcione como debe.

La resistencia R62, debe de estar en el hueco de R61

Desmontar el LCD

2014-09-23 20.39.12

 

 

Aquí se ve de que resistencia hablamos.2014-09-23 20.44.33

 

 

Nosotros hemos usado la pistola de aire caliente, así que hemos protegido la zona de alrededor con cinta kapton.
2014-09-23 20.51.32

 

Y listo, ahora a montar todo como estaba y a dormir un poco mas tranquilo.

 

IMG-20140925-WA0007

 

 

Ya podían decir, enviadnos el hardware que corregiremos el fallo nosotros mismos, en lugar de andar avisando de la perdida de garantía.

Pero bueno, lo entretenido que esta uno durante la feria de su pueblo escribiendo estas líneas no tiene precio.

 

 

 

 

 

 

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR