Pular para o conteúdo principal

1/2 - Monitoramento com zabbix

Monitorando ambiente com Zabbix Server

Introdução

Atualmente cresce a necessidade de entender e vizualizar nosso ambiente como um todo, adicionar recursos para que haja uma proatividade e que problemas do dia a dia sejão solucionados de forma rápida, o monitoramento vem levantando essa bandeira para que possamos saber antes que aconteça.

O Zabbix é uma ferramenta de monitoramento estável no mercado, tendo como seu principal concorrente diversas ferramentas como Nargios e entre outros.

Zabbix possui uma interface amigável de fácil utilização que centraliza em abas diversas funções como monitoramento, configuração, etc.



Além disso ele proporciona expansão de recursos através de script que auxilia em uma lógica a ser seguida e compatibilidade no que a de novo.

Nesse post realizaremos uma pequena instalação e entendimento de cada parte, tentando tornar essa experiência mais didática e produtivo.



Instalação das dependências

Iremos realizar o procedimento na versão do Zabbix 2.2 instalando na distribuição Red Hat 6.
 



Nesse vídeo ilustra como foi realizado o procedimento de instalação e alguns conceitos dos arquivos:




Para que algumas funções sejão adicionados junto ao zabbix iremos instalar as dependencias do PHP:
# yum install php php-gd php-ldap php-mysql php-mbstring php-bcmath php-xml

E instalação dos recursos a serem utilizados:
# yum install zlib-devel mysql-devel glibc-devel curl-devel libidn-devel curl-devel openssl-devel net-snmp-devel popt-devel rpm-devel libssh2-devel glibc-devel OpenIPMI-devel OpenIPMI-libs iksemel iksemel-devel iksemel-utils openldap-devel fping make gcc

Instalação do pacote WEB:
# yum groupinstall "Web Server"

Não esquecendo de ativar o Apache e MySQL na inicialização:
# chkconfig mysqld on
# chkconfig httpd on 

Liberação da porta e salvamento das regras respectivamente:
# iptables -I INPUT 6 --dport 80 -p tcp -j ACCEPT
# service iptables save 
# service iptables restart

Desabilitando SELINUX:
# vi /etc/selinux/config
SELINUX=permissive

# setenforce 0

Pronto só esses pacotes já é o bastante.

Iremos testar se o apache está configurado, no browser coloque o endereço do servidor:
 



Ok, está tudo bem.

Instalação do Zabbix


A instalação do zabbix é simples, realizaremos o download no site official do zabbix e iremos realizar o processo de descompactar:
# mv ~/zabbix-2.2.6.tar.gz /usr/src

Entrando no diretório src e descompactar o dispositivo:
# cd /usr/src
# tar -xvf zabbix-2.2.6.tar.gz
# ln -s zabbix-2.2.6 zabbix
# cd zabbix-2.2.6

Criação do usuário que executará o processo zabbix:
# groupadd zabbix
# useradd -m -s /bin/bash -g zabbix zabbix

Ativando as configurações e os recursos:
# ./configure --enable-server --with-mysql --with-libcurl --with-jabber --with-net-snmp --with-openipmi --with-ssh2 --with-ldap --enable-agent --with-snmp –with-snmp-config

Segue a lista de alguns recursos ativados:
  • Habilitando Server.
  • Habilitando Agente.
  • Suporte ao banco MySQL.
  • Suporte a Jabber ( mensageria ).
  • Recurso de monitoramento SNMP.
  • Monitoramento com IPMI.
  • Habilitando recurso SSH2.
  • Autenticação com LDAP.
OBS: Se quiser adicionar novos recursos após todo o processo de instalação basta apenas executar "# make clean" e o novo configure com os recursos a serem agregados.
Depois do configure caso não aconteça erros ficará dessa forma:


E compilando com o os respectivos comando:
# make
# make install


Ambientando arquivos configuração:
# mkdir /etc/zabbix
# cd /etc/zabbix

Criando configuração
# ln -s /usr/local/etc/zabbix_agentd.conf
# ln -s /usr/local/etc/zabbix_server.conf
# chown -R zabbix. /etc/zabbix 

 Ambientando arquivos de inicialização do agent e do server:
# cp /usr/src/zabbix/misc/init.d/fedora/core/zabbix_agentd /etc/init.d
# cp /usr/src/zabbix/misc/init.d/fedora/core/zabbix_server /etc/init.d


Ativando serviços para que seja inicializado:
# chkconfig zabbix_agentd on
# chkconfig zabbix_server on

Ageitando a Base de Dados


Iremos basear nossa estrutura em MySQL, com isso iremos realizar.
# cd /usr/src/zabbix/database
# mysql -u root -p

Irá pedir a senha ou irá entrar sem senha ou no Debian na instalação foi solicitada.

Criando estrutura de database:

> create database zabbix ;
Query OK, 1 row affected (0.00 sec)

Dando permissão ao usuário zabbix a base criada:
> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'senhacreativa' ;
Query OK, 0 rows affected (0.00 sec)

Adicionando estrutura de tabelas dentro da base "zabbix" seguindo essa sequência, irá solicitar a senha do usuário zabbix ( com a seguinte opção "-u zabbix"):
# pwd 
/usr/src/zabbix/database

# mysql -u zabbix -p zabbix < mysql/schema.sql

# mysql -u zabbix -p zabbix < mysql/images.sql

# mysql -u zabbix -p zabbix < mysql/data.sql


Configuração


Configurando os serviços começando pelo arquivo do servidor:
# vi /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=[SENHA]

Liberando no firewall as portas respectivas:
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

Inicializaremos o serviço com o service:
# service zabbix_server start
# service zabbix_agentd start
# service iptables restart

Lembrando que não foi preciso configurar o zabbix_agentd porque no próprio arquivo de configuração do agente já esta indicando ele mesmo como servidor.

Continua no próximo bloco.

http://pensandoemlinux.blogspot.com.br/2014/10/22-monitoramento-com-zabbix.html

Comentários

Postagens mais visitadas deste blog

QOS Intermediário - Implantação em cliente real

Implantação de QOS - Intermediário Introdução Nessa etapa seguiremos novamente o caminho do controle de tráfego, mas com uma pitada mais avançada delimitando por classes e em tempo real. Nessa video aula trará um pouco de shell-script junto com controle de tráfego e passando um pouco que vai ser um dos próximos tópicos que é o ZABBIX. O video realmente ficou extenso, porque tentei documentar ao máximo cada parte e explicar o porque da utilização de cada função.

Zabbix - Entendendo Agentes

Zabbix Agente - Instalação e configuração Introdução O Zabbix trabalha em sua estrutura basicamente duas funções como: Gerente - Zabbix que armazena informações e entre outras, agindo como Servidor ) Agente - Zabbix instalado em hosts que coleta informações para serem enviadas ao gerente.  O que iremos entender nesse tutorial é os modos como os agentes trabalha ativo e passivo. Ativo - Ele envia os dados para o servidor ( gerente ), muito utilizado quando o host está em outras redes através de firewall. Passivo - Ele aguarda solicitação do servidor ( gerente ) para a entrega dos dados. A configuração do agente e de acordo com as nossas necessidades no momento.

IDS Sistema detecção de intrusão - FAIL2BAN

IDS com FAIL2BAN Introdução IDS é um sistema de detecção de intrusos que podemos implementar em dois segmentos em rede e sistema. Iremos abordar o fail2ban, uma poderosa ferramenta contra tentativas de força bruta ( meio de ataque através de diversas tentativas de acesso ), esse serviço é muito utilizado em servidores que respondem diretamente a internet, a configuração acaba sendo muito útil para bloqueio sendo sua principal vantagem a velocidade. Funcionamento Partindo de analises rigorosas de log como tentativas repetitivas de falhas como por exemplo em uma tentativa de acesso via SSH em nosso firewall: Jun 28 20:24:13 serv-firewall unix_chkpwd[1491]: password check failed for user (root) Jun 28 20:24:13 serv-firewall sshd[1489]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost= 192.168.122.1 user= root Jun 28 20:24:15 serv-firewall sshd[1489]: Failed password for root from 192.168.122.1 port