Zabbix Tutorial · 23 min read · Oct 09, 2025
Como Instalar e Configurar o Servidor e Cliente Zabbix no Rocky Linux 9

Zabbix é uma solução de monitoramento gratuita e de código aberto para infraestrutura de TI, como redes, servidores, máquinas virtuais e serviços em nuvem. Seu núcleo é escrito em C e Java, com o frontend escrito em PHP. O frontend fornece uma interface baseada na web para rastrear e monitorar métricas como utilização de rede, carga da CPU, espaço em disco, etc., e enviar notificações com base em gatilhos personalizados.
Zabbix opera como um modelo Cliente/Servidor. Os clientes ou agentes disponíveis para vários sistemas operacionais contatam o servidor para enviar os dados. Para sistemas sem um agente, o Zabbix oferece a opção de usar protocolos de monitoramento genéricos, como o Protocolo Simples de Gerenciamento de Rede (SNMP) ou a Interface de Gerenciamento de Plataforma Inteligente (IPMI).
Neste tutorial, você aprenderá como instalar o Servidor Zabbix e o cliente em um servidor Rocky Linux 9.
Pré-requisitos
- Dois servidores executando Rocky Linux 9. Um funcionará como o servidor e o outro será o cliente que monitoraremos usando o servidor.
- Um usuário não-root com privilégios sudo.
- Um Nome de Domínio Totalmente Qualificado (FQDN) como
zabbix.example.comapontando para seu servidor. - Uma conta SMTP com um serviço de e-mail como Amazon SES ou Mailgun.
- Tudo atualizado.
$ sudo dnf update - Alguns pacotes essenciais são necessários para o tutorial e para o funcionamento do Servidor Zabbix. Alguns deles já estarão no seu servidor.
$ sudo dnf install wget curl nano unzip yum-utils policycoreutils-python-utils -y
Passo 1 - Configurar o Firewall
O primeiro passo é configurar o firewall. O Rocky Linux usa o Firewall Firewalld. Verifique o status do firewall.
$ sudo firewall-cmd --state
running
O firewall funciona com diferentes zonas, e a zona pública é a padrão que usaremos. Liste todos os serviços e portas ativos no firewall.
$ sudo firewall-cmd --permanent --list-services
Deve mostrar a seguinte saída.
cockpit dhcpv6-client ssh
As portas 10050 e 10051 são necessárias para o servidor Zabbix se conectar ao agente.
$ sudo firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
Permita as portas HTTP e HTTPS.
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
Verifique novamente o status do firewall.
$ sudo firewall-cmd --permanent --list-all
Você deve ver uma saída semelhante.
público
alvo: padrão
inversão de bloqueio icmp: não
interfaces:
fontes:
serviços: cockpit dhcpv6-client http https ssh
portas: 10051/tcp 10050/tcp
protocolos:
encaminhamento: sim
mascarar: não
portas de encaminhamento:
portas de origem:
bloqueios icmp:
regras ricas:
Recarregue o firewall para habilitar as alterações.
$ sudo firewall-cmd --reload
Passo 2 - Definir o SELinux para modo permissivo
Configure o SELinux para funcionar em modo permissivo. Neste modo, o SELinux não bloqueará nenhum processo, mas registrará tudo no arquivo de log de auditoria. Usaremos isso mais tarde para configurar as regras do SELinux.
$ sudo setenforce 0 && sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
Verifique o status do SELinux.
$ sestatus
Status do SELinux: habilitado
Montagem do SELinuxfs: /sys/fs/selinux
Diretório raiz do SELinux: /etc/selinux
Nome da política carregada: direcionada
Modo atual: permissivo
Modo do arquivo de configuração: permissivo
Status da política MLS: habilitado
Status da política deny_unknown: permitido
Verificação de proteção de memória: atual (seguro)
Versão máxima da política do kernel: 33
Passo 3 - Configurar o repositório Nginx e PHP
O pacote Zabbix instalará automaticamente o PHP e o Nginx. Mas ele pegará versões mais antigas deles. Portanto, precisamos garantir que o processo instale a versão mais recente disponível.
Crie e abra o arquivo /etc/yum.repos.d/nginx.repo para edição.
$ sudo nano /etc/yum.repos.d/nginx.repo
Cole o seguinte código nele.
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
Uma vez que você tenha terminado, salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Habilite o repositório principal do Nginx.
$ sudo dnf config-manager --enable nginx-mainline
Em seguida, precisamos configurar o repositório PHP.
O primeiro passo é pegar o repositório Epel.
$ sudo dnf install epel-release -y
Em seguida, instale o repositório Remi.
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
Verifique os streams de PHP disponíveis.
$ dnf module list php -y
Nome Stream Perfis Resumo
php 8.1 comum [d], devel, minimal Linguagem de script PHP
Repositório Modular do Remi para Enterprise Linux 9 - x86_64
Nome Stream Perfis Resumo
php remi-7.4 comum [d], devel, minimal Linguagem de script PHP
php remi-8.0 comum [d], devel, minimal Linguagem de script PHP
php remi-8.1 comum [d], devel, minimal Linguagem de script PHP
php remi-8.2 comum [d], devel, minimal Linguagem de script PHP
php remi-8.3 comum [d], devel, minimal Linguagem de script PHP
Dica: [d]efault, [e]nabled, [x]disabled, [i]nstalled
A versão padrão é 8.1. No momento da redação deste tutorial, o Zabbix é compatível com o PHP 8.2. Portanto, habilite o repositório PHP 8.2 do Remi. A próxima versão do Zabbix suportará o PHP 8.3, então você pode habilitar isso se sua versão do Zabbix for 6.0.26 ou superior.
$ sudo dnf module reset php -y
$ sudo dnf module enable php:remi-8.2
Agora, podemos prosseguir com a instalação do Zabbix.
Passo 4 - Instalar o Servidor Zabbix
Os pacotes Zabbix são fornecidos por padrão no repositório EPEL. Antes de prosseguir com nossa instalação, precisamos desativá-los. Abra o /etc/yum.repos.d/epel.repo para edição e adicione a seguinte linha na seção [epel].
[epel]
...
excludepkgs=zabbix*
Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
A versão mais recente do Zabbix é 6.4.x, mas vamos continuar usando a versão LTS (suporte a longo prazo), que é muito mais estável para um ambiente de produção.
Instale o repositório do Zabbix.
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm
Remova todo o cache RPM.
$ sudo dnf clean all
Instale o servidor Zabbix, frontend e agente. Usaremos o servidor PostgreSQL para nosso propósito e, portanto, precisamos do pacote zabbix-web-pgsql. Se você estiver usando MySQL/MariaDB/Percona, precisará instalar o pacote zabbix-web-mysql.
$ sudo dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
Passo 5 - Instalar e Configurar o PostgreSQL
O Zabbix funciona com PostgreSQL 13 e superior. O Rocky Linux 9 vem com o PostgreSQL 13 por padrão. No entanto, usaremos o PostgreSQL 16 para nosso tutorial.
Instale o arquivo RPM do repositório PostgreSQL.
$ sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Desative o módulo PostgreSQL embutido.
$ sudo dnf -qy module disable postgresql
Agora, você pode instalar o PostgreSQL usando o comando abaixo.
$ sudo dnf install -y postgresql16-server postgresql16-contrib
Inicialize o banco de dados.
$ sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
Habilite o serviço PostgreSQL.
$ sudo systemctl enable postgresql-16
Inicie o serviço PostgreSQL.
$ sudo systemctl start postgresql-16
Verifique o status do serviço PostgreSQL.
$ sudo systemctl status postgresql-16
? postgresql-16.service - Servidor de banco de dados PostgreSQL 16
Carregado: carregado (/usr/lib/systemd/system/postgresql-16.service; habilitado; preset: desativado)
Ativo: ativo (em execução) desde Qui 2024-01-18 14:54:46 UTC; 10s atrás
Docs: https://www.postgresql.org/docs/16/static/
Processo: 3407 ExecStartPre=/usr/pgsql-16/bin/postgresql-16-check-db-dir ${PGDATA} (código=exited, status=0/SUCCESS)
Main PID: 3412 (postgres)
Tarefas: 7 (limite: 24694)
Memória: 17.4M
CPU: 117ms
CGroup: /system.slice/postgresql-16.service
??3412 /usr/pgsql-16/bin/postgres -D /var/lib/pgsql/16/data/
??3413 "postgres: logger "
??3414 "postgres: checkpointer "
??3415 "postgres: background writer "
??3417 "postgres: walwriter "
??3418 "postgres: autovacuum launcher "
??3419 "postgres: logical replication launcher "
Crie o usuário do banco de dados Zabbix.
$ sudo -u postgres createuser --pwprompt zabbix
Você será solicitado a inserir a senha.
Digite a senha para o novo papel:
Digite-a novamente:
Crie o banco de dados Zabbix.
$ sudo -u postgres createdb -O zabbix zabbix
Importe o esquema inicial e os dados do banco de dados. Você será novamente solicitado a inserir sua senha.
$ zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Esse processo pode levar alguns minutos para terminar.
Abra o arquivo /etc/zabbix/zabbix_server.conf para edição.
$ sudo nano /etc/zabbix/zabbix_server.conf
Encontre a variável DBPassword, descomente-a removendo o hash (#) na frente dela e defina seu valor como a senha escolhida na etapa anterior.
DBPassword=psqlpassword
Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Inicie e habilite os serviços do servidor e agente Zabbix.
$ sudo systemctl enable zabbix-server zabbix-agent --now
Passo 6 - Configurar o PHP
O Zabbix instala arquivos de configuração do PHP e Nginx que usaremos. No entanto, precisamos fazer algumas edições antes de podermos usá-los.
Primeiro, precisamos abrir /etc/php-fpm.d/zabbix.conf para edição.
$ sudo nano /etc/php-fpm.d/zabbix.conf
Altere os valores de user = apache e group = apache para nginx, conforme mostrado abaixo.
user = nginx
group = nginx
Isso ocorre porque, como estamos usando o Nginx do seu repositório oficial, ele é executado sob o usuário nginx e não apache, que é o que a cópia da distribuição do Nginx executa.
Você também pode editar quaisquer outros valores relacionados ao PHP ou adicionar quaisquer definições personalizadas aqui. Uma vez terminado, salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Inicie e habilite o serviço PHP-FPM.
$ sudo systemctl enable php-fpm --now
Passo 7 - Instalar SSL
Precisamos instalar o Certbot para gerar o certificado SSL. Usaremos o instalador de pacotes Snapd para isso. Como o Rocky Linux não vem com ele, instale o instalador Snapd. Ele requer o repositório EPEL (Pacotes Extras para Linux Empresarial) para funcionar. Mas, como já o instalamos na etapa 3, podemos seguir em frente.
Instale o Snapd.
$ sudo dnf install -y snapd
Habilite e inicie o serviço Snap.
$ sudo systemctl enable snapd --now
Instale o pacote Snap core e certifique-se de que sua versão do Snapd esteja atualizada.
$ sudo snap install core && sudo snap refresh core
Crie os links necessários para o Snapd funcionar.
$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh
Instale o Certbot.
$ sudo snap install --classic certbot
Use o seguinte comando para garantir que o comando Certbot possa ser executado criando um link simbólico para o diretório /usr/bin.
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Verifique se o Certbot está funcionando corretamente.
$ certbot --version
certbot 2.8.0
Execute o seguinte comando para gerar um Certificado SSL.
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d zabbix.example.com
O comando acima fará o download de um certificado para o diretório /etc/letsencrypt/live/zabbix.example.com em seu servidor.
Gere um certificado de grupo Diffie-Hellman.
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Verifique o serviço do agendador de renovação do Certbot.
$ sudo systemctl list-timers
Você encontrará snap.certbot.renew.service como um dos serviços agendados para execução.
PRÓXIMO RESTANTE ÚLTIMO PASSADO UNIDADE ATIVA -------------------------------------------------------------------------------------------------------------------------------------
Sáb 2024-01-20 10:04:02 UTC 1min 32s restante Sáb 2024-01-20 08:52:11 UTC 1h 10min atrás dnf-makecache.timer dnf-makecache.service
Dom 2024-01-21 00:00:00 UTC 13h restante Sáb 2024-01-20 00:00:10 UTC 10h atrás logrotate.timer logrotate.service
Sáb 2024-01-20 21:13:00 UTC 11h restante Sáb 2024-01-20 08:19:11 UTC 1h 43min atrás snap.certbot.renew.timer snap.certbot.renew.service
Faça um teste do processo para verificar se a renovação do SSL está funcionando corretamente.
$ sudo certbot renew --dry-run
Se você não vir erros, está tudo pronto. Seu certificado será renovado automaticamente.
Passo 8 - Configurar o Nginx
O Zabbix instala um arquivo de configuração padrão do Nginx. Precisamos editar para adicionar o código para habilitar os certificados SSL. Também precisamos alterar a porta listen e adicionar código para redirecionar links HTTP para HTTPS.
Abra o arquivo /etc/nginx/conf.d/zabbix.conf para edição.
$ sudo nano /etc/nginx/conf.d/zabbix.conf
Edite o código para que o arquivo fique assim:
server {
listen 443 ssl;
listen [::]:443 ssl;
http2 on;
root /usr/share/zabbix;
index index.php;
access_log /var/log/nginx/zabbix.access.log;
error_log /var/log/nginx/zabbix.error.log;
ssl_certificate /etc/letsencrypt/live/zabbix.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/zabbix.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/zabbix.example.com/chain.pem;
ssl_session_timeout 5m;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
location = /favicon.ico {
log_not_found off;
}
location / {
try_files $uri $uri/ =404;
}
location /assets {
access_log off;
expires 10d;
}
location ~ \.ht {
deny all;
}
location ~ /(api/|conf[^\.]|include|locale) {
deny all;
return 404;
}
location /vendor {
deny all;
return 404;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php-fpm/zabbix.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_param DOCUMENT_ROOT /usr/share/zabbix;
fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name;
fastcgi_param PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name;
include fastcgi_params;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
}
# forçar HTTPS
server {
listen 80;
listen [::]:80;
server_name zabbix.example.com;
return 301 https://$host$request_uri;
}
Uma vez terminado, salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Abra o arquivo /etc/nginx/nginx.conf para edição.
$ sudo nano /etc/nginx/nginx.conf
Adicione a seguinte linha antes da linha include /etc/nginx/conf.d/*.conf;.
server_names_hash_bucket_size 64;
Salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Verifique sua configuração do Nginx.
$ sudo nginx -t
Inicie e habilite o serviço Nginx.
$ sudo systemctl enable nginx --now
Passo 9 - Acessar o Frontend do Zabbix
Antes de instalar o frontend do Zabbix, defina a permissão no diretório /etc/zabbix/web para que o Nginx possa acessá-lo.
$ sudo chown -R nginx:nginx /etc/zabbix/web
Abra a URL https://zabbix.example.com em seu navegador e você verá a seguinte tela.

Clique no botão Próximo passo para finalizar a instalação do Zabbix. A próxima página verifica os requisitos do sistema e se todos estão satisfeitos.

Se não houver problemas, clique no botão Próximo passo para prosseguir. Em seguida, você será solicitado a inserir suas credenciais do banco de dados. Desmarque a opção Criptografia TLS do Banco de Dados, pois não a configuramos.

Pressione o botão Próximo passo para prosseguir. Insira o nome do seu servidor Zabbix. No entanto, é opcional, mas se configurado, será exibido na barra de menu e nos títulos das páginas.

Pressione o botão Próximo passo para prosseguir. Você será solicitado a confirmar todas as configurações.

Se tudo estiver certo, pressione o botão Próximo passo para prosseguir. Você deve ver a mensagem informando que a instalação foi bem-sucedida.

Clique no botão Concluir para finalizar o processo. Você será levado à página de login.

O nome de usuário padrão é Admin e a senha é zabbix. Insira as informações de login e clique no botão Entrar para acessar o painel do Zabbix.

Passo 10 - Configurar o SELinux
Habilite o daemon HTTP para se conectar ao Zabbix.
$ sudo setsebool -P httpd_can_connect_zabbix 1
Permita que o Zabbix se conecte a todas as portas TCP.
$ sudo setsebool -P zabbix_can_network on
Habilite o daemons_enable_cluster_mode para evitar erros do gerenciador HA.
$ sudo setsebool -P daemons_enable_cluster_mode on
Crie um pacote de política SELinux personalizado usando o log de auditoria.
$ sudo grep "denied.*zabbix" /var/log/audit/audit.log | audit2allow -M zabbix_policy
****************** IMPORTANTE ********************* Para tornar este pacote de política ativo, execute:
semodule -i zabbix_policy.pp
Instale o pacote de política SELinux personalizado criado.
$ sudo semodule -i zabbix_policy.pp
Execute o comando para verificar se há erros no banco de dados.
$ sudo sealert -a /var/log/audit/audit.log
Ele sugerirá muitas regras a serem aplicadas.
Execute os seguintes comandos.
$ sudo ausearch -c 'php-fpm' --raw | audit2allow -M my-phpfpm
$ sudo semodule -X 300 -i my-phpfpm.pp
$ sudo ausearch -c 'zabbix_agentd' --raw | audit2allow -M my-zabbixagentd
$ sudo semodule -X 300 -i my-zabbixagentd.pp
Aplique a política para permitir que o Nginx tenha acesso ao PostgreSQL.
$ sudo setsebool -P httpd_can_network_connect_db 1
Aplique a política para permitir que conexões sejam feitas para hosts externos.
$ sudo setsebool -P httpd_can_network_connect 1
Defina o SELinux para modo de aplicação.
$ sudo setenforce 1 && sudo sed -i 's/^SELINUX=.*/SELINUX=enforcing/g' /etc/selinux/config
Passo 11 - Instalar o Agente Zabbix em um sistema remoto
A principal função do agente Zabbix é coletar informações do sistema e enviá-las ao servidor Zabbix central para análise. Instalaremos o agente em um sistema Rocky Linux 9, mas você pode fazer isso em qualquer distribuição.
Passo 11.1 - Configurar o Firewall no sistema remoto
Abra a porta 10050 para permitir que o agente Zabbix se conecte ao servidor.
$ sudo firewall-cmd --add-port=10050/tcp --permanent --zone=public
$ sudo firewall-cmd --reload
Passo 11.2 - Instalar o Agente Zabbix
Você precisa repetir o passo 4, exceto pela última instrução de instalação. Isso significa editar o arquivo /etc/yum.repos.d/epel.repo e adicionar a seguinte linha na seção [epel].
[epel]
...
excludepkgs=zabbix*
Em seguida, instale o repositório Zabbix e limpe o cache RPM.
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm
$ sudo dnf clean all
Instale o agente Zabbix.
$ sudo dnf install zabbix-agent
Passo 11.3 - Configurar o Agente Zabbix
O Zabbix suporta criptografia baseada em certificado, mas para a simplicidade deste tutorial, usaremos chaves pré-compartilhadas (PSK) para proteger a conexão entre o servidor e o agente.
Gere um arquivo PSK.
$ sudo sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Mostre a chave para copiar.
$ cat /etc/zabbix/zabbix_agentd.psk
797c84746dfe86f71b0f207785906d2bb886be27149b296d86df6b1ec9de6bbe
Copie esta chave porque precisaremos dela mais tarde.
O agente Zabbix armazena sua configuração no arquivo /etc/zabbix/zabbix-agentd.conf. Abra-o para edição.
$ sudo nano /etc/zabbix/zabbix_agentd.conf
Descomente as seguintes variáveis e atualize seus valores conforme mostrado abaixo.
Server=
ServerActive=
HostMetadata=ZabbixLinuxClient
Hostname=zabbixclient.example.com
Coloque o endereço IP do seu servidor Zabbix como valor para as variáveis Server e ServerActive. A variável HostMetadata pode ser qualquer coisa que você possa usar para identificar o sistema. Ela também é usada no processo de auto-registro na interface web do Zabbix, que falaremos mais tarde. O item Hostname refere-se ao nome do sistema do nó do agente Zabbix.
Você pode descobrir o nome do host usando o seguinte comando.
$ cat /etc/hostname
Em seguida, encontre a seção que configura uma conexão segura entre o servidor e o agente. Encontre a variável TLSConnect e altere seu valor de unencrypted para psk, conforme mostrado abaixo.
...
### Opção: TLSConnect
# Como o agente deve se conectar ao servidor ou proxy. Usado para verificações ativas.
# Apenas um valor pode ser especificado:
# unencrypted - conectar sem criptografia
# psk - conectar usando TLS e uma chave pré-compartilhada
# cert - conectar usando TLS e um certificado
#
# Obrigatório: sim, se os parâmetros de certificado TLS ou PSK forem definidos (mesmo para conexão 'não criptografada')
# Padrão:
# TLSConnect=psk
...
Em seguida, localize a seção TLSAccept e altere seu valor para psk, conforme mostrado abaixo.
...
### Opção: TLSAccept
# Quais conexões de entrada aceitar.
# Vários valores podem ser especificados, separados por vírgula:
# unencrypted - aceitar conexões sem criptografia
# psk - aceitar conexões protegidas com TLS e uma chave pré-compartilhada
# cert - aceitar conexões protegidas com TLS e um certificado
#
# Obrigatório: sim, se os parâmetros de certificado TLS ou PSK forem definidos (mesmo para conexão 'não criptografada')
# Padrão:
# TLSAccept=psk
...
Em seguida, encontre a seção TLSPSKIdentity e altere seu valor para PSK 001, conforme mostrado.
...
### Opção: TLSPSKIdentity
# String única, sensível a maiúsculas e minúsculas, usada para identificar a chave pré-compartilhada.
#
# Obrigatório: não
# Padrão:
# TLSPSKIdentity=PSK 001
...
Este é o ID PSK que você usará para adicionar o host através da interface web do Zabbix.
Por fim, localize a seção TLSPSKFile e altere seu valor para o local do arquivo PSK, conforme mostrado.
...
### Opção: TLSPSKFile
# Caminho completo de um arquivo contendo a chave pré-compartilhada.
#
# Obrigatório: não
# Padrão:
# TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
...
Uma vez terminado, salve o arquivo pressionando Ctrl + X e digitando Y quando solicitado.
Passo 11.4 - Iniciar o Agente Zabbix
Inicie e habilite o serviço do agente Zabbix.
$ sudo systemctl enable zabbix-agent --now
Passo 12 - Adicionar o Cliente Zabbix ao frontend do Zabbix para monitoramento
Podemos adicionar um novo host aos grupos de hosts definidos existentes ou criar um novo grupo de hosts. Os grupos de hosts permitem que você categorize os tipos de nós que está monitorando. Para criar um novo grupo de hosts, abra a opção Grupos de hosts no menu Configuração.
Adicione o nome do grupo na caixa e clique no botão Aplicar para criar o grupo.
Para criar um novo host, clique na opção Hosts no menu Configuração e clique no botão Criar host no canto superior direito.

Adicione o nome do host do nó Zabbix.
Digite Linux pelo agente Zabbix na seção Templates e selecione o template no dropdown.
Da mesma forma, digite Servidores Linux na seção Grupos e selecione-o.
Clique no botão Adicionar na seção Interfaces e selecione Agente.
Em seguida, adicione o endereço IP do nó cliente Zabbix. Uma vez que você tenha terminado, o popup completo de Novo host deve parecer com o seguinte.

Em seguida, mude para a aba Criptografia. Selecione PSK para as opções Conexões para host e Conexões do host. Defina o ID PSK como PSK 001, que é o valor que definimos na etapa 11.3 para a variável TLSPSKIdentity anteriormente. Em seguida, defina o valor PSK como a chave que você gerou na máquina do agente anteriormente.

Uma vez terminado, clique no botão Adicionar para finalizar a adição do host.
Você deve ver o novo host na lista com um rótulo verde indicando que o agente está conectado ao servidor e está funcionando conforme o esperado.

Passo 13 - Configurar Notificações por E-mail
O Zabbix suporta muitos tipos de notificações, como e-mail, Slack, Telegram, SMS, etc. Para o propósito do nosso tutorial, configuraremos notificações por e-mail. Visite a interface do Zabbix, clique em Administração e depois em Tipos de mídia no menu à esquerda. Você verá dois tipos de e-mail, um para e-mail em texto simples e o outro para e-mail em HTML.

Clique na opção Email (HTML) e você verá a seguinte página.

Insira os detalhes do seu servidor SMTP. Para nosso tutorial, estamos usando o serviço Amazon SES. Clique no botão Atualizar assim que terminar para salvar os detalhes. Você será levado de volta à página Tipos de mídia. Clique no botão Testar na página para testar as configurações de e-mail. Isso criará um popup. Preencha seu endereço de e-mail e clique no botão Testar para enviar um e-mail de teste.

Você deve ver uma mensagem de sucesso no popup informando que funcionou bem e deve receber o seguinte e-mail em sua caixa de entrada. Feche o popup clicando no botão Cancelar.

Passo 14 - Criar um novo usuário
O usuário padrão do Zabbix não está configurado para receber qualquer tipo de notificação. Embora possamos fazer isso, o usuário padrão também é inseguro para usar. A melhor opção é criar um novo usuário e, em seguida, desativar o usuário padrão.
Visite a seção Administração >> Usuários do menu e clique no botão Criar usuário no canto superior direito para abrir a seguinte página.

Preencha os detalhes do usuário. Selecione Administradores do Zabbix como o grupo de usuários. Assim que terminar, clique na aba Mídia. Clique no botão Adicionar e selecione Email (HTML) como o tipo.

Insira seu endereço de e-mail no campo Enviar para e clique no botão Adicionar para adicionar a opção de e-mail. Em seguida, mude para a aba Permissões e clique no botão Selecionar para adicionar o papel de super administrador.

Clique no botão Adicionar para finalizar a adição do usuário. Em seguida, você precisa sair da interface, entrar novamente como o novo usuário e voltar à página do usuário. Clique no usuário Admin, selecione o grupo Desativado e atualize o usuário. Isso desativará o usuário padrão para não ser usado.
Passo 15 - Enviar um Alerta de Teste
Por padrão, o Zabbix rastreia a quantidade de espaço livre no servidor. Ele detecta todas as montagens de disco e realiza verificações regularmente.
O primeiro passo é habilitar o gatilho de notificação que permite que o Zabbix envie notificações a todos os administradores. O Zabbix já tem o gatilho padrão configurado. Precisamos habilitá-lo para funcionar. Visite Configuração >> Ações >> Ações de gatilho e clique no status Desativado para alterá-lo para Ativado, conforme mostrado.

Em seguida, faça login no nó Zabbix e crie um arquivo temporário grande o suficiente para acionar um alerta de uso de disco.
Primeiro, determine o espaço livre no servidor.
$ df -h
Sistema de arquivos Tamanho Usado Disponível Uso% Montado em
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 780M 51M 730M 7% /run
/dev/vda2 94G 12G 78G 13% /
/dev/vda1 260M 7.0M 253M 3% /boot/efi
tmpfs 390M 4.0K 390M 1% /run/user/1001
Isso mostra que temos cerca de 78 GB de espaço livre. Em seguida, use o comando fallocate para pré-alocar mais de 80% do espaço em disco. É grande o suficiente para acionar o alerta.
$ fallocate -l 74G /tmp/temp.img
Verifique o uso do disco novamente.
$ df -h
Sistema de arquivos Tamanho Usado Disponível Uso% Montado em
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 780M 54M 726M 7% /run
/dev/vda2 94G 86G 3.9G 96% /
/dev/vda1 260M 7.0M 253M 3% /boot/efi
tmpfs 390M 4.0K 390M 1% /run/user/1001
O Zabbix acionará um alerta sobre o espaço em disco e enviará um alerta por e-mail a respeito. O e-mail parecerá com o seguinte.

Você também pode verificar o painel para o alerta, que deve aparecer em segundos.

Delete o arquivo temporário quando terminar.
$ rm -f /tmp/temp.img
Você deve receber outro e-mail notificando que o problema foi resolvido.

Passo 16 - Configurar Registro Automático para Nós Linux
Quando você precisa adicionar vários nós ao servidor Zabbix, o processo pode se tornar um pouco tedioso. Felizmente, a interface do Zabbix permite automatizar o processo usando Registro Automático.
Visite Ações >> Ações de Registro Automático e clique no botão Criar ação no canto superior direito.

Uma vez na nova tela, dê um nome (Registro automático de servidores Linux) à ação.
Clique no botão Adicionar abaixo de Condições para adicionar uma condição e escolha Metadados do host como o tipo, contém como o operador e Linux como o valor.

Clique em Adicionar para prosseguir e a página de criar ação deve parecer com a seguinte.

Clique na aba Operações, selecione Adicionar ao grupo de hosts como a Operação e selecione Servidores Linux como os Grupos de Hosts. Clique no botão Adicionar para finalizar.

Se você quiser usar criptografia PSK, também pode configurar isso. Visite o menu Administração >> Geral >> Registro Automático e habilite ambas as opções de criptografia. Insira um ID PSK e uma chave PSK criados no servidor Zabbix. Você pode usar esse ID PSK e chave em cada nó e eles serão criptografados usando esses valores.

A partir de agora, toda vez que você instalar e configurar o agente Zabbix em um servidor Linux, ele será adicionado automaticamente à interface do Zabbix.
Conclusão
Isso conclui nosso tutorial sobre como instalar e configurar um servidor Zabbix em um sistema Rocky Linux 9. Também instalamos um agente Zabbix em um servidor remoto para se conectar ao servidor. Se você tiver alguma dúvida, poste nos comentários abaixo.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.