Debian 13 trixie

Zabbix 7.4 : Install2025/10/01

 

Install Zabbix which is an enterprise open source monitoring system.

[1]

Install Apache httpd, refer to here.

[2]

Configure SSL/TLS setting, refer to here. (not required but recommended)

[3]

Install PHP-FPM, refer to here.

[4]

Install MariaDB server, refer to here.

[5] Add Zabbix 7.4 repository and Install Zabbix server. To monitor Zabbix itself, Install Zabbix Agent, too.
root@dlp:~#
wget https://repo.zabbix.com/zabbix/7.4/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.4+debian13_all.deb

root@dlp:~#
dpkg -i zabbix-release_latest_7.4+debian13_all.deb

Selecting previously unselected package zabbix-release.
(Reading database ... 39559 files and directories currently installed.)
Preparing to unpack zabbix-release_latest_7.4+debian13_all.deb ...
Unpacking zabbix-release (1:7.4-1+debian13) ...
Setting up zabbix-release (1:7.4-1+debian13) ...

root@dlp:~#
apt update

root@dlp:~#
apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent2 php-mysql php-gd php-bcmath php-net-socket

[6] Create a database for Zabbix.
root@dlp:~#
mysql

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 11.8.3-MariaDB-0+deb13u1 from Debian -- Please help get to 10k stars at https://github.com/MariaDB/Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix character set utf8mb4 collate utf8mb4_bin; 
Query OK, 1 row affected (0.00 sec)

# replace the [password] to the any password you like
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'localhost' identified by 'password'; 
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> set global log_bin_trust_function_creators = 1; 
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> exit
Bye

root@dlp:~#
zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

Enter password:  
# the password you set above for [zabbix] user

root@dlp:~#
mysql -e "set global log_bin_trust_function_creators = 0;"
[7] Configure and start Zabbix Server.
root@dlp:~#
vi /etc/zabbix/zabbix_server.conf
# line 100 : confirm DB name

DBName=zabbix
# line 116 : confirm DB username

DBUser=zabbix
# line 125 : add DB user's password

DBPassword=password
root@dlp:~#
systemctl restart zabbix-server

root@dlp:~#
systemctl enable zabbix-server
[8] Configure and start Zabbix Agent to monitor Zabbix Server itself.
root@dlp:~#
vi /etc/zabbix/zabbix_agent2.conf
# line 82 : specify Zabbix server

Server=127.0.0.1
# line 135 : specify Zabbix server

ServerActive=127.0.0.1
# line 146 : change to your hostname

Hostname=
dlp.srv.world
root@dlp:~#
systemctl restart zabbix-agent2
[9] Change PHP values for Zabbix requirements.
root@dlp:~#
vi /etc/php/8.4/fpm/pool.d/www.conf
;; add to last line

php_value[max_execution_time] = 300
php_value[memory_limit] = 128M
php_value[post_max_size] = 16M
php_value[upload_max_filesize] = 2M
php_value[max_input_time] = 300
php_value[max_input_vars] = 10000
php_value[always_populate_raw_post_data] = -1
php_value[date.timezone] = Asia/Tokyo

root@dlp:~#
vi /etc/apache2/conf-enabled/zabbix.conf
# line 10 : change access permission if you need

#
Allow from all
Allow from 10.0.0.0/24
root@dlp:~#
systemctl reload apache2 php8.4-fpm
Matched Content