Aller au contenu principal

À partir des paquets (serveur central)

Vous devez exécuter la procédure d'installation en tant qu'utilisateur privilégié.

Lorsque vous exécutez une commande, vérifiez ce qu'elle affiche. En cas de message d'erreur, arrêtez la procédure et corrigez le problème.

Nous vous recommandons de chiffrer les communications du serveur web comme celles de la base de données, même si ces étapes ne sont pas nécessaires au fonctionnement de Centreon. La procédure ci-dessous met en place ce chiffrement. Dans certains cas (par exemple pour réaliser des tests rapides), vous pouvez préférer une installation non sécurisée : il vous suffit alors d'ignorer l'étape 3 : Mettre en place la configuration TLS.

Prérequis​

Après avoir installé votre serveur hôte, mettez à jour votre système d'exploitation à l'aide de la commande suivante :

dnf update

Configuration supplémentaire pour EL 9​

Pour utiliser Centreon en français, espagnol, portugais ou allemand, installez les paquets correspondants :

dnf install glibc-langpack-fr
dnf install glibc-langpack-es
dnf install glibc-langpack-pt
dnf install glibc-langpack-de

Utilisez la commande suivante pour vérifier quelles langues sont installées sur votre système :

locale -a

Acceptez toutes les clés GPG proposées et redémarrez votre serveur si une mise à jour du noyau est proposée.

Étape 1 : Pré-installation​

Désactiver SELinux​

Pendant l'installation, SELinux doit être désactivé. Éditez le fichier /etc/selinux/config et remplacez enforcing par disabled, ou bien exécutez la commande suivante :

sed -i s/^SELINUX=.*$/SELINUX=disabled/ /etc/selinux/config

Redémarrez votre système d'exploitation pour prendre en compte le changement.

reboot

Après le démarrage du système, effectuez une vérification rapide de l'état de SELinux :

getenforce

Vous devriez obtenir ce résultat :

Disabled

Notez que cette désactivation doit être temporaire. SELinux doit être réactivé après l'installation pour des raisons de sécurité.

Configurer ou désactiver le pare-feu​

Si vous avez un pare-feu est si celui-ci est actif, ajoutez les règles de pare-feu. Vous pouvez également le désactiver le temps de l'installation en exécutant les commandes suivantes :

systemctl stop firewalld
systemctl disable firewalld

Cette désactivation doit être temporaire. Pour des raisons de sécurité, le pare-feu doit être réactivé après l'installation.

Installer les dépôts​

Dépendances​

dnf install dnf-plugins-core
dnf install epel-release
dnf config-manager --set-enabled crb

Installez et activez PHP 8.4 à l'aide des commandes suivantes :

dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm
dnf module switch-to php:remi-8.4/common -y

Dépôt de base de données​

curl -LsS https://r.mariadb.com/downloads/mariadb_repo_setup | bash -s -- --os-type=rhel --os-version=9 --mariadb-server-version=mariadb-11.8 --skip-maxscale

Dépôt Centreon​

dnf config-manager --add-repo https://packages.centreon.com/rpm-standard/26.10/el9/centreon-26.10.repo
dnf clean all --enablerepo=*
dnf update

Étape 2 : Installer le serveur central et la base de données​

Vous pouvez installer le serveur central avec une base de données locale au serveur, ou avec une base de données distante sur un serveur dédié.

dnf install -y centreon-mariadb centreon
systemctl daemon-reload
systemctl restart mariadb

Définissez un mot de passe pour l'utilisateur root de la base de données en exécutant la commande suivante :

mariadb-secure-installation

Répondez yes à toutes les questions sauf à "Disallow root login remotely?".

Étape 3 : Mettre en place la configuration TLS​

Préparer les certificats​

Utilisez un certificat délivré par une autorité de confiance. Les certificats auto-signés peuvent être utilisés à des fins de test, mais ils NE DOIVENT PAS être utilisés en production.

  • Si vous disposez déjà d'un certificat validé par une autorité, passez à l'étape suivante.
  • Si vous ne disposez pas d'un certificat validé par une autorité, vous pouvez en générer un sur des plateformes telles que Let's Encrypt.
  • Si, à des fins de test, vous souhaitez utiliser un certificat auto-signé, vous pouvez suivre cett procédure pour en créer un avant d'activer le mode HTTPS sur votre serveur. Attention, vous devrez importer le certificat de l'autorité de certification (CA) dans votre navigateur.

