Titouan
centreon
Installation centreon
Installation de Centreon Open Source — Serveur Central
Projet SIGACS — BTS CIEL — Lycée Saint Joseph La Salle Lorient
OS cible : Debian 12
1 — Prérequis
Avant de commencer l'installation, assurez-vous que :
- La machine virtuelle tourne sous Debian 12
- Vous disposez d'un accès root ou sudo
- La machine dispose d'une connexion Internet fonctionnelle
- Les ressources minimales sont disponibles :
| Ressource | Minimum recommandé |
|---|---|
| CPU | 2 vCPU |
| RAM | 4 Go |
| Disque | 20 Go |
2 — Pré-installation
2.1 Mise à jour du système
Avant toute chose, mettez à jour votre système :
apt update && apt upgrade -y
2.2 Désactiver le pare-feu temporairement
Le pare-feu doit être désactivé pendant l'installation pour ne pas bloquer les téléchargements et la configuration :
systemctl stop firewalld
systemctl disable firewalld
Note : Le pare-feu sera réactivé et configuré correctement après l'installation.
3 — Installation des dépôts
3.1 Dépôt PHP 8.2 (Sury)
Centreon nécessite PHP 8.2. Ajoutez le dépôt Sury :
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list
Puis importez la clé du dépôt :
wget -O- https://packages.sury.org/php/apt.gpg | gpg --dearmor | tee /etc/apt/trusted.gpg.d/php.gpg > /dev/null 2>&1
3.2 Dépôt Centreon
Importez la clé du dépôt Centreon :
wget -O- https://apt-key.centreon.com | gpg --dearmor | tee /etc/apt/trusted.gpg.d/centreon.gpg > /dev/null 2>&1
Mettez à jour la liste des paquets :
apt update
4 — Installation de Centreon
4.1 Installer le paquet principal
Lancez l'installation de Centreon avec sa base de données MariaDB locale :
apt install -y centreon
Note : Cette commande installe automatiquement toutes les dépendances nécessaires : MariaDB, Apache, PHP 8.2, centreon-engine, centreon-broker, etc.
4.2 Démarrer MariaDB
systemctl daemon-reload
systemctl restart mariadb
5 — Sécurisation de la base de données
Il est obligatoire de sécuriser l'accès root de MariaDB avant de continuer :
mariadb-secure-installation
Répondez aux questions comme suit :
| Question | Réponse |
|---|---|
| Set root password ? | Oui — choisir un mot de passe fort |
| Remove anonymous users ? | Oui |
| Disallow root login remotely ? | Non |
| Remove test database ? | Oui |
| Reload privilege tables ? | Oui |
⚠️ Important : Notez bien le mot de passe root MariaDB, il vous sera demandé pendant l'installation web.
6 — Configuration des services
6.1 Activer les services au démarrage
Pour que Centreon démarre automatiquement après un redémarrage du serveur :
systemctl enable php8.2-fpm apache2 centreon cbd centengine gorgoned snmptrapd centreontrapd snmpd
systemctl enable mariadb
systemctl restart mariadb
6.2 Démarrer Apache
systemctl start apache2
Vérifiez que le service est bien démarré :
systemctl status apache2
Vous devriez voir :
Active: active (running)
7 — Installation Web
7.1 Accéder à l'interface
http://<IP>/centreon
Image : Page d'accueil de l'assistant d'installation Centreon
7.2 Suivre l'assistant d'installation
L'assistant se déroule en plusieurs étapes :
| Étape | Description |
|---|---|
| 1 — Vérification des prérequis | Centreon vérifie que tous les composants sont bien installés |
| 2 — Informations de monitoring | Configuration du moteur de supervision |
| 3 — Informations d'administration | Création du compte administrateur Centreon |
| 4 — Informations du SGBD | Saisie des identifiants MariaDB root |
| 5 — Installation des modules | Installation automatique des modules Centreon |
| 6 — Informations de la base de données | Configuration de la base de données Centreon |
| 7 — Fin | Installation terminée |
Image : Assistant d'installation étape 1 — Vérification des prérequis
7.3 Identifiants de connexion
À la fin de l'installation, vous pouvez vous connecter avec :
| Champ | Valeur |
|---|---|
| URL | http://<IP>/centreon |
| Login | admin |
| Mot de passe | Celui défini à l'étape 3 |
Image : Page de connexion Centreon
8 — Vérification post-installation
8.1 Vérifier les services
systemctl status centreon
systemctl status cbd
systemctl status centengine
systemctl status apache2
systemctl status mariadb
Chaque service doit afficher Active: active (running).
8.2 Vérifier le poller Central
Dans l'interface web, allez dans :
Configuration > Pollers > Pollers
Vous devriez voir le poller Central avec le statut Running.
Image : Interface Centreon — Poller Central en cours d'exécution
9 — Post-installation
9.1 Changer le nom du serveur (optionnel)
hostnamectl set-hostname centreon-sigacs
Résumé des commandes
# 1. Mise à jour
apt update && apt upgrade -y
# 2. Dépôt PHP 8.2
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list
wget -O- https://packages.sury.org/php/apt.gpg | gpg --dearmor | tee /etc/apt/trusted.gpg.d/php.gpg > /dev/null 2>&1
# 3. Dépôt Centreon
wget -O- https://apt-key.centreon.com | gpg --dearmor | tee /etc/apt/trusted.gpg.d/centreon.gpg > /dev/null 2>&1
apt update
# 4. Installation
apt install -y centreon
systemctl daemon-reload
systemctl restart mariadb
# 5. Sécurisation MariaDB
mariadb-secure-installation
# 6. Activation services
systemctl enable php8.2-fpm apache2 centreon cbd centengine gorgoned snmptrapd centreontrapd snmpd mariadb
systemctl restart mariadb
systemctl start apache2
📖 Source : docs.centreon.com — Installation à partir des paquets
Ajout d'un hôte et configuration
Supervision avec Centreon — Ajout d'un hôte et configuration
Projet SIGACS — BTS CIEL — Lycée Saint Joseph La Salle Lorient
1 — Prérequis
Avant de commencer, assurez-vous que :
- Centreon est installé et accessible via l'interface web
- Les équipements à superviser sont joignables depuis le serveur Centreon
- Le protocole SNMP est activé sur les équipements cibles
Voici le plan d'adressage utilisé dans le projet SIGACS :
| Hôte | IP | Rôle |
|---|---|---|
| Serveur Centreon | 192.168.42.132 |
Supervision |
| pfSense | 192.168.42.129 |
Firewall / Routeur |
| Serveur Broker | 192.168.42.66 |
Broker MQTT |
| Serveur Web | 192.168.42.131 |
Serveur Web |
2 — Configuration SNMPv3 sur pfSense
2.1 Pourquoi NET-SNMP ?
Le SNMP natif de pfSense ne supporte que SNMPv2c. Pour utiliser SNMPv3 (chiffrement AES + authentification SHA), il est nécessaire d'installer le paquet NET-SNMP.
⚠️ Prérequis : pfSense version 2.7.2 minimum — les versions antérieures utilisent OpenSSL 1.x incompatible avec NET-SNMP.
Vérifiez votre version OpenSSL depuis Diagnostics > Command Prompt :
openssl version
# Doit retourner : OpenSSL 3.x.x
2.2 Désactiver le SNMP natif
Avant d'installer NET-SNMP, désactivez le SNMP natif pour éviter tout conflit sur le port UDP/161 :
Services > SNMP → décocher Enable → Save
Image : Interface pfSense — Désactivation du SNMP natif
2.3 Installer NET-SNMP
System > Package Manager > Available Packages
- Rechercher :
net-snmp - Cliquer sur Install
- Confirmer l'installation
Image : Package Manager pfSense — Installation de NET-SNMP
2.4 Configurer NET-SNMP
Services > Net-SNMP > General
| Champ | Valeur |
|---|---|
| ✅ Enable snmpd | Cocher |
| Liaison d'interface | Cliquer + Ajouter → Transport : UDP, IP : vide, Port : vide |
| System Location | Salle-Formation |
| System Contact | admin@sigacs.com |
Note : Laisser l'IP vide permet à NET-SNMP d'écouter sur toutes les interfaces, y compris LAN_MNGT.
Image : Configuration générale NET-SNMP
2.5 Créer l'utilisateur SNMPv3
Services > Net-SNMP > Users → Add
| Champ | Valeur |
|---|---|
| Username | centreon |
| Auth Type | SHA |
| Auth Password | VotreMotDePasse! |
| Priv Type | AES |
| Priv Password | VotreMotDePasse! |
| Access | Read Only |
→ Save
Image : Création de l'utilisateur SNMPv3 dans NET-SNMP
2.6 Créer la règle pare-feu
Pare-feu > Règles > LAN_MNGT → Ajouter
| Champ | Valeur |
|---|---|
| Action | Pass |
| Protocol | UDP ← important, pas TCP |
| Source | IP du serveur Centreon |
| Destination | This Firewall |
| Port destination | 161 |
| Description | SNMP Centreon |
→ Save → Apply Changes
Image : Règle pare-feu UDP/161 sur LAN_MNGT
2.7 Vérifier que NET-SNMP tourne
Diagnostics > Command Prompt :
sockstat -4 | grep 161
Résultat attendu :
root snmpd ... udp4 *:161 *:*
⚠️ Si vous voyez
bsnmpdau lieu desnmpd→ le SNMP natif est encore actif. Retournez dans Services > SNMP et désactivez-le.
3 — Configuration SNMPv3 sur Ubuntu Server
3.1 Installer l'agent SNMP
sudo apt install -y snmpd snmp
3.2 Modifier le fichier de configuration
sudo systemctl stop snmpd
sudo nano /etc/snmp/snmpd.conf
Modifiez les lignes suivantes :
# Informations système
sysLocation location
sysContact email
sysServices
# Écoute sur toutes les interfaces (nécessaire pour Centreon)
agentaddress 0.0.0.0,[::1]
# Vue complète pour CPU, RAM, interfaces
view systemonly included .1
# SNMPv3 — createUser à mettre dans /var/lib/snmp/snmpd.conf
rouser centreon authpriv -V systemonly
includeDir /etc/snmp/snmpd.conf.d
Note : La ligne
agentaddress 0.0.0.0est indispensable. Par défaut, snmpd écoute uniquement sur127.0.0.1et Centreon ne peut pas s'y connecter.
3.3 Créer l'utilisateur SNMPv3
echo "createUser centreon SHA VotreMotDePasse! AES VotreMotDePasse!" | sudo tee -a /var/lib/snmp/snmpd.conf
Démarrez le service :
sudo systemctl start snmpd
sudo systemctl enable snmpd
Note : Après le démarrage, la ligne
createUserest automatiquement remplacée par une ligneusmUsercontenant les clés générées. C'est normal.
3.4 Vérifier que snmpd tourne
sudo ss -ulnp | grep 161
Résultat attendu :
udp 0.0.0.0:161 0.0.0.0:* users:(("snmpd",...))
4 — Tests de connectivité SNMP
4.1 Test depuis le serveur Centreon
Avant de configurer Centreon, vérifiez que la communication SNMP fonctionne :
# Test pfSense
snmpwalk -v3 -u centreon -l authPriv -a SHA -A "VotreMotDePasse!" -x AES -X "VotreMotDePasse!" 192.168.42.129 .1.3.6.1.2.1.1.1.0
# Test Ubuntu
snmpwalk -v3 -u centreon -l authPriv -a SHA -A "VotreMotDePasse!" -x AES -X "VotreMotDePasse!" 192.168.42.66 .1.3.6.1.2.1.1.1.0
Résultats attendus :
# pfSense
iso.3.6.1.2.1.1.1.0 = STRING: "pfSense pare-feu.SIGACS.com 2.7.2-RELEASE FreeBSD 14.0-CURRENT amd64"
# Ubuntu
iso.3.6.1.2.1.1.1.0 = STRING: "Linux broker-server 6.8.0-107-generic #107-Ubuntu SMP..."
4.2 Lister les interfaces de pfSense
Cette commande permet de récupérer les index des interfaces, nécessaires pour configurer la supervision des VLANs :
snmpwalk -v3 -u centreon -l authPriv -a SHA -A "VotreMotDePasse!" -x AES -X "VotreMotDePasse!" 192.168.42.129 .1.3.6.1.2.1.2.2.1.2
Résultat sur l'infrastructure SIGACS :
| Index | Interface | Type | Statut |
|---|---|---|---|
| 1 | igb0 |
WAN | up |
| 2 | igb1 |
LAN | up |
| 9 | igb1.101 |
VLAN 101 Serres | up |
| 10 | igb1.102 |
VLAN 102 Management | up |
Note : L'index (9, 10...) est utilisé comme argument dans les commandes Centreon pour cibler une interface spécifique.
5 — Création des commandes dans Centreon
5.1 Commande universelle pfSense
Configuration > Commands > Checks → Add
| Champ | Valeur |
|---|---|
| Command Name | pfsense_check |
| Command Type | Check |
Command Line :
/usr/lib/centreon/plugins/centreon_pfsense.pl --plugin=apps::pfsense::snmp::plugin --mode=$ARG1$ --hostname=$HOSTADDRESS$ --snmp-version='3' --snmp-username='$_HOSTSNMPUSERNAME$' --authprotocol='$_HOSTSNMPAUTHPROTOCOL$' --authpassphrase='$_HOSTSNMPAUTHPASSPHRASE$' --privprotocol='$_HOSTSNMPPRIVPROTOCOL$' --privpassphrase='$_HOSTSNMPPRIVPASSPHRASE$'
→ Save
Modes disponibles pour pfSense (valeur de ARG1) :
| ARG1 | Mesure |
|---|---|
cpu |
Charge CPU |
memory |
Utilisation RAM |
load |
Charge système |
uptime |
Temps de fonctionnement |
packet-stats |
Statistiques paquets |
swap |
Utilisation swap |
5.2 Commande interfaces pfSense
Configuration > Commands > Checks → Add
| Champ | Valeur |
|---|---|
| Command Name | pfsense_interfaces |
| Command Type | Check |
Command Line :
/usr/lib/centreon/plugins/centreon_linux_snmp.pl --plugin=os::linux::snmp::plugin --mode=interfaces --hostname=$HOSTADDRESS$ --snmp-version='3' --snmp-username='$_HOSTSNMPUSERNAME$' --authprotocol='$_HOSTSNMPAUTHPROTOCOL$' --authpassphrase='$_HOSTSNMPAUTHPASSPHRASE$' --privprotocol='$_HOSTSNMPPRIVPROTOCOL$' --privpassphrase='$_HOSTSNMPPRIVPASSPHRASE$' --interface='$ARG1$' --add-traffic --add-status --reload-cache-time=0
→ Save
Note : ARG1 correspond à l'index numérique de l'interface (ex:
9pour igb1.101,10pour igb1.102).
5.3 Commande universelle Linux SNMP
Configuration > Commands > Checks → Add
| Champ | Valeur |
|---|---|
| Command Name | linux_snmp_check |
| Command Type | Check |
Command Line :
/usr/lib/centreon/plugins/centreon_linux_snmp.pl --plugin=os::linux::snmp::plugin --mode=$ARG1$ --hostname=$HOSTADDRESS$ --snmp-version='3' --snmp-username='$_HOSTSNMPUSERNAME$' --authprotocol='$_HOSTSNMPAUTHPROTOCOL$' --authpassphrase='$_HOSTSNMPAUTHPASSPHRASE$' --privprotocol='$_HOSTSNMPPRIVPROTOCOL$' --privpassphrase='$_HOSTSNMPPRIVPASSPHRASE$'
→ Save
Modes disponibles pour Linux (valeur de ARG1) :
| ARG1 | Mesure |
|---|---|
cpu |
Charge CPU |
memory |
Utilisation RAM |
load |
Charge système |
uptime |
Temps de fonctionnement |
6 — Ajout d'un hôte dans Centreon
6.1 Créer le template hôte
Configuration > Hosts > Templates → Add
| Champ | Valeur |
|---|---|
| Name | TMPL-SNMP-Custom |
| Alias | Hôte SNMP v3 |
| Check Command | Laisser vide |
→ Save
Image : Création du template hôte dans Centreon
6.2 Créer l'hôte
Configuration > Hosts > Hosts → Add
| Champ | Valeur exemple |
|---|---|
| Name | pfsense-fw |
| Alias | pfSense Firewall SIGACS |
| IP Address | 192.168.42.129 |
| Template | TMPL-SNMP-Custom |
| Monitored from | Central |
Image : Formulaire de création d'un hôte Centreon
6.3 Ajouter les macros SNMPv3
Dans l'onglet Macros → Custom macros :
| Macro | Valeur | Password |
|---|---|---|
SNMPUSERNAME |
centreon |
☐ Non |
SNMPAUTHPROTOCOL |
SHA |
☐ Non |
SNMPAUTHPASSPHRASE |
VotreMotDePasse! |
✅ Oui |
SNMPPRIVPROTOCOL |
AES |
☐ Non |
SNMPPRIVPASSPHRASE |
VotreMotDePasse! |
✅ Oui |
→ Save
⚠️ Important : Cochez bien Password pour les mots de passe. Cela les masque dans l'interface et les chiffre en base de données.
Image : Macros SNMPv3 configurées sur l'hôte pfSense
7 — Création des services
7.1 Ajouter un service
Configuration > Services > Services by host → Add
Pour chaque service, renseignez :
| Champ | Valeur |
|---|---|
| Host | Nom de l'hôte cible |
| Name | Nom du service |
| Check Command | Commande créée à l'étape 5 |
| ARG1 | Mode ou index selon la commande |
Image : Formulaire de création d'un service Centreon
7.2 Services pfSense
| Service | Commande | ARG1 |
|---|---|---|
pfsense-cpu |
pfsense_check |
cpu |
pfsense-ram |
pfsense_check |
memory |
pfsense-load |
pfsense_check |
load |
pfsense-uptime |
pfsense_check |
uptime |
pfsense-packet-stats |
pfsense_check |
packet-stats |
pfsense-vlan101 |
pfsense_interfaces |
9 |
pfsense-vlan102 |
pfsense_interfaces |
10 |
7.3 Services Ubuntu Server
| Service | Commande | ARG1 |
|---|---|---|
broker-cpu |
linux_snmp_check |
cpu |
broker-ram |
linux_snmp_check |
memory |
web-cpu |
linux_snmp_check |
cpu |
web-ram |
linux_snmp_check |
memory |
→ Save sur chaque service
8 — Export de la configuration
Après toute modification dans Centreon, il est obligatoire d'exporter la configuration pour qu'elle soit prise en compte par le moteur de supervision.
Configuration > Pollers → sélectionner le poller Central
Cocher les options suivantes :
| Option | Action |
|---|---|
| ✅ Generate Configuration Files | Générer les fichiers de configuration |
| ✅ Run monitoring engine debug | Vérifier la validité de la configuration |
| ✅ Move Export Files | Déplacer les fichiers vers le moteur |
| ✅ Restart Monitoring Engine | Redémarrer le moteur |
→ Export
La console doit afficher :
Total Errors: 0
Restarting engine... OK
⚠️ Si des erreurs apparaissent, ne pas ignorer. Elles indiquent un problème de configuration qui empêchera la supervision de fonctionner correctement.
9 — Tests de validation
9.1 Tester les plugins en ligne de commande
Avant de vérifier dans l'interface, testez les plugins directement depuis le serveur Centreon :
# Test CPU pfSense
sudo -u centreon-engine /usr/lib/centreon/plugins/centreon_pfsense.pl --plugin=apps::pfsense::snmp::plugin --mode=cpu --hostname=192.168.42.129 --snmp-version='3' --snmp-username='centreon' --authprotocol='SHA' --authpassphrase='VotreMotDePasse!' --privprotocol='AES' --privpassphrase='VotreMotDePasse!'
# Test RAM pfSense
sudo -u centreon-engine /usr/lib/centreon/plugins/centreon_pfsense.pl --plugin=apps::pfsense::snmp::plugin --mode=memory --hostname=192.168.42.129 --snmp-version='3' --snmp-username='centreon' --authprotocol='SHA' --authpassphrase='VotreMotDePasse!' --privprotocol='AES' --privpassphrase='VotreMotDePasse!'
# Test CPU Ubuntu
sudo -u centreon-engine /usr/lib/centreon/plugins/centreon_linux_snmp.pl --plugin=os::linux::snmp::plugin --mode=cpu --hostname=192.168.42.66 --snmp-version='3' --snmp-username='centreon' --authprotocol='SHA' --authpassphrase='VotreMotDePasse!' --privprotocol='AES' --privpassphrase='VotreMotDePasse!'
9.2 Résultats attendus
| Test | Résultat OK |
|---|---|
| CPU pfSense | OK: 1 CPU(s) average usage is X% |
| RAM pfSense | OK: Ram Total: X, Used: X |
| VLAN101 | OK: Interface 'igb1.101' Status : up, Traffic In : X, Traffic Out : X |
| CPU Ubuntu | OK: 1 CPU(s) average usage is X% |
9.3 Vérification dans l'interface
Supervision > Resources Status
Tous les hôtes et services doivent afficher le statut OK (vert).
Pour forcer un check immédiat sans attendre le prochain cycle :
- Sélectionner un service → Forced check
Image : Resources Status — Hôtes et services en statut OK
10 — Dépannage
10.1 Problèmes courants
| Erreur | Cause probable | Solution |
|---|---|---|
SNMP GET Request: Timeout |
NET-SNMP arrêté ou règle pare-feu manquante | Vérifier sockstat -4 | grep 161 sur pfSense |
SNMP GET Request: Timeout |
Règle pare-feu en TCP au lieu de UDP | Modifier la règle → Protocol UDP |
SNMP GET Request: Timeout |
agentaddress en 127.0.0.1 sur Ubuntu |
Modifier en 0.0.0.0 dans snmpd.conf |
Unknown user name |
NET-SNMP redémarré — clés régénérées | Recréer l'utilisateur dans Services > Net-SNMP > Users |
authorizationError |
Vue SNMP trop restrictive | Remplacer les lignes view par view systemonly included .1 |
Execute command failed |
Chemin du plugin incorrect | Vérifier avec ls /usr/lib/centreon/plugins/ |
mode X doesn't exist |
Mauvais nom de mode dans ARG1 | Lister les modes avec --list-mode |
10.2 Lister les modes disponibles d'un plugin
# Modes pfSense
/usr/lib/centreon/plugins/centreon_pfsense.pl --plugin=apps::pfsense::snmp::plugin --list-mode
# Modes Linux SNMP
/usr/lib/centreon/plugins/centreon_linux_snmp.pl --plugin=os::linux::snmp::plugin --list-mode
10.3 Vérifier la commande exécutée par Centreon
Dans Supervision > Resources Status, cliquez sur un service en erreur et consultez l'onglet Commande exécutée. Cela permet de voir exactement ce que Centreon envoie au plugin et d'identifier les arguments incorrects.
📅 Document rédigé dans le cadre du projet SIGACS — Session 2026