Гид по технологиям

Как установить и настроить Zabbix на Ubuntu и Debian

7 min read Мониторинг. Обновлено 09 Apr 2026
Установка и настройка Zabbix на Ubuntu/Debian
Установка и настройка Zabbix на Ubuntu/Debian

О чём эта инструкция

Эта статья проведёт вас через полный цикл установки и базовой настройки Zabbix на системах семейства Debian (Ubuntu, Debian). Подходит для серверов и рабочих станций. Приведены команды, примеры конфигураций, чеклисты для администратора и советы по безопасности.

В статье используются термины:

  • Zabbix — система мониторинга с сервером, агентами и веб-интерфейсом.
  • Агент — клиент Zabbix, установленный на мониторируемом хосте.
  • Frontend — веб-интерфейс Zabbix.

Кому будет полезно

  • Системным администраторам, развертывающим мониторинг в локальной сети;
  • Девопс-инженерам, запускающим мониторинг для инфраструктуры на Ubuntu/Debian;
  • Тем, кто хочет безопасно запустить Zabbix с MySQL и Apache.

Основные требования

Перед началом убедитесь, что у вас есть:

  • root-доступ или пользователь с sudo-привилегиями;
  • сервер с Ubuntu или Debian (поддерживаемые версии для Zabbix 5.x);
  • свободное место на диске для базы данных и логов;
  • установленный MySQL/MariaDB или готовность его установить;
  • Apache и PHP (пакеты будут установлены далее).

Важно: версия Zabbix в примерах — 5.0 (LTS). При желании используйте актуальную версию и соответствующий репозиторий.


Шаг 1 — Установка Apache и PHP

Zabbix использует PHP для фронтенда, поэтому сначала устанавливаем Apache и PHP.

Добавьте PPA (рекомендуется для Ubuntu, для Debian используйте backports/официальный репозиторий PHP):

sudo add-apt-repository ppa:ondrej/php

Обновите индекс пакетов и обновите систему:

sudo apt update
sudo apt upgrade -y

Установите Apache и необходимые модули PHP:

sudo apt install apache2 php php-mysql php-ldap php-bcmath php-gd php-xml libapache2-mod-php -y

Проверьте статус Apache:

systemctl status apache2

Если сервис не запущен, используйте:

systemctl start apache2
systemctl enable apache2

Примечание: при изменении версии PHP убедитесь, что Apache загружает корректный модуль libapache2-mod-php для установленной версии.

Шаг 2 — Установка и базовая настройка MySQL/MariaDB

Установите сервер баз данных:

sudo apt install mysql-server mysql-client -y

Запустите скрипт безопасной настройки:

sudo mysql_secure_installation

Ответьте утилите на вопросы (как правило, рекомендуется выбрать yes для удаления анонимных пользователей, блокировки удалённого root и удаления тестовой базы).

Создайте базу данных и пользователя для Zabbix. Войдите в mysql:

mysql -u root -p

Внутри консоли выполните (замените password на надёжный пароль):

CREATE DATABASE zabbixdb CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON zabbixdb.* TO 'zabbix'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Затем выйдите:

quit;

Совет: для продакшна рассмотрите использование отдельной инстанции БД или контейнера и резервное копирование mysqldump/innobackupex.

Шаг 3 — Скачивание и установка Zabbix

Скачиваем DEB-пакет репозитория Zabbix (пример для Zabbix 5.0):

wget https://repo.zabbix.com/zabbix/5.0/debian/pool/main/z/zabbix-release/zabbix-release_5.0-1+buster_all.deb

Установите репозиторий и затем пакеты Zabbix:

sudo apt ./zabbix-release_5.0-1+buster_all.deb
sudo apt update
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent -y

Затем создайте структуру БД и загрузите её в созданную базу (введите пароль root при запросе):

zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u root -p zabbixdb

Проверьте, что импорт отработал без ошибок.

Шаг 4 — Настройка конфигурации Zabbix Server

Откройте конфигурационный файл сервера Zabbix:

sudo nano /etc/zabbix/zabbix_server.conf

Найдите параметры подключения к базе и отредактируйте их:

DBHost=localhost
DBName=zabbixdb
DBUser=zabbix
DBPassword=password

Сохраните изменения и закройте редактор. Убедитесь, что пароль совпадает с тем, что вы задали ранее.

Шаг 5 — Настройка Apache для фронтенда Zabbix

Перезагрузите конфигурацию Apache:

sudo systemctl reload apache2

