📚 Installation Zabbix 7.2 Debian 13 Trixie — Guide Complet Les Fibrés
Guide complet avec résolution des problèmes — installation dans une VM Proxmox. Debian 13 ne dispose pas de paquets Zabbix officiels : ce guide détaille chaque ajustement nécessaire pour utiliser les paquets Debian 12 (Bookworm) en compatibilité.
Recommandation production : Privilégiez Debian 12 Bookworm (LTS) pour éviter les conflits de dépendances. Voir aussi le guide Monitoring général.
Étape 1 — Création de la VM dans Proxmox
Créer une VM dans l'interface Proxmox avec les paramètres suivants avant de commencer l'installation.
| Paramètre | Valeur recommandée |
|---|---|
| OS | Debian 13 Trixie (ou Debian 12 recommandé) |
| CPU | 2 vCPU minimum |
| RAM | 4 Go minimum |
| Disque | 20 Go minimum (SSD recommandé) |
| Réseau | VirtIO, bridge vmbr0 |
Étape 2 — Préparation du système
2.1 — Mise à jour initiale
apt update && apt upgrade -y apt install -y curl wget gnupg2
2.2 — Correction du fichier sources (spécifique Debian 13)
Debian 13 utilise le format DEB822 (.sources) mais l'installateur crée parfois un fichier au mauvais format. Vérifier :
# Vérifier le contenu du fichier sources cat /etc/apt/sources.list.d/debian.sources # Si le fichier contient des lignes 'deb http://...' (ancien format) # mais porte l'extension .sources, le renommer : mv /etc/apt/sources.list.d/debian.sources /etc/apt/sources.list.d/debian.list
debian.sources contient du contenu au format .list. Le renommer en debian.list (voir étape 2.2).
2.3 — Suppression de l'entrée CDROM
# Éditer sources.list et commenter la ligne cdrom nano /etc/apt/sources.list # Mettre un # devant la ligne cdrom : # deb cdrom://[Debian GNU/Linux 13...] trixie main # Mettre à jour après la correction apt update
Étape 3 — Installation du dépôt Zabbix
Zabbix ne proposant pas de paquets natifs pour Debian 13, on utilise le dépôt Debian 12 (Bookworm) en compatibilité.
# Télécharger le paquet de dépôt Zabbix 7.2 pour Debian 12 wget https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.2+debian12_all.deb # Installer le paquet de dépôt dpkg -i zabbix-release_latest_7.2+debian12_all.deb # Mettre à jour la liste des paquets apt update
Étape 4 — Installation des paquets Zabbix
4.1 — Installation initiale
apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
libldap2 sans numéro de version. Ajouter le dépôt Bookworm pour récupérer libldap-2.5-0 :echo 'deb http://deb.debian.org/debian bookworm main' > /etc/apt/sources.list.d/bookworm.list apt update && apt install -y libldap-2.5-0
apt install -y zabbix-frontend-php=1:7.2.15-1+debian12 dpkg -i --force-overwrite /var/cache/apt/archives/zabbix-apache-conf_1%3a7.2.15-1+debian12_all.deb apt install -f
4.2 — Uniformisation des versions
Après installation, vérifier que tous les composants sont en version 7.2. Des mélanges 7.0/7.2 causent des dysfonctionnements.
# Vérifier les versions installées dpkg -l | grep zabbix # Si zabbix-server-mysql ou zabbix-agent sont en 7.0, forcer la mise à jour : apt install -y zabbix-server-mysql=1:7.2.15-1+debian12 zabbix-agent=1:7.2.15-1+debian12
Étape 5 — Installation et configuration de MariaDB
5.1 — Installation
apt install -y mariadb-server systemctl enable --now mariadb # Sur MariaDB 11.x, utiliser mariadb-secure-installation # (et non mysql_secure_installation) mariadb-secure-installation
mysql_secure_installation.Répondre aux questions de sécurisation :
| Question | Réponse recommandée |
|---|---|
| Switch to unix_socket authentication | N |
| Change root password | Y — choisir un mot de passe fort |
| Remove anonymous users | Y |
| Disallow root login remotely | Y |
| Remove test database | Y |
| Reload privilege tables | Y |
5.2 — Création de la base de données Zabbix
-- Se connecter à MariaDB mysql -u root -p -- Créer la base de données avec le bon charset CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin; -- Créer l'utilisateur Zabbix CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'VotreMotDePasse'; -- Donner tous les droits sur la base zabbix GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost'; -- Nécessaire pour l'import du schéma (stored procedures) SET GLOBAL log_bin_trust_function_creators = 1; FLUSH PRIVILEGES; EXIT;
+ dans le mot de passe. Ils peuvent causer des erreurs Access denied lors de l'import en ligne de commande.-- Se connecter en root mysql -u root -p -- Modifier le mot de passe ALTER USER 'zabbix'@'localhost' IDENTIFIED BY 'NouveauMotDePasse'; FLUSH PRIVILEGES; EXIT;
Étape 6 — Import du schéma de base de données
# Trouver le fichier server.sql.gz si besoin find / -name 'server.sql.gz' 2>/dev/null # Importer le schéma Zabbix dans la base de données # Cette opération peut prendre 1 à 3 minutes — ne pas l'interrompre zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | \ mysql --default-character-set=utf8mb4 -uzabbix -p zabbix # Après import réussi, désactiver l'option temporaire mysql -u root -p -e "SET GLOBAL log_bin_trust_function_creators = 0;"
Étape 7 — Configuration de Zabbix Server
# Éditer la configuration du serveur Zabbix nano /etc/zabbix/zabbix_server.conf # Modifier ou vérifier ces paramètres : DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=VotreMotDePasse
Étape 8 — Création des répertoires et démarrage des services
# Créer les répertoires de configuration manquants mkdir -p /etc/zabbix/zabbix_server.conf.d mkdir -p /etc/zabbix/zabbix_agentd.conf.d # Redémarrer et activer les services systemctl restart zabbix-server zabbix-agent apache2 systemctl enable zabbix-server zabbix-agent apache2 # Vérifier que tout fonctionne systemctl status zabbix-server systemctl status zabbix-agent systemctl status apache2
mkdir -p /etc/zabbix/zabbix_server.conf.d mkdir -p /etc/zabbix/zabbix_agentd.conf.d
Vérification des logs en cas d'erreur
# Voir les logs du serveur Zabbix en temps réel tail -f /var/log/zabbix/zabbix_server.log # Voir les logs système liés à Zabbix journalctl -u zabbix-server -f # Vérifier que le port Zabbix est en écoute ss -tulnp | grep 10051
Étape 9 — Configuration de l'interface web
# Obtenir l'adresse IP de la VM ip a | grep inet # Accéder à l'interface web dans un navigateur : # http://<IP-de-la-VM>/zabbix
Remplir l'assistant de configuration web :
| Champ | Valeur |
|---|---|
| Database type | MySQL |
| Database host | localhost |
| Database port | 0 (port par défaut 3306) |
| Database name | zabbix |
| User | zabbix |
| Password | VotreMotDePasse |
| Database TLS encryption | Décoché |
apt install -y php-mysql systemctl restart apache2 # Recharger la page http://<IP>/zabbix
9.1 — Première connexion
| Champ | Valeur |
|---|---|
| URL | http://<IP-de-la-VM>/zabbix |
| Login | Admin |
| Password | zabbix |
Administration → Users → Admin → Change password.
Étape 10 — Récapitulatif de tous les problèmes Debian 13
Synthèse de tous les problèmes spécifiques à Debian 13 Trixie et leurs solutions :
| ❌ Problème rencontré | ✅ Solution appliquée |
|---|---|
| Ligne 1 mal formée dans debian.sources | Renommer en debian.list (mv debian.sources debian.list) |
| Entrée CDROM dans sources.list | Commenter la ligne deb cdrom:// avec un # |
| libldap-2.5-0 non installable | Ajouter le dépôt Bookworm + apt install libldap-2.5-0 |
| Conflit zabbix-frontend-php 7.0 vs 7.2 | Forcer version 7.2 + dpkg --force-overwrite + apt install -f |
| Access denied avec caractères spéciaux | Éviter + dans le mot de passe, utiliser ALTER USER pour corriger |
| conf.d: No such file or directory | mkdir -p /etc/zabbix/zabbix_server.conf.d et agentd.conf.d |
| Database type bloqué sur PostgreSQL | apt install php-mysql + systemctl restart apache2 |
| Mélange versions 7.0 et 7.2 | Forcer toutes les versions en 7.2 avec apt install pkg=version |