Установка Zabbix на виртуальную машину
12.01.2026
Сервер Zabbix используется для сбора и анализа информации о состоянии узлов сети. В этой статье мы рассмотрим процесс установки Zabbix и развертывания веб-интерфейса для его управления. В качестве сервера баз данных мы будем использовать MariaDB/MySQL. Версия операционной системы, которая использовалась для написания инструкции — Ubuntu 24.04. Версия Zabbix — 6, также протестирована 7 версия.
Перед установкой Zabbix выполняем подготовительные процедуры.
1. Правильное время
Для получения актуальной информации необходимо, чтобы на сервере было правильное время.
Для этого сначала задаем правильную временную зону:
timedatectl set-timezone Europe/Moscow
Затем устанавливаем и запускаем сервис синхронизации времени:
apt install chrony
systemctl enable chrony
systemctl start chrony
2. Обновляем список пакетов в репозитории
Если наша система чистая и на ней не работают критически важные сервисы, стоит обновить установленные пакеты:
apt update && apt upgrade
Подготовка системы закончена.
Установка веб-сервера
Управление сервером Zabbix будет осуществляться посредством веб-интерфейса. Для этого необходимо установить и настроить веб-сервер, СУБД и PHP.
СУБД
В данной инструкции мы будем использовать сервер баз данных MariaDB. Zabbix версии 6 требует MariaDB версии 10.05.00 и выше. Но слишком свежая версия также может не поддерживаться сервером Zabbix. Необходимо уточнить системные требования на официальной странице.
В репозитории Ubuntu может не оказаться нужной версии СУБД, поэтому мы подключим репозиторий разработчика. Для этого переходим по ссылке downloads.mariadb.org/mariadb/repositories и выбираем нашу версию операционной системы, последний стабильный и поддерживаемый релиз MariaDB и геолокацию репозитория.
Ниже появится инструкция по добавлению репозитория и установке СУБД:
Согласно инструкции, создаем файл:
nano /etc/apt/sources.list.d/mariadb.list
Содержимое файла (пример):
# MariaDB 10.6 repository list - created 2025-12-26 12:35 UTC
# https://mariadb.org/download/
X-Repolib-Name: MariaDB
Types: deb
# deb.mariadb.org is a dynamic mirror if your preferred mirror goes offline.
URIs: https://mirror.docker.ru/mariadb/repo/10.6/ubuntu
Suites: noble
Components: main main/debug
Signed-By: /etc/apt/keyrings/mariadb-keyring.pgp
Импортируем ключ репозитория:
apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
Обновляем кэш пакетов:
apt update
Устанавливаем СУБД:
apt install mariadb-server
Разрешаем автозапуск сервера баз данных и запускаем MariaDB:
systemctl enable mariadb
systemctl start mariadb
Задаем пароль для суперпользователя СУБД:
mysqladmin -u root password
Веб-сервер
Для наших целей будем использовать веб-сервер NGINX.
Для его установки вводим команду:
apt install nginx
Запускаем NGINX и разрешаем его автозапуск:
systemctl enable nginx
systemctl start nginx
Открываем веб-браузер и переходим по ссылке http://<IP-адрес сервера>/ — мы должны увидеть окно приветствия:
PHP и PHP-FPM
Интерфейс Zabbix разработан на PHP — наш веб-сервер должен обрабатывать скрипты, написанные на нем. Смотрим на странице с системными требованиями, какая версия PHP рекомендована и создаем системную переменную для нашего удобства:
export PHP_VER=8.3
* в моем примере для Zabbix рекомендована версия 8.3.
С помощью страницы Установка разных версий PHP на Linux Ubuntu или Установка разных версий PHP на Linux Debian устанавливаем нужную нам версию PHP.
Устанавливаем PHP компоненты. В зависимости от того, нативная у нас версия PHP или установленная из дополнительного репозитория, команды будут отличаться.
а) Для нативной версии:
apt install php php-fpm php-mysql php-pear php-cgi php-common php-ldap php-mbstring php-snmp php-gd php-xml php-bcmath --no-install-recommends
б) Установленной из репозитория:
apt install php${PHP_VER}-fpm php${PHP_VER}-mysql php${PHP_VER}-pear php${PHP_VER}-cgi php${PHP_VER}-common php${PHP_VER}-ldap php${PHP_VER}-mbstring php${PHP_VER}-snmp php${PHP_VER}-gd php${PHP_VER}-xml php${PHP_VER}-bcmath --no-install-recommends
Установка PHP и компонентов завершены. Переходим к настройке.
Для настройки PHP, открываем файл:
vi /etc/php/${PHP_VER}/fpm/php.ini
Редактируем следующие параметры:
date.timezone = "Europe/Moscow"
max_execution_time = 300
post_max_size = 16M
max_input_time = 300
max_input_vars = 10000
* где:
- date.timezone — временная зона. В нашем примере выставлено московское время.
- max_execution_time — разрешенное время выполнения скрипта. Если последний будет выполняться дольше, система прервет его работу.
- post_max_size — максимальный объем передачи данных методом POST.
- max_input_time — время в секундах, за которое PHP должен разобрать входные данные GET и POST.
- max_input_vars — ограничение на количество входных переменных, которые могут быть переданы на сервер в одном запросе.
Разрешим запуск php-fpm и перезапустим его:
systemctl enable php${PHP_VER}-fpm
systemctl restart php${PHP_VER}-fpm
NGINX + PHP
Для того, чтобы NGINX обрабатывал PHP, открываем конфигурационный файл:
nano /etc/nginx/sites-enabled/default
В секции location добавляем параметр index:
index index.php index.html ...;
* значения индексных файлов могут быть перечислены через пробел, но первым должен быть index.php.
Внутри секции server добавим следующее:
location ~ \.php$ {
set $root_path /var/www/html;
fastcgi_buffer_size 32k;
fastcgi_buffers 4 32k;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
include fastcgi_params;
fastcgi_param DOCUMENT_ROOT $root_path;
}
* где /var/www/html — корневой путь хранения скриптов; /run/php/php8.3-fpm.sock — путь до сокетного файла php-fpm (зависит от версии PHP — в нашем случае 8.3).
Проверяем настройки NGINX и перезагружаем его:
nginx -t && nginx -s reload
Создаем index.php со следующим содержимым:
nano /var/www/html/index.php
Открываем веб-браузер и переходим по ссылке http://<IP-адрес сервера>/ — теперь мы должны увидеть сводную информацию по PHP и его настройкам:
* это старый скриншот, поэтому на нем версия PHP 8.2.
Веб-сервер готов для работы с Zabbix Web.
Установка и настройка сервера Zabbix
Переходим к установке самого Zabbix сервера.
Установка
Сначала установим репозиторий последней версии Zabbix. Для этого переходим на страницу https://repo.zabbix.com/zabbix/ и переходим в раздел с самой последней версией пакета - затем переходим в ubuntu/pool/main/z/zabbix-release/ - копируем ссылку на последнюю версию релиза:
* для открытия ссылки выше может потребоваться VPN.
Обратите внимание, что необходимо скопировать ссылку на файл для своей версии Ubuntu — в нашем примере это 24.04. Посмотреть свою версию операционной системы можно командой:
cat /etc/os-release | grep VERSION_ID
Скачиваем файл репозитория командой:
curl -sLO https://repo.zabbix.com/zabbix/6.1/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.1-1%2Bubuntu20.04_all.deb
Устанавливаем его:
dpkg -i zabbix-release_*.deb
Обновляем списки пакетов:
apt update
Устанавливаем сервер, вводя команду:
apt install zabbix-server-mysql zabbix-frontend-php zabbix-get zabbix-sql-scripts
Настройка базы данных
Входим в оболочку ввода SQL-команд:
mysql -uroot -p
Создаем базу данных:
CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_bin;
* мы создали базу zabbix.
Создаем пользователя для подключения и работы с созданной базой:
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbixpassword';
* в данном примере мы создали пользователя zabbix с доступом к базе zabbix и паролем zabbixpassword.
Выходим из SQL-оболочки:
quit
В составе Zabbix идет готовая схема для СУБД MySQL/MariaDB или PostgreSQL. В нашем случае, нам нужен MySQL.
Для применения схемы переходим в каталог:
cd /usr/share/zabbix-sql-scripts/mysql
В предыдущих версиях Zabbix путь до дампа базы был /usr/share/doc/zabbix-sql-scripts/mysql. Если мы не смогли найти нужный каталог с дампом, можно попробовать выполнить поиск командой:
find / -type f -iname server.sql.gz
Распаковываем архив с дампом базы:
gunzip server.sql.gz
Восстанавливаем базу из дампа:
mysql -u root -p zabbix < server.sql
* после ввода команды система запросит пароль. Необходимо ввести пароль, который мы задали после установки MariaDB.
Настройка Zabbix
Открываем конфигурационный файл Zabbix:
nano /etc/zabbix/zabbix_server.conf
Добавляем строку:
DBPassword=zabbixpassword
* мы настраиваем портал на подключение к базе с паролем zabbixpassword, который задали при создании базы для Zabbix.
И проверяем следующие строки:
DBName=zabbix
DBUser=zabbix
* имя базы и пользователя должны быть zabbix (как мы и создали в MariaDB).
Создаем каталог для инклудов конфигурационных файлов (по какой-то причине, он может быть не создан при установке):
mkdir /etc/zabbix/zabbix_server.conf.d
Запуск Zabbix Server
Разрешаем автозапуск сервера мониторинга:
systemctl enable zabbix-server
После запускаем сам сервер Zabbix:
systemctl start zabbix-server
Настройка NGINX
При установке zabbix-web файлы портала копируются в каталог /usr/share/zabbix. Наш веб-сервер работает с каталогом /var/www/html.
Меняем это — открываем конфигурационный файл NGINX:
nano /etc/nginx/sites-enabled/default
Редактируем параметры root и set $root_path:
root /usr/share/zabbix;
location ~ \.php$ {
set $root_path /usr/share/zabbix;
...
}
Перезапускаем NGINX:
systemctl restart nginx
Установка портала для управления Zabbix
Открываем браузер и переходим по адресу http://<IP-адрес сервера>/ — откроется страница установки Zabbix Web.
Выбираем нужный язык установки и кликаем по Next Step:
Если в списке языков не окажется нужного нам, устанавливаем локаль:
dpkg-reconfigure locales
* например, для русского языка выбираем в открывшемся окне ru_RU.UTF-8 UTF-8.
И перезапускаем обработчик PHP, в нашем случае:
systemctl restart php${PHP_VER}-fpm
Перезагружаем страницу установки и выбираем нужный язык.
В следующем окне внимательно смотрим на результаты проверки нашего веб-сервера — справа мы должны увидеть все OK. Если это не так, проверяем настройки и исправляем предупреждения и ошибки, после перезапускаем страницу F5 для повторной проверки настроек.
Когда все результаты будут OK, кликаем по Next Step:
В следующем окне мы оставляем настройки подключения к базе как есть — дополнительно прописываем пароль, который задали при создании пользователя zabbix. После нажимаем Next Step:
* в нашем случае, пароль был zabbixpassword;
В следующем окне оставляем все как есть:
... и нажимаем Next Step.
В последнем окне мы проверяем настройки и кликаем Next Step.
Установка завершена — нажимаем Finish:
В открывшемся окне вводим логин Admin и пароль zabbix (по умолчанию) — откроется окно со сводной информацией по мониторингу:
Давайте создавать вместе!
Свяжитесь с нами и мы проконсультируем по вопросам реализации IT-решений и найдем лучший подход к разработке
Контакты
Офис: г. Казань, Аделя Кутуя 88
Почта: info@nabla-lab.ru
Телефон: +7 (965) 595-62-78