Após cerca de 20 anos desde o lançamento da primeira versão beta, muitas empresas no mundo inteiro optam por instalar Zabbix a fim agregar inteligência e agilidade ao mecanismo de cibersegurança.
Mas como o Zabbix ajuda a lidar com as ciberameaças cada vez mais complexas? É sobre isso que falaremos neste artigo. Acompanhe!
O que é Zabbix
Zabbix é um software de monitoramento de infraestrutura de TI gratuito, aberto e robusto, desenvolvido em linguagem PHP. Porém o Zabbix não se limita a monitorar infra: é possível implementar estratégias de observability que se estendem a aplicações, serviços, telefonia, SLA, entre outras coisas.
Como um programa gratuito pode oferecer tantas features? O programa de parcerias do Zabbix conta com mais de 200 empresas e organizações que ajudam a desenvolver projetos sofisticados relacionados ao Zabbix, entre muitas outras que atuam como resellers e parceiros certificados que revendem seus serviços de:
- suporte técnico de várias categorias;
- consultoria;
- desenvolvimento;
- integração;
- solução de problemas remota; etc.
Além dos parceiros, diversas empresas renomadas utilizam o Zabbix e ajudam a aprimorar o seu desenvolvimento e sua integração com soluções voltadas a indústrias, como varejo, serviços financeiros, medicina, TI e muito mais. Entre elas estão: AWS, Cisco, IBM, Dell, Lenovo, Red Hat, TP-Link, HUAWEI, Docker e Vmware.
O que é possível fazer com Zabbix
Agora que sabemos um pouco da dimensão e da importância do Zabbix no mundo dos negócios, vamos explorar algumas das principais funcionalidades e casos de uso que elucidam problemas reais e comuns que o software ajuda a resolver.
Antes de tudo, precisamos entender que o carro-chefe do Zabbix é o monitoramento; pelo fato de ser software aberto, pode ser integrado com quaisquer soluções para monitorar e coletar dados de quaisquer fontes para fins de segurança, performance e disponibilidade.
Segurança
Com o Zabbix é possível monitorar uma série de coisas, como redes, servidores, aplicações, serviços e infraestruturas de cloud computing. No contexto de cibersegurança, tais recursos são essenciais para que atividades maliciosas sejam identificadas e mitigadas antes de causarem danos.
Além dos recursos de monitoramento, o Zabbix, graças à vasta diversidade de projetos incorporados, existem centenas de programas integrados via API que podem ser utilizados junto a tecnologias voltadas a VPN, HTTPS, antivírus, firewall, SSL, e também a projetos desenvolvidos por várias empresas e organizações, como Microsoft, IBM, Kaspersky, Avaya, AWS, CentOS, SELinux, Dell e muitas outras.
Por outras palavras, os padrões abertos do Zabbix dão origem a muitas inovações de segurança que permitem às empresas tornar seus mecanismos de defesa mais complexos e eficientes, independentemente de sistemas, hardware e operações que compõem o ambiente de trabalho; tudo isso a custos baixíssimos, uma vez que não há custos de licença de uso ou assinaturas.
Performance e disponibilidade
Muitos casos de uso de performance e disponibilidade vêm à tona com o Zabbix. A partir do momento em que se pode monitorar qualquer coisa, pode-se, por exemplo, obter dados de eventos de uma aplicação web que permitem saber, em tempo real, status de elementos de infraestrutura, como máquinas virtuais, data center e nuvem.
Um estudo de caso envolvendo a companhia de viagens MakeMyTrip mostra como a API do Zabbix é utilizada para monitorar uma infraestrutura híbrida, composta por data center e nuvem (privada e pública), em conjunto com ferramentas analíticas, como Apache Kafka, Grafana e AWS Elasticsearch.
Por meio dessa integração, os especialistas de dados obtêm métricas de memória, performance, consumo de CPU, segurança, entre outras que ajudam a garantir que a aplicação esteja o mais disponível, confiável e performática possível, sempre partindo da inteligência de dados.
Outro cenário interessante nesse sentido é a integração do Zabbix com o Google Analytics, que permite expandir as métricas voltadas a usuários finais que estão acessando o site e respectivos dispositivos e, também, emular a experiência do usuário antes de lançar alguma atualização, melhoria ou recurso.
Como instalar Zabbix nos sistemas operacionais Debian 10 e CentOS 8
Agora que já compreendemos boa parte do que o Zabbix permite fazer, vejamos como instalá-lo no Linux para você começar a fazer suas experiências ou, simplesmente, aprender a utilizar a solução. Primeiramente, apresentamos os procedimentos de instalação no Debian 10 e, depois, no CentOS 8.
No caso, simulamos a instalação e a configuração do servidor Zabbix com banco de dados MySQL, PHP e Apache, ou seja, Zabbix + LAMP. Vamos ao primeiro passo?
Instalando os componentes LAMP
Presumindo que você já tenha uma das distribuições instalada na máquina, resta montar e configurar o ambiente com PHP, Apache e MySQL. Não explicamos o passo a passo neste artigo, uma vez que temos um blog post completo sobre o assunto. Não tenha pressa: siga todos os passos necessários, faça os testes e volte aqui para continuar.
Instalando o servidor Zabbix no Debian 10
Um pré-requisito para a instalação do servidor é a habilitação do repositório oficial do Zabbix, o Zabbix Official Repository, composto por um conjunto de pacotes essenciais. Use os seguintes comandos:
# sudo wget https://repo.zabbix.com/zabbix/5.2/debian/pool/main/z/zabbix-release/zabbix-release_5.2-1+debian10_all.deb # sudo dpkg -i zabbix-release_5.2-1+debian10_all.deb # sudo apt update Em seguida, instale o servidor Zabbix incluindo frontend e agente: # apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
Com o servidor Zabbix devidamente instalado, chegou a hora de importar o esquema inicial (initial schema, em inglês) e os dados utilizando a senha recém-criada.
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Agora, configure a base de dados para o servidor Zabbix editando o arquivo /etc/zabbix/zabbix_server.conf no campo DBPassword — insira a senha seguindo o formato DBPassword=senha –, então inicie o servidor e o agente e configure-os para inicialização no boot do Debian 10.
# sudo systemctl restart zabbix-server zabbix-agent apache2 # sudo systemctl enable zabbix-server zabbix-agent apache2
Vamos ver se as coisas estão dando certo? Digite systemctl status zabbix-server para checar o servidor e, em seguida, systemctl status zabbix-agent para o agente, atentando-se para a mensagem “active (running)” que provavelmente aparecerá na segunda linha.
Instalando o servidor Zabbix no CentOS
Os caminhos para instalação do Zabbix no CentOS 8 são quase os mesmos em comparação ao Debian 10. A diferença está apenas nas peculiaridades de cada sistema — mais precisamente os comandos — e os links dos arquivos de instalação. Por isso, elencamos as etapas mais resumidamente, abaixo.
1. instale o repositório do Zabbix:
# rpm -Uvh https://repo.zabbix.com/zabbix/5.2/rhel/8/x86_64/zabbix-release-5.2-1.el8.noarch.rpm
2. instale o servidor, o frontend e o agente do Zabbix:
# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent
# dnf clean all
3. importe o schema e os dados usando o comando e a sua nova senha:
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
4. configure a base de dados para o servidor Zabbix editando o arquivo /etc/zabbix/zabbix_server.conf e modifique o campo:
DBPassword=sua_senha
5. inicie os processos do servidor e do agente Zabbix, ajustando-os para iniciarem junto com o sistema operacional:
# systemctl restart zabbix-server zabbix-agent httpd php-fpm # systemctl enable zabbix-server zabbix-agent httpd php-fpm
Observação: até aqui nos limitamos a instalar o Zabbix na máquina. A seguir, iniciaremos a próxima etapa do processo: a configuração do frontend — vale tanto para Debian quanto para CentOS.
Instalação da interface web do Zabbix
A interface web (ou frontend) do Zabbix facilita o gerenciamento do servidor e todas as novas configurações a serem feitas daqui em diante. Para acessá-la, abra o seu browser favorito e digite http://<ip_ou_nome_do_servidor>/zabbix na barra de endereço.
Surgirá a tela de introdução com um guia de instalação do frontend. Você pode selecionar a linguagem desejada, contanto que a mesma tenha sido aplicada nas configurações do servidor. Na dúvida, mantenha em inglês.
A tela seguinte exibirá os pré-requisitos de configuração — e também se o seu sistema atende a estes. Certifique-se da conformidade com esses requerimentos e prossiga para o próximo passo.
Trata-se de configuração de conexão com o banco de dados. Aqui, você entrará com os detalhes para conectar a base de dados com o Zabbix. Clique em Next Step e digite os detalhes do servidor Zabbix conforme os campos, abaixo.
Depois disso, selecione fuso horário de sua preferência e prossiga. Um resumo de pré-instalação será exibido para que você confira se as informações estão corretas — a instalação se iniciará na tela seguinte.
A instalação consiste apenas no download do arquivo de configuração, que deve ser salvo no diretório /var/www/html/zabbix/conf/zabbix.conf.php. Tudo pronto? Aguarde a tela para iniciar a sessão e entre com o nome Admin e senha zabbix.
Como configurar usuário no servidor Zabbix
Com a sessão inicializada, você se deparará com um dashboard pelo qual podemos fazer configurações diversas. Para verificar os usuários ativos, clique na aba Administration > Users; se a ideia é criar usuário, só clicar em Create user.
Imaginando um contexto de times, é necessário configurar métodos de entrega de notificações (o que no Zabbix é mencionado como “media”) para que cada usuário as receba em tempo real. Em uma equipe de cibersegurança, por exemplo, o alerta é imprescindível.
Para isso, clique na aba Media; selecione o canal para disparo de notificações, como email, e preencha os dados obrigatórios. Em “when active”, insira os dias e o horário de disponibilidade — 1-7, 00:00-24:00 significa que notificações de eventos podem ser recebidas em qualquer dia e horário, sendo que o valor 1 representa segunda-feira.
Agora, clique em Add para salvar a mídia e siga para a aba Permissions. Nela, podemos acrescentar todas as permissões e propriedades que serão atribuídas ao novo usuário. Perceba que os parâmetros são bastante abrangentes e fáceis de ajustar, podendo ser aplicados tanto a indivíduos quanto a grupos.
Quer uma boa notícia? A configuração do Zabbix está pronta! Se você tem algum projeto ou site e deseja iniciar o monitoramento de algum elemento, siga a documentação do Zabbix para configurar o host e realizar outros procedimentos.
Para aprender a dominar não só o Zabbix, mas tudo o que você precisa para se tornar um expert em Linux, acesse agora mesmo o curso online Profissionais Linux!