Откройте файл конфигурации Zabbix для Apache:

sudo nano /etc/zabbix/apache.conf

Найдите строку с указанием часового пояса и замените на ваш регион, например Europe/Moscow:

php_value date.timezone Europe/Moscow

Сохраните файл и перезапустите Apache:

sudo systemctl restart apache2

Шаг 6 — Запуск сервисов и проверка

Запустите сервер и агент Zabbix и включите автозапуск:

sudo systemctl start zabbix-server zabbix-agent
sudo systemctl enable zabbix-server zabbix-agent
sudo systemctl status zabbix-server

Если статус показывает active (running), сервер успешно поднят.

Шаг 7 — Правила файервола (UFW)

Откройте порты 80 и 443 для веб-интерфейса:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

Если вы используете Zabbix Proxy или внешние агенты, откройте также порт 10051/TCP (порт сервера Zabbix) и 10050/TCP для агентов:

sudo ufw allow 10051/tcp
sudo ufw allow 10050/tcp

Шаг 8 — Первоначальная настройка фронтенда

Откройте в браузере:

http://localhost/zabbix

Если вы работаете с удалённым сервером, подставьте IP-адрес или доменное имя. Мастер установки пошагово проверит зависимости, позволит ввести данные БД и задать имя сервера.

После завершения нажмите Finish и войдите под учётной записью:

  • Пользователь: Admin
  • Пароль: zabbix

Измените пароль администратора сразу после первого входа: Administrator > Users.

Стартовая страница мастера установки Zabbix

Проверка зависимостей и настроек Zabbix в веб-интерфейсе

Ввод данных подключения к базе Zabbix

Указание имени сервера Zabbix в установщике

Сводка настроек перед установкой Zabbix

Установка Zabbix завершена — экран подтверждения

Страница входа в Zabbix

Критерии приёмки

Перед считанием установки завершённой, проверьте:

  • Фронтенд доступен по HTTP/HTTPS и загружается без ошибок;
  • Zabbix Server в статусе active (running);
  • Агент установлен и отвечает (проверка через интерфейс или netstat);
  • Импортирована схема БД без ошибок;
  • Настроен часовой пояс и корректны настройки PHP (memory_limit, max_execution_time при больших инсталляциях).

Рекомендации по безопасности и жёсткая конфигурация

  • Смените пароль пользователя Admin и используйте сложные пароли для БД;
  • Разрешите доступ по HTTPS (настройте сертификат Let’s Encrypt);
  • Ограничьте доступ к фронтенду через IP-белый список или VPN для административных интерфейсов;
  • Отключите удалённый доступ root в MySQL;
  • Настройте регулярное резервное копирование базы данных и конфигураций (cron + mysqldump или barman/Percona tools);
  • Обновляйте систему и Zabbix до поддерживаемых версий.

Резервное копирование и восстановление — минимальный план

  1. Ежедневный дамп структуры и данных:
mysqldump -u zabbix -p zabbixdb > /var/backups/zabbixdb-$(date +%F).sql
  1. Ротация и хранение резервных копий за 7–30 дней (в зависимости от политики);
  2. Тестовое восстановление на отдельном хосте ежеквартально.

Чеклист для разных ролей

  • Для администратора сети:

    • Убедиться, что порты 10050/10051 открыты для нужных подсетей;
    • Прикрепить агенты к хостам;
    • Создать базовые шаблоны мониторинга;
  • Для директора по безопасности:

    • Обеспечить шифрование трафика фронтенда и агентов;
    • Проверить привилегии пользователей в Zabbix;
  • Для DevOps:

    • Интегрировать оповещения (email, Slack, webhook);
    • Настроить автоматическое масштабирование при росте нагрузки на БД.

Типичные проблемы и их решения

  1. Apache не запускается после установки PHP-модуля:

    • Проверьте журналы: sudo journalctl -u apache2 или /var/log/apache2/error.log;
    • Убедитесь, что не установлены конфликты версий PHP (удалите старые модули).
  2. Ошибка подключения к базе при запуске Zabbix Server:

    • Проверьте правильность DBUser/DBPassword в /etc/zabbix/zabbix_server.conf;
    • Убедитесь, что MySQL слушает на localhost и нет проблем с правами пользователя;
  3. Фронтенд сообщает о нехватке расширений PHP:

    • Установите недостающие модули через apt (например, php-xml, php-gd);
  4. Агент не связывается с сервером:

    • Проверьте конфигурацию агента /etc/zabbix/zabbix_agentd.conf (Server= и ServerActive=);
    • Убедитесь, что firewall не блокирует 10050/10051.

