Installer Zabbix Agent 2 sur AlmaLinux 8 et 9 : dépôt RPM officiel, dnf, configuration de zabbix_agent2.conf, chiffrement PSK, firewalld, SELinux 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 Rocky Linux 8 et 9 : dépôt RPM officiel, dnf, configuration de zabbix_agent2.conf, clé PSK, firewalld et SELinux, 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.
Superviser un serveur AlmaLinux avec Zabbix passe par l'installation d'un agent sur la machine : un service léger qui collecte les métriques système 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 AlmaLinux 8 et 9, avec n'importe quel serveur Zabbix.
Aucune, du point de vue de l'installation. AlmaLinux vise une compatibilité binaire 1:1 avec Red Hat Enterprise Linux ; Rocky Linux poursuit le même objectif. Le dépôt Zabbix ne publie pas de paquets distincts par distribution : il publie des RPM el8 et el9, valables pour AlmaLinux, Rocky Linux, RHEL, CentOS Stream et Oracle Linux.
Seule la version majeure compte pour choisir le bon dépôt. Ce qui distingue ces distributions — gouvernance, modèle de support, politique de mise à jour — n'a pas d'incidence sur la procédure ci-dessous.
Le dépôt fournit zabbix-agent (agent historique en C) et zabbix-agent2 (version actuelle en Go). Agent 2 est recommandé : plugins intégrés, connexion persistante unique, empreinte mémoire réduite. Ce guide l'utilise ; pour Agent 1, remplacez agent2 par agent dans les commandes et chemins.
sudoPour AlmaLinux 9 :
sudo rpm -Uvh https://repo.zabbix.com/zabbix/7.4/release/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm
sudo dnf clean allPour AlmaLinux 8, remplacez les deux 9 par 8.
Version automatique :
. /etc/os-release
MAJOR=$(echo "$VERSION_ID" | cut -d. -f1)
sudo rpm -Uvh "https://repo.zabbix.com/zabbix/7.4/release/rhel/${MAJOR}/x86_64/zabbix-release-latest.el${MAJOR}.noarch.rpm"
sudo dnf clean allLe chemin du dépôt contient rhel même sur AlmaLinux : c'est normal. Zabbix nomme ses dépôts d'après la famille Enterprise Linux, pas d'après chaque dérivé.
sudo dnf install -y zabbix-agent2Le paquet crée l'utilisateur zabbix, installe l'unité systemd et dépose la configuration dans /etc/zabbix/.
Plugins optionnels :
sudo dnf install -y zabbix-agent2-plugin-postgresql zabbix-agent2-plugin-mongodbsudo vi /etc/zabbix/zabbix_agent2.conf# 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-app-02
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=10Hostname doit être strictement identique au champ « Nom d'hôte » de l'hôte côté serveur. Une casse différente et les vérifications actives ne remontent jamais, sans erreur explicite.
Pour reprendre le nom de la machine :
HostnameItem=system.hostnameServer=) : le serveur interroge l'agent sur le port 10050.ServerActive=) : l'agent pousse ses données, aucun port entrant à ouvrir. À privilégier pour les machines distantes.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.pskTLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK-srv-app-02
TLSPSKFile=/etc/zabbix/zabbix_agent2.pskReportez clé et identité dans l'onglet Chiffrement de l'hôte côté serveur, avec une identité distincte par machine.
En cas d'erreur SSL alert number 40, supprimez le retour à la ligne ajouté par openssl : sudo truncate -s 64 /etc/zabbix/zabbix_agent2.psk
Uniquement en mode passif :
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.10" port port="10050" protocol="tcp" accept'
sudo firewall-cmd --reloadfirewalld connaît aussi un service prédéfini, plus permissif car ouvert à toute la zone :
sudo firewall-cmd --permanent --add-service=zabbix-agent
sudo firewall-cmd --reloadEn mode actif, aucune règle entrante n'est nécessaire.
AlmaLinux active SELinux en mode enforcing par défaut. C'est la principale différence avec les distributions Debian.
getenforceAprès quelques minutes de fonctionnement, cherchez les refus concernant l'agent :
sudo ausearch -m AVC -ts recent | grep -i zabbixSi nécessaire :
sudo setsebool -P zabbix_can_network onPour un cas non couvert par un booléen existant, générez un module ciblé :
sudo ausearch -c 'zabbix_agent2' --raw | audit2allow -M zabbix_agent2_local
sudo semodule -i zabbix_agent2_local.ppNe désactivez pas SELinux pour faire fonctionner un agent de supervision. Un module local ciblé résout le problème sans retirer une protection qui couvre tout le serveur.
sudo systemctl enable --now zabbix-agent2
sudo systemctl status zabbix-agent2Testez des métriques localement :
zabbix_agent2 -t agent.version
zabbix_agent2 -t system.cpu.load[all,avg1]
zabbix_agent2 -t vfs.fs.size[/,pfree]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 |
connection refused | Service arrêté, ou port bloqué par firewalld |
Permission denied sans cause apparente | SELinux — vérifiez avec ausearch -m AVC |
Pour les métriques lisant les journaux système :
sudo usermod -aG shadow zabbix
sudo setfacl -m u:zabbix:r /var/log/secure /var/log/messages
sudo systemctl restart zabbix-agent2Sur un parc conséquent, la procédure manuelle devient coûteuse : dépôt, paquet, configuration, clé PSK unique, firewalld, SELinux, création de l'hôte côté serveur. Les approches classiques sont Ansible, Kickstart au provisionnement, ou l'auto-enregistrement Zabbix.
Logiserv s'appuie sur ce même moteur Zabbix et automatise l'ensemble. Depuis la page Agent du tableau de bord :
curl -sSL "https://www.logiserv.app/api/agent-script/linux?token=..." | sudo bashLe script détecte la famille Enterprise Linux via /etc/os-release, ajoute le dépôt el8 ou el9 correspondant, installe le paquet, génère une clé PSK unique, écrit la configuration, crée l'hôte côté serveur avec les templates adaptés, pose les ACL nécessaires aux contrôles de sécurité et démarre le service.
La version majeure est extraite automatiquement pour choisir le dépôt el8 ou el9.
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.
setfacl sur /var/log/secure et /var/log/messages 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.