Versões utilizada: Debian 13(Trixie) + NGINX + PHP-8 + Zabbix-7.4
Ambiente mínimo: Servidor Zabbix+FrontEdnd (4GB Memória + 10GB HD) e servidor DB separado
A página de documentação do zabbix lista os requisitos para funcionamento.
Ajustar o repositório debian para baixar o pacote snmp-mibs-downloader, pois depende do repositório on-free
# vi /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/ trixie main non-free
deb http://ftp.us.debian.org/debian/ trixie-backports main
Instalar repositório
# wget https://repo.zabbix.com/zabbix/7.4/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.4+debian13_all.deb && dpkg -i zabbix-release_latest_7.4+debian13_all.deb && apt update
Instalar o server, frontend, agent2, mariadb-server
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2
Pacotes opcionais
# apt install rng-tools libheif-plugin-jpegdec libheif-plugin-j2kenc libheif-plugin-svtenc lm-sensors nginx-doc snmptrapd libgd-tools libheif-plugin-jpegenc libheif-plugin-kvazaar snmp snmp-mibs-downloader ssl-cert libheif-plugin-ffmpegdec libheif-plugin-j2kdec libheif-plugin-rav1e tdsodbc fcgiwrap php-pear diffutils-doc unzip ed read-edid i2c-tools pciutils librsvg2-bin speex fancontrol opus-tools liblcms2-utils low-memory-monitor libgd-dev
Instalar Zabbix Agent2
# apt install zabbix-agent2-plugin-mongodb zabbix-agent2-plugin-mssql zabbix-agent2-plugin-postgresql
Instalar serviço de banco de dados
# apt install mariadb-server
Criar o website de acesso ao zabbix em
# vi /etc/nginx/sites-available/zabbix.conf
server {
listen 80;
listen [::]:80;
charset utf-8;
access_log /var/log/nginx/zabbix.access.log;
error_log /var/log/nginx/zabbix.error.log;
root /usr/share/zabbix;
index index.php;
#server_name zabbix.dominio.com.br;
server_name _;
location / {
index index.php;
error_page 403 404 502 503 504 /zabbix/index.php;
try_files $uri $uri/ =404;
}
location ~ \.php$ {
if (!-f $request_filename) { return 404; }
expires epoch;
include snippets/fastcgi-php.conf;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_param SERVER_NAME $host;
}
# location ~ \.(jpg|jpeg|gif|png|ico)$ {
# access_log off;
# }
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 365d;
}
location ~ /\.ht {
deny all;
}
location ~ /\. {
access_log off;
log_not_found off;
deny all;
}
}
Criar o link simbólico para o nginx em sites-enable
# ln -s /etc/nginx/sites-available/zabbix.conf /etc/nginx/sites-enabled/zabbix.conf
# rm /etc/nginx/sites-enabled/default
Adicionar novos locales.
# dpkg-reconfigure locales
Escolha en_US.UTF-8
Reiniciado o serviço nginx e php
# nginx -t <- Se OK reinicie os serviços
# systemctl restart php8.4-fpm.service
# systemctl restart nginx.service
Execute o comando mysql_secure_installation para inciar o processo de configuração:
# mariadb-secure-installation
Enter current password for root (enter for none): Press Enter
Switch to unix_socket authentication [Y/n] Press Enter
Change the root password? [Y/n] Press Enter e insira um novo password
Remove anonymous users? [Y/n] Press Enter
Disallow root login remotely? [Y/n] n e Press Enter
Remove test database and access to it? [Y/n] Press Enter
Reload privilege tables now? [Y/n] Press Enter
Reinicie o serviço
# systemctl restart mariadb.service
Criar database inicial
# mariadb -u root -p
MariaDB [(none)]> create database zabbix character set utf8mb4 collate utf8mb4_bin;
MariaDB [(none)]> create user zabbix@localhost identified by 'password';
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost;
MariaDB [(none)]> set global log_bin_trust_function_creators = 1;
MariaDB [(none)]> quit;
NOTA: Nunca utilize o símbolo '@' nas senhas, isso pode gerar problemas de conexão.
Importe schema inicial e dados.
# zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
Enter password: <Senha usuario zabbix>
Desabilite a opção "log_bin_trust_function_creators" para imporatr a database schema.
# mariadb -u root -p
MariaDB [(none)]> set global log_bin_trust_function_creators = 0;
MariaDB [(none)]> quit;
Configure o acesso a database do Zabbix
# vi /etc/zabbix/zabbix_server.conf
DBPassword=password <- Mesma senha criada junto com conta zabbix no MariaDB
Inicie Zabbix server and agente
# systemctl restart zabbix-server zabbix-agent2 nginx php8.4-fpm
# systemctl enable zabbix-server zabbix-agent2 nginx php8.4-fpm
Acesse através da URL http://IP_Server ou http://zabbix.dominio.com.br.
1
2
3
4
5
6
7
8
Nota: após a finalização da instalação via Web, é criado o arquivo de conexão em /etc/zabbix/web/zabbix.conf.php que contém as informações de acesso ao banco de dados.
Link: 1 / 2