domingo, 15 de noviembre de 2015

Instalación de Zabbix y alertas por gmail en Ubuntu server 14.04

Wikipedia: Zabbix es un Sistema de Monitoreo de Redes creado por Alexei Vladishev. Está diseñado para monitorear y registrar el estado de varios servicios de red, Servidores, y hardware de red.
Usa MySQLPostgreSQLSQLiteOracle o IBM DB2 como base de datos. Su backend está escrito en C y el frontend web está escrito en PHP. Zabbix ofrece varias opciones de monitoreo:
  • Chequeos simples que pueden verificar la disponibilidad y el nivel de respuesta de servicios estándar como SMTP o HTTP sin necesidad de instalar ningún software sobre el host monitoreado.
  • Un agente Zabbix puede también ser instalado sobre máquinas UNIX y Windows para monitorear estadísticas como carga deCPU, utilización de red, espacio en disco, etc.
  • Como alternativa a instalar el agente sobre los host, Zabbix incluye soporte para monitorizar vía protocolos SNMPTCP yICMP, como también sobre IPMIJMXSSHtelnet y usando parámetros de configuración personalizados. Zabbix soporta una variedad de mecanismos de notificación en tiempo real, incluyendo XMPP.
Lanzado sobre los términos de la versión 2 de la GNU General Public License, Zabbix es Software Libre.

Instalación en Ubuntu server (probado en versión 14.04)
Vea el siguiente video, los comandos de instalación están a continuación:


sudo apt-get update

//editar el archivo sources.list
sudo nano /etc/apt/sources.list
# Zabbix Application PPA
deb http://ppa.launchpad.net/tbfr/zabbix/ubuntu precise main
deb-src http://ppa.launchpad.net/tbfr/zabbix/ubuntu precise main

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C407E17D5F76A32B

sudo apt-get update
sudo apt-get install zabbix-server-mysql php5-mysql zabbix-frontend-php

//editar el archivo zabbix_server.conf
sudo nano /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=Your.Password.Here

cd /usr/share/zabbix-server-mysql/
sudo gunzip *.gz

//entrar a consola de mysql para crear el usuario zabbix
mysql -u root -p
//crear el usuario zabbix y contraseña, en este caso se pone zabbix123 como ejemplo. Use una propia.
create user 'zabbix'@'localhost' identified by 'zabbix123';
create database zabbix;
grant all privileges on zabbix.* to 'zabbix'@'localhost';
flush privileges;
exit;

//importar estructura de la base de datos
mysql -u zabbix -p zabbix < schema.sql
mysql -u zabbix -p zabbix < images.sql
mysql -u zabbix -p zabbix < data.sql

//editar el archivo prinicipal de php
sudo nano /etc/php5/apache2/php.ini
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = UTC

sudo cp /usr/share/doc/zabbix-frontend-php/examples/zabbix.conf.php.example /etc/zabbix/zabbix.conf.php

//editar el archivo zabbixconf.php ara poner la contraseña fijada para el usuario zabbix de mysql en pasos anteriores
sudo nano /etc/zabbix/zabbix.conf.php
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'Your.Password.Here'

sudo cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf  /etc/apache2/conf-enabled/zabbix.conf

sudo a2enmod alias
sudo service apache2 restart

//editar el archivo zabbix-server
sudo nano /etc/default/zabbix-server
START=yes

sudo service zabbix-server start


sudo apt-get -y install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules
cd /etc/postfix/
sudo cp main.cf main.cf.bkp

//editar el archivo main.cf
sudo nano main.cf
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_use_tls = yes

//editar el archivo sasl_password con sus credenciales de correo de gmail
sudo nano /etc/postfix/sasl_passwd
[smtp.gmail.com]:587 sucorreo@gmail.com:contrasena

sudo postmap hash:/etc/postfix/sasl_passwd
sudo chown root:root /etc/postfix/sasl_passwd
sudo chmod 600 /etc/postfix/sasl_passwd

//Verificar los certificados
cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem

sudo /etc/init.d/postfix reload

//realizar prueba de envio de correo por consola usando postfix
echo "prueba envio" | sudo mail -s " Test Postfix +Gmail+Zabbix " andres.gomez.ruiz@gmail.com

//verificar el log de eventos de email para comprobar que no existan errores
tail -f /var/log/mail.log

No hay comentarios:

Publicar un comentario en la entrada