# Установка Zabix на Debian 12 в связке с Nginx ## Установка Zabbix 7 LTS Server и нужных пакетов Добавим официальный репозиторий Zabbix для Debian 12 (в данном случае будем ставить версию 7.0 LTS): ``` wget https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian12_all.deb dpkg -i zabbix-release_7.0-1+debian12_all.deb apt update && apt upgrade -y ``` Установим Zabbix Server, Nginx, Mysql и Zabbix agent: ``` apt install zabbix-server-mysql mariadb-server zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent ``` ## Настройка MySQL ``` mysql_secure_installation ``` ``` Enter current password for root (enter for none): OK, successfully used password, moving on... Жмем ENTER так как у нас пока не задан пароль Switch to unix_socket authentication [Y/n] n Change the root password? [Y/n] y СОЗДАЕМ ПАРОЛЬ ДЛЯ ROOT в Mysql Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y ``` Создаем базу данных, пользователя и пароль, даем все привилегии на базу пользователю zabbix: ``` mysql -uroot -p ``` ``` create database zabbix character set utf8mb4 collate utf8mb4_bin; create user zabbix@localhost identified by 'ПАРОЛЬ'; grant all privileges on zabbix.* to zabbix@localhost; set global log_bin_trust_function_creators = 1; quit; ``` Импортируем начальную схему и данные (вводим недавно созданный пароль в Mysql для нашего пользователя zabbix): ``` zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix ``` Выключаем опцию log_bin_trust_function_creators после импорта схемы базы данных: ``` mysql -uroot -p ``` ``` set global log_bin_trust_function_creators = 0; quit; ``` Настраиваем конфигурационный файл zabbix_server.conf : ``` nano /etc/zabbix/zabbix_server.conf ``` Проверяем DBName, DBUser, раскомментируем строку DBPassword и введем там пароль для пользователя zabbix, который мы сделали выше в mysql ``` DBName=zabbix DBUser=zabbix DBPassword=ВАШ ПАРОЛЬ ``` ## Настройка PHP-FPM Установим Timezone в `/etc/zabbix/php-fmp.conf`, так-же поправим одну штучку, чтобы у нас потом не было проблем ``` php_value[session.save_path] = /var/lib/php/sessions #Это редачим php_value[date.timezone] = Europe/Moscow #Это добавляем ``` ## Настройка Nginx Идём в nano /etc/zabbix/nginx.conf ``` server { listen 80; server_name zabbix.domain.ru; } ``` Затем перезапускаем наши службы и добавляем их в автозагрузку ``` systemctl restart zabbix-server zabbix-agent nginx php8.2-fpm systemctl enable zabbix-server zabbix-agent nginx php8.2-fpm ``` ## Получаем SSL сертификат (если все делается без домена, то этот этап можно и нужно пропустить и ходить по HTTP или по самописному серту) Установим Сертбот и плагин Nginx ``` apt install certbot python3-certbot-nginx ``` Активируем процесс получения сетрификата ``` certbot run --nginx systemctl restart nginx ``` ## Здесь потом будет часть про самоподисанный сертификат ## После этого переходим в браузере на http/https:IP/domain_of_your_server