Installer Zabbix Agent 2 sur Ubuntu Server 20.04, 22.04 et 24.04 : dépôt officiel, apt, configuration de zabbix_agent2.conf, clé PSK, port 10050 et vérification systemd.
Les autres services
Guide complet d'installation de Zabbix Agent 2 : Windows, Ubuntu, Debian, Rocky Linux, AlmaLinux et macOS. Choix de l'agent, configuration, chiffrement PSK, mode actif ou passif et vérification.
Installer Zabbix Agent 2 sur Debian Bullseye, Bookworm et Trixie : dépôt officiel, apt, configuration de zabbix_agent2.conf, chiffrement PSK, nftables et vérification systemd.
Ce que la supervision d'un serveur Linux détecte avant l'incident : saturation disque, fuite mémoire, processus zombie, échec de sauvegarde, certificat expiré. Avec les commandes de diagnostic.
Pour superviser un serveur Ubuntu avec Zabbix, il faut y installer un agent : un service léger qui collecte les métriques système — charge processeur, mémoire, remplissage des systèmes de fichiers, services actifs, journaux — et les transmet au serveur de supervision. Voir la définition complète de l'agent Zabbix.
Ce guide couvre l'installation manuelle et complète sur Ubuntu Server 20.04 LTS, 22.04 LTS et 24.04 LTS. La procédure fonctionne avec n'importe quel serveur Zabbix.
Deux paquets coexistent dans le dépôt officiel :
zabbix-agent — l'agent historique écrit en C, fichier de configuration zabbix_agentd.confzabbix-agent2 — la version actuelle écrite en Go, fichier zabbix_agent2.confAgent 2 est recommandé pour toute nouvelle installation : plugins intégrés (PostgreSQL, MySQL, Docker, Redis…), une seule connexion persistante au serveur, empreinte mémoire moindre. Ce guide utilise Agent 2 ; les commandes pour Agent 1 sont identiques en remplaçant agent2 par agent partout.
Le paquet fourni par les dépôts Ubuntu (universe) est souvent bien plus ancien que la version courante. Utilisez le dépôt officiel Zabbix décrit ci-dessous pour disposer d'une version à jour et alignée avec votre serveur.
Le nom du paquet zabbix-release intègre la version d'Ubuntu. Pour Ubuntu 24.04 :
wget https://repo.zabbix.com/zabbix/7.4/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu24.04_all.deb
sudo dpkg -i zabbix-release_latest+ubuntu24.04_all.deb
sudo apt updatePour Ubuntu 22.04, remplacez ubuntu24.04 par ubuntu22.04 ; pour 20.04, par ubuntu20.04.
Version automatique, quelle que soit la release :
. /etc/os-release
wget -qO /tmp/zabbix-release.deb \
"https://repo.zabbix.com/zabbix/7.4/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu${VERSION_ID}_all.deb"
sudo dpkg -i /tmp/zabbix-release.deb
sudo apt updatesudo apt install -y zabbix-agent2Le paquet crée l'utilisateur système zabbix, installe l'unité systemd et pose le fichier de configuration dans /etc/zabbix/.
Pour installer également les plugins optionnels (PostgreSQL, MongoDB, MSSQL) :
sudo apt install -y zabbix-agent2-plugin-*Éditez /etc/zabbix/zabbix_agent2.conf :
sudo nano /etc/zabbix/zabbix_agent2.confLes directives essentielles :
# Serveur autorisé à interroger cet agent (mode passif)
Server=192.168.1.10
# Serveur vers lequel l'agent pousse ses métriques (mode actif)
ServerActive=192.168.1.10
# Doit correspondre EXACTEMENT au nom d'hôte défini côté serveur Zabbix
Hostname=srv-web-01
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=10La valeur de Hostname doit être strictement identique au champ « Nom d'hôte » de l'hôte créé dans l'interface Zabbix. Une différence de casse suffit à ce que les vérifications actives ne remontent jamais, sans erreur explicite côté serveur.
Pour reprendre automatiquement le nom de la machine :
HostnameItem=system.hostnameServer=) : le serveur interroge l'agent, qui doit être joignable sur le port 10050. Problématique derrière un NAT.ServerActive=) : l'agent pousse ses données. Aucun port entrant à ouvrir — à privilégier pour des machines distantes ou en cloud.Les deux modes peuvent cohabiter.
Sans chiffrement, les métriques transitent en clair. Générez une clé de 32 octets :
sudo mkdir -p /etc/zabbix
openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agent2.psk > /dev/null
sudo chown zabbix:zabbix /etc/zabbix/zabbix_agent2.psk
sudo chmod 600 /etc/zabbix/zabbix_agent2.pskComplétez la configuration :
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK-srv-web-01
TLSPSKFile=/etc/zabbix/zabbix_agent2.pskReportez la même clé et la même identité dans l'onglet Chiffrement de l'hôte côté serveur. Utilisez une identité distincte par machine : une clé partagée compromise expose tout le parc.
openssl rand -hex 32 ajoute un retour à la ligne. Zabbix le tolère généralement, mais en cas d'erreur SSL alert number 40, supprimez-le : sudo truncate -s 64 /etc/zabbix/zabbix_agent2.psk
Uniquement en mode passif. Avec UFW :
sudo ufw allow from 192.168.1.10 to any port 10050 proto tcpRestreindre à l'adresse du serveur Zabbix évite d'exposer l'agent à tout le réseau. En mode actif, aucune règle entrante n'est nécessaire.
sudo systemctl enable --now zabbix-agent2
sudo systemctl status zabbix-agent2Testez une métrique localement, sans passer par le serveur :
zabbix_agent2 -t system.cpu.load[all,avg1]
zabbix_agent2 -t vfs.fs.size[/,pfree]
zabbix_agent2 -t agent.versionUne réponse du type system.cpu.load[all,avg1] [d|0.080000] confirme la collecte.
Consultez le journal :
sudo tail -f /var/log/zabbix/zabbix_agent2.log| Message | Cause probable |
|---|---|
no active checks on server | Hostname ne correspond à aucun hôte côté serveur |
SSL alert number 40 | Clé ou identité PSK divergente entre agent et serveur |
connection refused | Service arrêté, ou port 10050 filtré |
Permission denied sur un log | L'utilisateur zabbix n'appartient pas au groupe adm |
Sur ce dernier point, certaines métriques de sécurité nécessitent l'accès aux journaux système :
sudo usermod -aG adm zabbix
sudo systemctl restart zabbix-agent2Répétée sur vingt machines, cette procédure devient coûteuse : dépôt, paquet, configuration, clé PSK unique, création de l'hôte côté serveur, report de la clé. Comptez dix minutes par serveur, avec autant d'occasions de divergence.
Les approches classiques : Ansible ou un outil de configuration équivalent (robuste, mais playbooks et coffre à secrets à maintenir), cloud-init au provisionnement, ou l'auto-enregistrement Zabbix avec des actions et métadonnées d'hôte configurées côté serveur.
Logiserv s'appuie sur ce même moteur Zabbix et automatise l'ensemble. Depuis la page Agent du tableau de bord, une commande est générée pour votre parc :
curl -sSL "https://www.logiserv.app/api/agent-script/linux?token=..." | sudo bashLe script détecte la distribution, ajoute le dépôt, installe le paquet, génère une clé PSK unique pour la machine, écrit la configuration, crée l'hôte côté serveur avec les bons templates, ajuste les permissions nécessaires aux métriques de sécurité et démarre le service.
La distribution est détectée automatiquement via /etc/os-release.
Clé de 32 octets générée à l'enrôlement, jamais partagée entre deux hôtes.
Mode actif : seul le trafic sortant vers le serveur est nécessaire.
L'utilisateur zabbix est ajouté aux groupes adm et shadow pour les contrôles de sécurité.
Le fonctionnement de la page Agent est détaillé dans la documentation Logiserv.
Logiserv supervise votre parc à partir de cet article : essai gratuit sans carte bancaire.