Минимальная методология развёртывания (SOP)

  1. Подготовка ОС: обновление и базовые утилиты;
  2. Установка/конфигурация БД (отдельный узел для крупной инфраструктуры);
  3. Установка Apache/PHP;
  4. Установка Zabbix-пакетов и импорт схемы БД;
  5. Настройка конфигураций (zabbix_server.conf, apache.conf);
  6. Запуск сервисов и проверка health checks;
  7. Настройка шаблонов, групп, действий и оповещений;
  8. Резервное копирование и документация процесса.

Тест-кейсы и приёмочные проверки

  • Вход в фронтенд под учётной записью Admin после установки;
  • Создание тестового хоста и получение первых данных от агента;
  • Проверка отправки оповещения на email при искусственном триггере;
  • Восстановление дампа БД на тестовой машине и проверка целостности данных.

Советы по миграции с другой СУБД и версии Zabbix

  • Перед миграцией сделайте полный бэкап старой БД и конфигов;
  • Прочитайте официальные инструкции по миграции версии Zabbix (major upgrade требует пошагового обновления базы);
  • Тестируйте процедуру на копии продакшн-сервера;
  • Рассмотрите использование Zabbix Proxy при распределённой архитектуре.

Быстрый шаблон плана развёртывания (таблица задач)

  • Подготовка ОС — ответственный: sysadmin — статус: done
  • Установка MySQL — ответственный: dba — статус: done
  • Создание БД zabbixdb — ответственный: dba — статус: done
  • Установка Apache/PHP — ответственный: sysadmin — статус: done
  • Установка Zabbix — ответственный: devops — статус: done
  • Первичный вход и проверка — ответственный: devops — статус: pending

1‑строчный глоссарий

  • Agent — клиент для сбора метрик;
  • Server — процесс, обрабатывающий полученные данные и триггеры;
  • Frontend — веб-интерфейс управления и визуализации;
  • Template — набор элементов мониторинга для повторного использования.

Когда этот подход не подойдёт

  • Если вам нужен облачный SaaS-решение для мониторинга, проще использовать облачные сервисы (Datadog, New Relic). Zabbix требует поддержки серверной инфраструктуры;
  • Для максимально лёгких наборов метрик на десятке хостов возможны менее тяжеловесные решения (Prometheus + Grafana) в зависимости от задач.

Короткие рекомендации по производительности

  • Для больших установок (сотни/тысячи хостов) используется отдельная СУБД с настройкой innodb_buffer_pool_size;
  • Разнесение ролей: отдельный сервер БД, сервер Zabbix, сервер веб-фронтенда;
  • Горизонтальное масштабирование через Zabbix Proxy.

FAQ

Q: Как сменить пароль администратора после установки? A: Войдите как Admin/zabbix, перейдите Administration > Users, выберите Admin и смените пароль.

Q: Можно ли использовать PostgreSQL вместо MySQL? A: Да, Zabbix поддерживает PostgreSQL. Процесс установки и SQL-скрипты будут другими — используйте официальный репозиторий и документацию.

Q: На какие порты обращать внимание при настройке брандмауэра? A: Порты 80/443 для фронтенда, 10051 для сервера Zabbix, 10050 для агентов.


Теперь вы готовы запускать мониторинг: добавляйте агенты на хосты, прикрепляйте стандартные шаблоны и настраивайте оповещения под ваши процессы.

Сводка

Zabbix — зрелое FOSS-решение для мониторинга. Простая установка возможна на Ubuntu/Debian по шагам: Apache/PHP → MySQL → пакет Zabbix → импорт схемы → настройка конфигураций → запуск сервисов → фронтенд. Дополнительно рассмотрены безопасность, резервное копирование, тест-кейсы и роли.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Массивы в Bash: синтаксис и примеры
Программирование

Массивы в Bash: синтаксис и примеры

Сбросить страницу «Для вас» в TikTok
Социальные сети

Сбросить страницу «Для вас» в TikTok

Создать GIF из YouTube — GIFs.com
Руководство

Создать GIF из YouTube — GIFs.com

Как сделать карусель Instagram в InDesign
Дизайн

Как сделать карусель Instagram в InDesign

Как объединить PDF на Mac
Mac

Как объединить PDF на Mac

Как примерить тату в Photoshop
Дизайн

Как примерить тату в Photoshop