Supposons que vous disposiez des fichiers suivants (dans notre exemple, dans /etc/pki/centreon-tls/ sur EL 9 or 10, ou /etc/ssl/certs/centreon-tls sur Debian 13) :

  • rootCA.pem (public - non nécessaire si vous utilisez un certificat reconnu)
  • web.pem (certificat du serveur web)
  • web-key.pem (clé privée du serveur web)
  • db.pem (certificat du serveur de base de données)
  • db-key.pem (clé privée du serveur de base de données)
  1. Installez l'autorité de certification racine dans le trust store du système d'exploitation de la machine hébergeant le serveur central :

    cp /etc/pki/centreon-tls/rootCA.pem /etc/pki/ca-trust/source/anchors/centreon-dev.crt
    update-ca-trust extract
  2. Si vous utilisez une base de données distante, exécutez également cette procédure sur la machine qui hébergera la base de données distante, puis copiez le certificat de l'autorité de certification racine de cette machine dans le trust store de la machine hôte du serveur central.

Pour la base de données​

Cette section décrit comment mettre en place une connexion TLS entre le serveur central et la base de données.

  1. Créez le fichier de configuration permettant à la base de données de démarrer en TLS et indiquant les chemins des certificats.
cat > /etc/my.cnf.d/centreon-tls.cnf <<'EOF'
[mariadb]
ssl_ca = /etc/pki/centreon-tls/rootCA.pem
ssl_cert = /etc/pki/centreon-tls/db.pem
ssl_key = /etc/pki/centreon-tls/db-key.pem
require_secure_transport = OFF
tls_version = TLSv1.2,TLSv1.3
EOF
  1. Attribuez les permissions suivantes à la clé afin qu'elle soit lisible uniquement par l'utilisateur mysql :
chown root:mysql /etc/pki/centreon-tls/db-key.pem
chmod 0640 /etc/pki/centreon-tls/db-key.pem
  1. Configurez le client MariaDB en ligne de commande pour qu'il utilise TLS (vous en aurez besoin par la suite).
cat > /etc/my.cnf.d/centreon-tls-client.cnf <<'EOF'
[client]
ssl-ca=/etc/pki/centreon-tls/rootCA.pem
ssl-verify-server-cert
EOF
  1. Démarrez MariaDB :
systemctl daemon-reload
systemctl enable --now mariadb
systemctl restart mariadb
  1. Sécurisez l'installation :
mariadb-secure-installation
  1. Vérifiez que le serveur utilise bien les certificats que vous avez définis, et non ceux qu'il génère automatiquement à son démarrage.
mariadb -e "SHOW GLOBAL VARIABLES WHERE Variable_name IN ('have_ssl','ssl_ca','ssl_cert','ssl_key');"

Le résultat attendu est le suivant :

have_ssl YES and ssl_ca /etc/pki/centreon-tls/rootCA.pem
  1. Définissez les variables d'environnement que PHP utilisera pour communiquer avec la base de données en mode TLS.
for f in /etc/centreon/.env /usr/share/centreon/.env; do
mkdir -p "$(dirname "$f")"
cat >> "$f" <<'EOF'
DATABASE_SSL_ENABLED=1
DATABASE_VERIFY_SERVER_CERT=1
DATABASE_CA_PATH=/etc/pki/centreon-tls/rootCA.pem
EOF
done

Pour l'interface web​

Cette section décrit comment mettre en place une connexion TLS entre le serveur central et son interface web.

  1. Configurez Apache pour TLS :
dnf install -y mod_ssl
echo 'Listen 443 https' > /etc/httpd/conf.d/ssl.conf
  1. Renseignez les chemins des certificats dans la configuration HTTPS d'Apache pour Centreon :
sed -e 's|/etc/pki/tls/certs/ca.crt|/etc/pki/centreon-tls/web.pem|g' \
-e 's|/etc/pki/tls/private/ca.key|/etc/pki/centreon-tls/web-key.pem|g' \
/usr/share/centreon/examples/centreon-apache-https.conf \
> /etc/httpd/conf.d/00-centreon-tls.conf
  1. Activez et redémarrez les services Centreon :
systemctl daemon-reload

Une fois que votre serveur web est configuré en mode HTTPS et si vous avez un serveur MAP sur votre plateforme, vous devez définir l'adresse centreon.url=https://<server-address> dans le fichier /etc/centreon-map/map-config.properties pour utiliser HTTPS au lieu de HTTP. Sinon, les navigateurs web récents peuvent bloquer la communication entre les deux serveurs. Voir la procédure détaillée ici.

  1. Configuration API de Gorgone

Éditez le fichier /etc/centreon-gorgone/config.d/31-centreon-api.yaml en remplaçant 127.0.0.1 par le FQDN de votre serveur central, comme dans l'exemple suivant :

gorgone:
tpapi:
- name: centreonv2
base_url: "https://centreon7.localdomain/centreon/api/latest/"
username: "centreon-gorgone"
password: "XXXXX"
- name: clapi
username: "centreon-gorgone"
password: "XXXXX"

Si vous avez personnalisé l'URI de Centreon, remplacez /centreon par votre chemin personnalisé dans la valeur base_url.

Redémarrez le daemon Gorgone :

systemctl restart gorgoned

Puis vérifiez le statut :

systemctl status gorgoned

Si tout est correct, vous devriez avoir quelque chose comme cet exemple :

● gorgoned.service - Centreon Gorgone
Loaded: loaded (/usr/lib/systemd/system/gorgoned.service; enabled; preset: enabled)
Active: active (running) since Thu 2026-10-08 09:27:46 UTC; 4h 10min ago
Invocation: 40225788460245609d05c9db103f1ff3
Main PID: 807 (perl)
Tasks: 51 (limit: 4618)
Memory: 176.2M (peak: 241.4M)
CPU: 9.461s
CGroup: /system.slice/gorgoned.service
├─ 807 /usr/bin/perl /usr/bin/gorgoned --config=/etc/centreon-gorgone/config.yaml --logfile=/var/log/centreon-gorgone/gorgoned.log --severity=error
├─1073 gorgone-proxy
├─1075 gorgone-proxy
├─1076 gorgone-proxy
├─1077 gorgone-proxy
├─1080 gorgone-proxy
├─1086 gorgone-engine
├─1089 gorgone-audit
├─1097 gorgone-legacycmd
├─1098 gorgone-httpserver
├─1100 gorgone-nodes
├─1107 gorgone-statistics
├─1108 gorgone-cron
├─1113 gorgone-anomalydetection
├─1125 gorgone-autodiscovery
├─1133 gorgone-action
└─1137 gorgone-dbcleaner

Oct 08 09:27:46 doc-central systemd[1]: Started gorgoned.service - Centreon Gorgone.

Vous devriez voir la ligne suivante dans les logs de Gorgone /var/log/centreon-gorgone/gorgoned.log :

2026-10-08 15:58:12 - INFO - [autodiscovery] -class- host discovery - sync started

Étape 4 : Configuration​

Modifier le nom du serveur (facultatif)​

Si vous souhaitez changer le nom d'hôte du serveur, utilisez la commande suivante, en remplaçant new-server-name par le nom de votre choix :

hostnamectl set-hostname new-server-name

Exemple :

hostnamectl set-hostname central

Définir le fuseau horaire de PHP​

Vous devez définir le fuseau horaire de PHP.

Remplacez Europe/Paris par votre fuseau horaire. Vous pouvez trouver la liste des fuseaux horaires pris en charge ici.

Exécutez la commande suivante en tant que root :

echo "date.timezone = Europe/Paris" >> /etc/php.d/50-centreon.ini

Après avoir enregistré le fichier, redémarrez le service PHP-FPM :

systemctl restart php-fpm

Démarrage des services au démarrage du système​

Pour que les services démarrent automatiquement au démarrage du système, exécutez les commandes suivantes sur le serveur central :

systemctl enable php-fpm httpd centreon cbd centengine gorgoned snmptrapd centreontrapd snmpd
systemctl enable crond
systemctl start crond

Exécutez ensuite la commande suivante (sur le serveur central si vous utilisez une base de données locale, ou sur votre serveur de base de données distant) :

systemctl enable mariadb
systemctl restart mariadb

Étape 5 : Installation web​

  1. Redémarrez le serveur Apache avec la commande suivante :
systemctl restart httpd
  1. Pour terminer l'installation, suivez la procédure d'installation web.