Table des matières

Installation

Installation de la Console et du Serveur de Pandora FMS

Sur quels systèmes d'exploitation fonctionne Pandora FMS?

Pandora FMS nécessite Linux pour le serveur et la console. Il n'est pas officiellement supporté par MS Windows® ou tout autre système d'exploitation tel que Solaris®, BSD ou similaire, bien que beaucoup de ses composants fonctionnent, il y a des fonctionnalités avancées qui ne fonctionneront pas ou amèneront des problèmes et il est impossible de garantir son fonctionnement.

Les agents de supervision sont pris en charge pour n'importe quelle plate-forme, notamment Microsoft Windows® (toutes les versions de Windows NT4 jusqu'à la dernière version de Windows 11), différentes distributions GNU/Linux (Debian, RedHat, Fedora, Centos, Mint, SUSE, etc.), ainsi qu'Unix® (Solaris®, HPUX, AIX, BSD, etc.). Il existe également un agent pour les appareils Android.

Pré-requis minimum du matériel informatique

Les pré-requis exposés dans cette table sont les recommandations minimales pour les différentes installations. Ces dernières sont calculées en supposant que 80% des modules ont un historique de données et un échantillonnage moyen de cinq minutes. Ces recommandations sont spécifiées pour un environnement où s’installe le même serveur de base de données, serveur et console.

Hardware PETITE: jusqu’à
5.000 modules
MOYENNE: jusqu’à
15.000 modules
GRANDE*: jusqu’à
30.000 modules
Très GRANDE*:
jusqu’à 80.000
modules
CPU 2 noyau à 2 GHz 4 noyaux à 2,5 GHz 6 noyaux à 3 GHz 10 noyaux à 3 GHz
RAM 4 GB 8 GB 16 GB 32 GB
Disque Dur 7200 rpm 15K rpm ou SSD SSD SSD
Espace sur
disque dur
40GB minimum
60GB recommandé
60GB minimum
150GB recommandé
120GB minimum
250GB recommandé
250GB minimum
400GB recommandé

Ces valeurs sont approximatives et prennent comme référence un environnement avec une surveillance mixte (agent logiciel et distant) avec l'intervalle par défaut de 5 minutes et le stockage des données par défaut. Si ces valeurs sont modifiées, les exigences peuvent varier.

* Pour les environnements Large et Extra Large, en plus des recommandations ci-dessus, il est recommandé d'installer la base de données sur un serveur séparé.

* Pour les environnements dépassant 80 000 métriques, il convient de choisir un système de surveillance distribué utilisant plusieurs nœuds.

(*) En plus des recommandations ci-dessus, il est recommandé d'installer MySQL sur un serveur séparé et d'installer Percona Server for MySQL au lieu de MySQL standard.

Si vous installez Pandora FMS dans un environnement virtuel, assurez-vous d’assigner un disque indépendant avec suffisamment d’espace libre et une haute vitesse d’accès. Nous recommandons vivement l’usage de disque “SSD”, du fait du grand impact que ces derniers ont sur l’amélioration du rendement

Si vous devez stocker des informations datant de plus d'un mois, vous devrez créer une base de données historique. Pour le dimensionnement de la machine, reportez-vous aux exigences matérielles dans le tableau ci-dessus.

Pré-requis minimum de logiciel

Logiciel Pré-requis
Système d’exploitation RedHat Enterprise (RHEL) 8 (Recommandé)
Rocky Linux 8
RedHat Enterprise (RHEL) 7.X (seule Enterprise)
CentOS 7.X
Ubuntu Server 22.04 (Version 766 ou ultérieure)
Windows Server (2003 ou plus récent)
SLES 11 SP1 ou plus récent
OpenSUSE 11.X ou plus récent
Debian 5, 6, 7 ou plus récent
Ubuntu Server 21 ou antérieure
FreeBSD 9.X ou plus récent
Solaris 10/OpenSolaris
Pandora FMS n’apporte pas de soutien officiel sur ces plates-formes.
Autorisations Server
- Linux : vous devez exécuter le service de Pandora FMS Server comme autorisations de root. L’exécution comme utilisateur non root est possible, se faisant d’une façon différente. Plus d’information sur ce lien.
-Windows : vous devez exécuter le service de Pandora FMS Server comme autorisations d’administrateur.
Console
Pour pouvoir utiliser la console depuis n’importe quel navigateur web, Apache doit avoir des autorisations de lecture et d’exécution sur les fichiers de la console.
De plus, le fichier config.php doit avoir les autorisations 600 (lecture et écriture pour administrator/root).
Il faut que lui-même ait les autorisations d’écritures dans le répertoire du serveur : /var/spool/pandora/
Agent
-Linux : vous devez exécuter l’Agent Software de Pandora FMS Server comme autorisations de root pour pouvoir compter sur toutes les fonctionnalités de l’agent, bien qu’il soit possible de l’exécuter avec d’autres autorisations.
-Windows : vous devez exécuter l’Agent Software de Pandora FMS Server comme autorisations d’administrateur.
Console PHP 8 → Pour des versions de Pandora FMS 760 ou plus récente (depuis la version 766, PHP 8 par défaut).
PHP 7.4 → Pour des versions de Pandora FMS 759 à la version 767.
PHP 7.2 → Pour des versions de Pandora FMS 729 à la version 758.
PHP 5 → Pour des versions de Pandora FMS 728 ou moins récente.
Navigateurs Microsoft Edge
Opera
Chrome
Firefox
Firefox et Chrome sont recommandés pour utiliser des graphiques interactifs et des cartes de réseau

Pour Pandora FMS (au niveau du serveur), le terme EL8 est utilisé pour désigner l'ensemble recommandé de systèmes d'exploitation, qui se compose de Rocky Linux 8™, AlmaLinux 8® et RedHat 8®.

Pré-requis de base de données

Base de données Détails
MySQL Standard Version 5.7
Pour l’installation standard, un utilisateur avec des privilèges de création dans la base de données de Pandora FMS est nécessaire. Dans le cas où vous ne possédez pas d’utilisateur, vous pourrez réaliser une installation manuelle.
Percona Server for MySQL L’installation de Percona Server for MySQL est recommandé pour les larges environnements de Pandora FMS où vont se créer plus de 4000 agents.
Version 5.7
Pour l’installation standard, un utilisateur avec des privilèges de création dans la base de données de Pandora FMS est nécessaire. Dans le cas où vous ne possédez pas d’utilisateur, vous pourrez réaliser une installation manuelle.

Pré-requis de Serveur Satellite

Satellite Détails
Matériel informatique De même qu’avec l’installation de Pandora FMS, les pré-requis du matériel informatique du système qui hébergera le serveur satellite dépendront du volume de surveillance à réaliser.
Pour des environnements de moins de 1000 agents, un minimum de 1 noyau de 2GHz et 1GB de RAM est nécessaire.
Dépendances Les dépendances fondamentales sont :
fping
nmap
perl

wmic (versions antérieures à la NG 761).
pandorawmic (version NG 762 et ultérieure).
Binaires Les dépendances fondamentales sont :
Linux® 32 Bits
Linux® 64 Bits
Windows® 32 Bits
Windows® 64 Bits
Raspberry Pi OS

Pré-requis de ports

Port Protocole Service/Proceso Description Adresse
80 TCP Console Pandora FMS Administration de IP’s Navigateur→ Servidor Consola Pandora FMS
80 TCP Console Pandora FMS (Communication API) Utilisation de fonctionnalité API/CLI Navigateur/Serveur qui débute la consultation → Servidor Consola Pandora FMS
80 TCP Métaconsole Communication entre Métaconsole et Noeud Serveur Métaconsole → Serveur Noeud Serveur Noeud → Serveur Métaconsole
162 UDP Serveur Pandora FMS Réception de traps Dispositifs générés de traps → Serveur Pandora FMS
443 TCP Console Pandora FMS (Communication API) Utilisation de fonctionnalité API/CLI Navigateur/Serveur qui débute la consultation → Serveur Console Pandora FMS
443 TCP Métaconsole Communication entre Métaconsole et Noeuds Serveur Métaconsole → Serveur Noeud Serveur Noeud → Serveur Métaconsole
3306 TCP Console et Serveur Pandora FMS Connexion à la Base de Données Servidor Consola Pandora FMS → Servidor BBDD Pandora FMS Serveur Pandora FMS → Serveur Base de Données Pandora FMS
3306 TCP Métaconsole Communication entre Métaconsole y Noeuds Base de Données Serveur Métaconsole → Serveur Base de Données Noeuds Serveur Noeud → Serveur Base de Données Métaconsole
4444 TCP Serveur Pandora FMS Connexion avec Selenium GRID Serveur Pandora FMS → Serveur Selenium
9995 UDP Serveur Pandora FMS Réception de sondes Netflow Serveur nfcapd → Serveur Pandora FMS
41121 TCP Agents de Pandora FMS Communication Tentacle Serveur Agent Logiciel → Serveur Pandora FMS
Il est recommandé pour faciliter la communication du serveur et de la console de Pandora FMS à tout votre réseau. Pour une surveillance standard, il faudra :
80 TCP Serveur Pandora FMS Surveillance web pour serveur WUX Serveur Pandora FMS → Serveur à surveiller
161 UDP Console et Serveur Pandora FMS Surveillance par SNMP Polling Serveur Pandora FMS → Serveur à surveiller
443 TCP Serveur Pandora FMS Surveillance web pour serveur WUX Serveur Pandora FMS → Serveur à surveiller
ICMP ICMP Console et Serveur Pandora FMS Surveillance de réseau avec bilans ICMP Serveur Pandora FMS → Serveur à surveiller

Dépendances de paquets

Pandora FMS dépend en grande partie du système d’exploitation Linux mais nécessite des paquets supplémentaires qui ne sont, la plupart du temps, pas pré-installés. Lors du processus d’installation, ces dépendances pour des systèmes CentOS sont spécifiquement détaillées.

Questions préalables avant installation

MySQL

Pendant le processus d'installation de Pandora FMS dans les systèmes CentOS 7 et 8 par paquets, il est déjà expliqué comment installer et configurer la base de données compatible avec le serveur, il n'est donc pas nécessaire d'avoir une installation préalable avant de suivre le guide, vous pouvez donc sauter ce point.

Il faudra un serveur MySQL opératif AVANT d’installer Pandora FMS, puisque l’étape suivante après l’installation des paquets Pandora FMS est de confgurer l’accès à la base de données. Si Pandora FMS est installé en même temps que le serveur MySQL, pensez qu’il faut démarrer et configurer l’accès à l’utilisateur root de MySQL. Cela se fait au moyen de deux commandes :

1. Démarrer par systemd:

systemctl start mysql

Vous pouvez également utiliser : /etc/init.d/mysql start .

2. Configurer le mot de passe de root

mysqladmin password <password>

Dans <password> vous mettrez le mot de passe qui est attribué pour l’utilisateur root. Ce mot de passe, nous vous le demanderont pendant tout le processus d’installation de Pandora FMS.

Ordre d’installation de Pandora FMS

Il est recommandé de suivre l'ordre suivant lors de l'installation de Pandora FMS :

  • Installer la console.
  • Installer le serveur.

La raison en est que la base de données MySQL utilisée par le serveur est créée lors du processus de configuration initiale de la console. Pour cette raison, afin de garantir le bon fonctionnement du serveur, il est recommandé de procéder d'abord à l'installation complète de la console.

Il n'est pas nécessaire que la console et le serveur Pandora FMS soient hébergés sur la même machine. Il est possible d'indiquer à l'un comme à l'autre l'emplacement de la base de données MySQL au moyen des fichiers de configuration correspondants, bien que dans les environnements Enterprise, lors de la réalisation d'une installation distribuée, il soit nécessaire de prendre en compte davantage de facteurs pour l'installation.

L'installation de l'agent logiciel peut être effectuée sans problème avant ou après l'installation du serveur et de la console, car il est indépendant de ceux-ci et peut être installé sur n'importe quelle machine.

Installation de la version Enterprise de Pandora FMS

Version EnterpriseL’ordre approprié pour réaliser une installation Enterprise est la suivante :

  • Installez la console OpenSource.
  • Installez la console de la version Enterprise.
  • En accédant à la console, des encadrés apparaîtront qui requièrent que vous introduisiez votre code de licence Enterprise.

La validation de la licence ne se fait que sur la console. Pas sur le serveur.

Nous pouvons trouver des détails sur comment introduire correctement la licence dans la section suivante : Activer une licence v5.X

Enterprise Alternative Server packages

Version EnterpriseVous pouvez également choisir de télécharger et d'installer la version Enterprise dans un nouveau paquet alternatif.

Il s'agit d'un ensemble de fichiers binaires disponibles au format .tar.gz et .rpm, Il s'agit d'une compilation binaire différente de la compilation habituelle.

Il a comme avantages la mise en œuvre de la connexion cryptée à la base de données MySQL® ainsi que l'option d'utiliser MS SQL Server®.

support technique Pandora FMS

À partir de la section de support technique vous pouvez demander l'accès à cette ressource.

Outil d'installation en ligne

Si vous avez accès à l'Internet, il est recommandé de procéder à l'installation en ligne (online) en utilisant cet outil utile.

Environnement monolithique Pandora FMS (server/console/database)

Cette méthode d'installation est particulièrement utile lorsque l'environnement est hébergé par des fournisseurs de nuages, bien qu'elle ne soit pas exclusive aux environnements de nuages.

Le terme “fournisseur de Cloud” (ou simplement “Cloud”) est utilisé pour décrire l'hébergement de machines virtuelles, de manière exclusive ou partagée, chez des fournisseurs spécialisés disposant de matériel, d'hyperviseurs et de systèmes web de support client pour la configuration et l'administration.

Pour chacun d'entre eux, vous pouvez installer l'édition communautaire de Pandora FMS. Red Hat (RHEL) 8.x est recommandé comme système d'exploitation, bien qu'il ait également une compatibilité officielle avec RockyLinux 8.x, AlmaLinux 8.x, Ubuntu Server 22.04 et Centos 7.x.

La configuration matérielle minimale requise pour cette installation est la suivante: 1 cœur, 2 gigaoctets de RAM et 20 gigaoctets d'espace disque libre, de préférence du type suivant Solid State Drive (SSD).

Ces exigences sont les exigences minimales d'installation, pour dimensionner correctement l'environnement de surveillance, nous recommandons de consulter la section des exigences matérielles minimales.

Conditions requises pour l'utilisation de l'outil d'installation en ligne ( online )
  • Avoir un accès à l'internet. En plus de ces URLs, il est nécessaire d'avoir accès aux dépôts officiels de la distribution utilisée (RHEL / Rocky Linux / CentOS / Ubuntu).
  • Avoir curl installé (il est fourni par défaut dans la plupart des distributions).
  • Être un utilisateur administrateur root.
  • Avoir un système d'exploitation compatible.
  • Dans le cas de l'utilisation de RHEL 8, vous devrez être activé avec une licence et abonné aux dépôts standards.

Pour utiliser l'outil d'installation online, il suffit d'accéder à la ligne de commande telle que fournie par votre fournisseur Cloud en tant qu'utilisateur administrateur root et de l'exécuter :

CentOS 7.x :

curl -sSL https://pfms.me/deploy-pandora | bash

RHEL 8.x et Rocky Linux 8.x :

curl -sSL https://pfms.me/deploy-pandora-el8 | bash

Pour Ubuntu Server 22.04:

curl -SsL https://pfms.me/deploy-pandora-ubuntu | bash

Il existe un outil d'installation online similaire pour la version Enterprise de Pandora FMS que vous pouvez demander si vous êtes déjà un utilisateur de cette version via le portail de support ou via ce lien pour obtenir un essai gratuit (démo).

Avec cette exécution, toute la pile (stack) Pandora FMS nécessaire sera installée, mettant en place une instance entièrement fonctionnelle pour commencer à superviser.

Vous trouverez de plus amples informations dans le tutoriel vidéo (en anglais) « How to install Pandora FMS in Cloud environments ».

Installation personnalisée à l'aide de l'outil d'installation online

Bien que l'exécution ci-dessus réalise une installation complète de l'environnement, il est possible de définir différents modificateurs à travers des variables d'environnement pour personnaliser l'installation.

Paramètres personnalisés de RHEL 8.x et Rocky Linux 8.x
  • TZ: Définit le fuseau horaire de la machine, la valeur par défaut est Europe/Madrid.
  • DBHOST: L'hôte (host) de la base de données, la valeur par défaut est DBHOST=127.0.0.1 .
  • DBNAME: Le nom de la base de données à créer, par défaut DBNAME=pandora.
  • DBUSER: L'utilisateur de la base de données à créer, par défaut DBUSER=pandora .
  • DBPASS: Le mot de passe (password) de l'utilisateur à créer, par défaut DBPASS=pandora.
  • DBPORT: Numéro de port de la base de données à connecter, par défaut DBPORT=3306.
  • DBROOTPASS: Mot de passe pour l'utilisateur root de la base de données, par défaut DBROOTPASS=pandora.
  • SKIP_PRECHECK: Sauter la vérification si une installation précédente de pandora existe déjà, utile pour créer une nouvelle base de données et faire pointer l'installation vers celle-ci ; par défaut SKIP_PRECHECK=0.
  • SKIP_DATABASE_INSTALL: Sauter l'installation de la base de données, utile lorsque vous avez déjà installé une base de données, locale ou distante, et que vous utilisez les informations d'identification de celle-ci pour créer la base de données du FMS Pandora ; par défaut SKIP_DATABASE_INSTALL=0.
  • SKIP_KERNEL_OPTIMIZATIONS: Ignorer l'optimisation recommandée du noyau, uniquement pour les utilisateurs avancés. Par défaut SKIP_KERNEL_OPTIMIZATIONS=0.
  • MYVER: Définit la version de MySQL à installer, si 80 est défini, MySQL 8 sera installé. Par défaut MYVER=57 (déploie MySQL 5.7).
  • PHPVER: Définit la version de PHP à installer, par défaut PHPVER=8 (déployer PHP 8).
  • PANDORA_SERVER_PACKAGE: Définit l'URL du package RPM du serveur Pandora FMS à installer. Par défaut est définie la dernière version disponible.
  • PANDORA_CONSOLE_PACKAGE: définit l'URL du package RPM de la console Web de Pandora FMS que vous souhaitez installer. Par défaut est définie la dernière version disponible.
  • PANDORA_AGENT_PACKAGE: définit l'URL du package RPM de l'agent logiciel Pandora FMS que vous souhaitez installer. Par défaut est définie la dernière version disponible.
  • PANDORA_BETA: S'il est défini à 1, les paquets de la dernière version bêta disponible seront installés (uniquement pour les environnements de test). Par défaut PANDORA_BETA=0 (si des paquets spécifiques sont définis, cette option est ignorée).

Pour l'utilisation de ces variables d'environnement il suffit de les définir avant d'exécuter le script d'installation, par exemple, dans une installation dans RHEL 8 avec des variables définies exécuter le bloc:

env TZ='Europe/Madrid' \
 DBHOST='127.0.0.1' \
 DBNAME='pandora' \
 DBUSER='pandora' \
 DBPASS='pandora' \
 DBPORT='3306' \
 DBROOTPASS='pandora' \
 MYVER=57 \
 PHPVER=8 \
 SKIP_PRECHECK=0 \
 SKIP_DATABASE_INSTALL=0 \
 SKIP_KERNEL_OPTIMIZATIONS=0 \
 PANDORA_SERVER_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_server-7.0NG.noarch.rpm" \
 PANDORA_CONSOLE_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_console-7.0NG.noarch.rpm" \
 PANDORA_AGENT_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm" \
 PANDORA_BETA=0 \
 sh -c "$(curl -fsSL https://pfms.me/deploy-pandora-el8)"
Paramètres personnalisés de Ubuntu Server 22.04
  • TZ : Il définit le fuseau horaire de la machine, la valeur par défaut est Europe/Madrid.
  • PHPVER : Il définit la version de PHP à installer. Par défaut, PHPVER=8 (déploie PHP 8).
  • DBHOST : L'hôte (host) de la base de données, la valeur par défaut est DBHOST=127.0.0.1 .
  • DBNAME : Le nom de la base de données à créer, par défaut DBNAME=pandora.
  • DBUSER : L'utilisateur de la base de données à créer, par défaut DBUSER=pandora .
  • DBPASS : Le mot de passe (password) de l'utilisateur à créer, par défaut DBPASS=pandora.
  • DBPORT : Numéro de port de la base de données à connecter, par défaut DBPORT=3306.
  • DBROOTPASS : Mot de passe pour l'utilisateur root de la base de données, par défaut DBROOTPASS=pandora.
  • SKIP_PRECHECK : Sauter la vérification si une installation précédente de Pandora FMS existe déjà, utile pour créer une nouvelle base de données et faire pointer l'installation vers celle-ci ; par défaut SKIP_PRECHECK=0.
  • SKIP_DATABASE_INSTALL : Sauter l'installation de la base de données, utile lorsque vous avez déjà installé une base de données, locale ou distante, et que vous utilisez les informations d'identification de celle-ci pour créer la base de données de Pandora FMS ; par défaut SKIP_DATABASE_INSTALL=0.
  • SKIP_KERNEL_OPTIMIZATIONS : Ignorer l'optimisation recommandée du noyau, uniquement pour les utilisateurs avancés. Par défaut SKIP_KERNEL_OPTIMIZATIONS=0.
  • POOL_SIZE : Il spécifie une valeur de mémoire à utiliser, par défaut cela se fait automatiquement.
  • PANDORA_BETA : Si la valeur est 1, les paquets de la dernière version bêta disponible seront installés (pour les environnements de test uniquement). Par défaut PANDORA_BETA=0.

Pour l'utilisation de ces variables d'environnement il suffit de les définir avant d'exécuter le script d'installation, par exemple, dans une installation dans Ubuntu Server 22.04 avec des variables définies exécuter le bloc :

env TZ='Europe/Madrid' \
 DBHOST='127.0.0.1' \
 DBNAME='pandora' \
 DBUSER='pandora' \
 DBPASS='pandora' \
 DBPORT='3306' \
 DBROOTPASS='pandora' \
 PHPVER='8.0' \
 SKIP_PRECHECK=0 \
 SKIP_DATABASE_INSTALL=0 \
 SKIP_KERNEL_OPTIMIZATIONS=0 \
 PANDORA_BETA=0 \
 bash -c "$(curl -SsL https://pfms.me/deploy-pandora-ubuntu)"

Installation de Pandora FMS avec une base de données externe

Version 765 ou ultérieure.

Si vous disposez d'un serveur exclusif puissant pour héberger la base de données (BD) de Pandora FMS, il existe une autre personnalisation pour l'installation en ligne.

Tout d'abord, vous devez considérer, en termes généraux, comment vous devez planifier l'installation pour que le serveur PFMS et votre console Web (PANDORA FMS SERVER+CONSOLE) se connectent à une base de données (DB) distante :

  • Connectez-vous au serveur hébergeant le moteur de base de données, notez précisément son URL ou son adresse IP (DBHOST).
  • Le numéro de port par défaut (DBPORT) est 3306, veuillez noter si vous utilisez un numéro différent.
  • Vous devez créer la base de données, notez exactement le nom utilisé (il est recommandé d'utiliser pandora comme DBNAME).
  • Vous devez créer l'utilisateur qui sera utilisé pour se connecter à la base de données (il est recommandé d'utiliser pandora comme DBUSER).
  • Attribuez un mot de passe à l'utilisateur créé à l'étape précédente (DBPASS).

Pour vous conformer à l'architecture de sécurité du SGF Pandora, utilisez un mot de passe différent de celui par défaut.

  • Attribuez toutes les permissions sur la base de données créée à l'utilisateur créé.

Pour respecter l'architecture de sécurité de Pandora FMS, il faut limiter la connexion à l'adresse IP ou à l'URL du futur serveur PFMS et pour l'utilisateur créé. Cela garantira que, si les mots de passe sont compromis, ils seront inutiles s'ils sont utilisés à partir d'un dispositif autre que le serveur PFMS à créer.

  • Une fois tout cela en place, établissez une connexion de test en ligne de commande entre le futur serveur PFMS et la base de données créée, afin de vous assurer que la communication est vérifiée et prête à fonctionner.
  • Le paramètre d'installation qui permet de se connecter à une base de données distante pendant l'installation en ligne est SKIP_DATABASE_INSTALL et sa valeur doit être fixée à 1.
  • Procédez à l'installation proprement dite avec l'outil d'installation en ligne. Un exemple simplifié et par défaut est présenté ci-dessous (n'oubliez jamais d'utiliser un mot de passe utilisateur différent de celui par défaut).
env \
 DBHOST='192.168.1.107' \
 DBNAME='pandora' \
 DBUSER='pandora' \
 DBPASS='pandora' \
 DBPORT='3306' \
 SKIP_DATABASE_INSTALL=1 \
 sh -c "$(curl -fsSL https://pfms.me/deploy-pandora-el8)"

Installation en ligne de l'agent logiciel Pandora FMS

Pour installer uniquement l'agent, il existe également un outil d'installation en une ligne, compatible avec les systèmes d'exploitation de base Red Hat (Fedora, Centos, etc.) et Debian (Ubuntu, Devuan, Lubuntu etc.) . Vous trouverez de plus amples informations dans le tutoriel vidéo «How to deploy Pandora FMS agent in Cloud environments» (narré en anglais).

Le script supporte une série de variables d'environnements pour personnaliser l'installation, et une seule d'entre elles est obligatoire $PANDORA_SERVER_IP donc pour effectuer une installation standard en une ligne il suffit d'exécuter :

export PANDORA_SERVER_IP=<PandoraServer IP or FQDN> && curl -Ls https://pfms.me/agent-deploy | bash

Optionnellement, il est possible d'utiliser d'autres variables env pour personnaliser l'installation :

  • $PANDORA_REMOTE_CONFIG : Configurer le paramètre de configuration à distance - 0 par défaut (désactivé).
  • $PANDORA_AGENT_NAME : Configure le nom de l'agent - généré automatiquement par défaut.
  • $PANDORA_AGENT_ALIAS : Configure le paramètre d'alias de l'agent - nom d'hôte (hostname)par défaut.
  • $PANDORA_GROUP : Configure le groupe de l'agent - Servers par défaut.
  • $PANDORA_SECONDARY_GROUPS : Configure les paramètres des groupes secondaires de l'agent - Empty par défaut.
  • $PANDORA_DEBUG : Configure le paramètre de débogage - 0 par défaut (désactivé)
  • $TIMEZONE : Configure le fuseau horaire du système.

Exemple :

export PANDORA_SERVER_IP='env.pfms.com' && \
  export PANDORA_REMOTE_CONFIG=1 && \
  export PANDORA_AGENT_NAME='Agent_name' && \
  export PANDORA_AGENT_ALIAS='Agent_alias' && \
  export PANDORA_GROUP='Servers' && \
  export PANDORA_SECONDARY_GROUPS='VMware,Web' && \
  curl -Ls https://pfms.me/agent-deploy | bash

Ces variables d'environnement sont utilisées uniquement lors du processus d'installation, elles peuvent être détruites ou modifiées après l'installation sans altérer le comportement de l'agent Pandora FMS.

Installation des paquets

Cette section “Installation des paquets pour CentOS” est référentielle car elle permet d'économiser du temps et des efforts lors de l'utilisation de l'outil d'installation en ligne. Il est fortement recommandé d'utiliser cette option pour installer le serveur PFMS.

Configuration du dépôt

Configuration du dépôt dans RHEL / Rocky Linux 8

Pour le configurer, il faut exécuter les commandes suivantes :

dnf install -y \
 epel-release \
 tar \
 dnf-utils \
 http://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf module reset php
dnf module install -y php:remi-8.0
yum config-manager --set-enabled PowerTools

(Note: Utilisez PowerTools ou powertools, selon le cas.)

Configuration du dépôt dans CentOS 7

Pour configurer yum et les dépôts nécessaires, vous devez exécuter les commandes suivantes :

yum install -y \
 tar \
 yum-utils \
 https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \
 http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi-php73
Mise à jour du dépôt d'Ubuntu Server 22.04

Exécuter en tant qu'utilisateur root ou via la commande sudo:

add-apt-repository ppa:ondrej/php -y
apt update
apt install -y gawk sed grep

Installation de la base de données

Installation de la base de données dans RHEL / Rocky Linux 8

Il sera également nécessaire d'installer une base de données Percona en exécutant les commandes :

dnf install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm
dnf module disable -y mysql
rm -rf /etc/my.cnf
dnf install -y Percona-Server-server-57
Installation de la base de données dans CentOS 7

Il sera également nécessaire d'installer une base de données Percona en exécutant les commandes :

yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm
rm -rf /etc/my.cnf
yum install -y Percona-Server-server-57
Installation de la base de données sur Ubuntu Server 22.04

Configuration de l'installation et des variables d'environnement :

export DEBIAN_FRONTEND=noninteractive
export NEEDRESTART_SUSPEND=1

PANDORA_CONSOLE=/var/www/html/pandora_console
PANDORA_SERVER_CONF=/etc/pandora/pandora_server.conf
PANDORA_AGENT_CONF=/etc/pandora/pandora_agent.conf
WORKDIR=/opt/pandora/deploy

export TZ="Europe/Madrid"
export PHPVER=8.0
export DBHOST=127.0.0.1
export DBNAME=pandora
export DBUSER=pandora
export DBPASS=pandora
export DBPORT=3306
export DBROOTPASS=pandora
export POOL_SIZE=$(grep -i total /proc/meminfo | head -1 | awk '{printf "%.2f \n", $(NF-1)*0.4/1024}' | sed "s/\\..*$/M/g")

systemctl stop ufw.service
systemctl disable ufw
systemctl stop apparmor
systemctl disable apparmor

Installez le serveur MySQL:

debconf-set-selections <<<$(echo -n "mysql-server mysql-server/root_password password $DBROOTPASS")
debconf-set-selections <<<$(echo -n "mysql-server mysql-server/root_password_again password $DBROOTPASS")
DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server

Installation des dépendances

Installation des dépendances dans RHEL / Rocky Linux 8

Dépendances de la Console

Avec dnf et Percona installés, vous pouvez commencer à installer toutes les dépendances nécessaires pour la console en exécutant le bloc de commandes suivant :

dnf install -y \
 php \
 php-common \
 postfix \
 php-pecl-mcrypt \
 php-cli \
 php-gd \
 php-mysqlnd \
 php-ldap \
 php-zip \
 php-zlib \
 php-snmp \
 php-mbstring \
 php-pecl-zip \
 php-xmlrpc \
 libxslt \
 wget \
 php-xml \
 httpd \
 atk \
 avahi-libs \
 cairo \
 cups-libs \
 fribidi \
 gd \
 gdk-pixbuf2 \
 ghostscript \
 graphite2 \
 graphviz \
 gtk2 \
 harfbuzz \
 hicolor-icon-theme \
 hwdata \
 jasper-libs \
 lcms2 \
 libICE \
 libSM \
 libXaw \
 libXcomposite \
 libXcursor \
 libXdamage \
 libXext \
 libXfixes \
 libXft \
 libXi \
 libXinerama \
 libXmu \
 libXrandr \
 libXrender \
 libXt \
 libXxf86vm \
 libcroco \
 libdrm \
 libfontenc \
 libglvnd \
 libglvnd-egl \
 libglvnd-glx \
 libpciaccess \
 librsvg2 \
 libthai \
 libtool-ltdl \
 libwayland-client \
 libwayland-server \
 libxshmfence \
 mesa-libEGL \
 mesa-libGL \
 mesa-libgbm \
 mesa-libglapi \
 pango \
 pixman \
 xorg-x11-fonts-75dpi \
 xorg-x11-fonts-misc \
 poppler-data \
 php-pecl-yaml \
 openldap-clients \
 libzstd \
 chromium

Phantomjs est un composant spécial utilisé pour générer dynamiquement des graphiques PDF. Installer en utilisant la commande:

dnf install -y http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm

Dépendances du serveur

Une fois les dépendances de la console installées, il est temps d'installer les dépendances du serveur :

dnf install -y \
 vim \
 fping \
 perl-IO-Compress \
 nmap \
 expect \
 sudo \
 perl-Time-HiRes \
 perl-Math-Complex \
 libnsl \
 net-snmp-utils \
 GeoIP \
 GeoIP-GeoLite-data \
 dwz \
 efi-srpm-macros \
 ghc-srpm-macros \
 go-srpm-macros \
 ocaml-srpm-macros \
 openblas-srpm-macros \
 perl \
 perl-Algorithm-Diff \
 perl-Archive-Tar \
 perl-Archive-Zip \
 perl-Attribute-Handlers \
 perl-B-Debug \
 perl-CPAN \
 perl-CPAN-Meta \
 perl-CPAN-Meta-Requirements \
 perl-CPAN-Meta-YAML \
 perl-Compress-Bzip2 \
 perl-Config-Perl-V \
 perl-DBD-MySQL \
 perl-DBI \
 perl-DB_File \
 perl-Data-Dump \
 perl-Data-OptList \
 perl-Data-Section \
 perl-Devel-PPPort \
 perl-Devel-Peek \
 perl-Devel-SelfStubber \
 perl-Devel-Size \
 perl-Digest-HMAC \
 perl-Digest-SHA \
 perl-Encode-Locale \
 perl-Encode-devel \
 perl-Env \
 perl-ExtUtils-CBuilder \
 perl-ExtUtils-Command \
 perl-ExtUtils-Embed \
 perl-ExtUtils-Install \
 perl-ExtUtils-MM-Utils \
 perl-ExtUtils-MakeMaker \
 perl-ExtUtils-Manifest \
 perl-ExtUtils-Miniperl \
 perl-ExtUtils-ParseXS \
 perl-File-Fetch \
 perl-File-HomeDir \
 perl-File-Listing \
 perl-File-Which \
 perl-Filter \
 perl-Filter-Simple \
 perl-Geo-IP \
 perl-HTML-Parser \
 perl-HTML-Tagset \
 perl-HTML-Tree \
 perl-HTTP-Cookies \
 perl-HTTP-Date \
 perl-HTTP-Message \
 perl-HTTP-Negotiate \
 perl-IO-HTML \
 perl-IO-Socket-INET6 \
 perl-IO-Zlib \
 perl-IO-stringy \
 perl-IPC-Cmd \
 perl-IPC-SysV \
 perl-IPC-System-Simple \
 perl-JSON \
 perl-JSON-PP \
 perl-LWP-MediaTypes \
 perl-Locale-Codes \
 perl-Locale-Maketext \
 perl-Locale-Maketext-Simple \
 perl-MRO-Compat \
 perl-Math-BigInt \
 perl-Math-BigInt-FastCalc \
 perl-Math-BigRat \
 perl-Memoize \
 perl-Module-Build \
 perl-Module-CoreList \
 perl-Module-CoreList-tools \
 perl-Module-Load \
 perl-Module-Load-Conditional \
 perl-Module-Loaded \
 perl-Module-Metadata \
 perl-NTLM \
 perl-Net-HTTP \
 perl-Net-Ping \
 perl-NetAddr-IP \
 perl-Package-Generator \
 perl-Params-Check \
 perl-Params-Util \
 perl-Perl-OSType \
 perl-PerlIO-via-QuotedPrint \
 perl-Pod-Checker \
 perl-Pod-Html \
 perl-Pod-Parser \
 perl-SelfLoader \
 perl-Socket6 \
 perl-Software-License \
 perl-Sub-Exporter \
 perl-Sub-Install \
 perl-Sys-Syslog \
 perl-Test \
 perl-Test-Harness \
 perl-Test-Simple \
 perl-Text-Balanced \
 perl-Text-Diff \
 perl-Text-Glob \
 perl-Text-Template \
 perl-Thread-Queue \
 perl-Time-Piece \
 perl-TimeDate \
 perl-Try-Tiny \
 perl-Unicode-Collate \
 perl-WWW-RobotRules \
 perl-XML-NamespaceSupport \
 perl-XML-Parser \
 perl-XML-SAX \
 perl-XML-SAX-Base \
 perl-XML-Simple \
 perl-XML-Twig \
 perl-autodie \
 perl-bignum \
 perl-devel \
 perl-encoding \
 perl-experimental \
 perl-inc-latest \
 perl-libnetcfg \
 perl-libwww-perl \
 perl-local-lib \
 perl-open \
 perl-perlfaq \
 perl-srpm-macros \
 perl-utils \
 perl-version \
 python-srpm-macros \
 python3-pyparsing \
 python3-rpm-macros \
 qt5-srpm-macros \
 redhat-rpm-config \
 rust-srpm-macros \
 systemtap-sdt-devel \
 perl-TermReadKey \
 perl \
 perl-DBD-MySQL \
 perl-DBI

Les dépendances supplémentaires suivantes de différents composants devront également être installées à partir du dépôt public de Pandora FMS :

  • Pour le NG 761 et les versions antérieures:
 dnf install -y https://firefly.artica.es/centos8/wmi-1.3.14-4.el7.art.x86_64.rpm
 dnf install -y https://firefly.artica.es/centos8/pandorawmic-1.0.0-1.x86_64.rpm
  • Aussi:
dnf install -y https://firefly.artica.es/centos8/perl-Net-Telnet-3.04-1.el8.noarch.rpm
dnf install -y https://firefly.artica.es/centos7/xprobe2-0.3-12.2.x86_64.rpm

Bien qu'il soit indiqué dans le lien d'installation de xprobe que le paquet se trouve dans le dépôt CentOS 7, il fonctionne correctement dans les deux versions.

Si nécessaire, vous devrez ajouter toutes les dépendances Discovery pour chaque section.

À ce stade, vous pouvez poursuivre la configuration du système d'exploitation et de la base de données en suivant ce lien.

Installation des dépendances dans CentOS 7

Dépendances de la Console

Une fois les référentiels et Percona installés, vous pouvez commencer à installer toutes les dépendances nécessaires pour la console en exécutant le bloc de commandes suivant :

yum install -y \
 php \
 postfix \
 php-mcrypt \
 php-cli \
 php-gd \
 php-curl \
 php-session \
 php-mysqlnd \
 php-ldap \
 php-zip \
 php-zlib \
 php-fileinfo \
 php-gettext \
 php-snmp \
 php-mbstring \
 php-pecl-zip \
 php-xmlrpc \
 libxslt \
 wget \
 php-xml \
 httpd \
 mod_php \
 atk \
 avahi-libs \
 cairo \
 cups-libs \
 fribidi \
 gd \
 gdk-pixbuf2 \
 ghostscript \
 graphite2 \
 graphviz \
 gtk2 \
 harfbuzz \
 hicolor-icon-theme \
 hwdata \
 jasper-libs \
 lcms2 \
 libICE \
 libSM \
 libXaw \
 libXcomposite \
 libXcursor \
 libXdamage \
 libXext \
 libXfixes \
 libXft \
 libXi \
 libXinerama \
 libXmu \
 libXrandr \
 libXrender \
 libXt \
 libXxf86vm \
 libcroco \
 libdrm \
 libfontenc \
 libglvnd \
 libglvnd-egl \
 libglvnd-glx \
 libpciaccess \
 librsvg2 \
 libthai \
 libtool-ltdl \
 libwayland-client \
 libwayland-server \
 libxshmfence \
 mesa-libEGL \
 mesa-libGL \
 mesa-libgbm \
 mesa-libglapi \
 pango \
 pixman \
 xorg-x11-fonts-75dpi \
 xorg-x11-fonts-misc \
 poppler-data \
 php-yaml \
 openldap-clients \
 libzstd \
 chromium

Phantomjs est un composant spécial utilisé pour générer dynamiquement des graphiques PDF. Installer en utilisant la commande:

yum install -y https://firefly.pandorafms.com/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm

Bien qu'il soit noté dans le lien d'installation phantomjs que le paquet est dans le dépôt CentOS 8, il fonctionne correctement dans les deux versions.

Dépendances du serveur

Pour installer toutes les dépendances du serveur nécessaires, exécutez le bloc de commandes suivant :

yum install -y \
 vim \
 fping \
 perl-IO-Compress \
 nmap \
 sudo \
 perl-Time-HiRes \
 nfdump \
 net-snmp-utils \
 epel-release \
 GeoIP \
 groff-base \
 initscripts \
 iproute \
 iptables \
 libmnl \
 libnetfilter_conntrack \
 libnfnetlink \
 libpcap \
 lm_sensors-libs \
 mailcap \
 make \
 mariadb-libs \
 net-snmp \
 net-snmp-agent-libs \
 net-snmp-libs \
 net-tools \
 nmap \
 nmap-ncat \
 openssl \
 perl \
 perl-Business-ISBN \
 perl-Business-ISBN-Data \
 perl-Carp \
 perl-Compress-Raw-Bzip2 \
 perl-Compress-Raw-Zlib \
 perl-DBD-MySQL \
 perl-DBI \
 perl-Data-Dumper \
 perl-Digest \
 perl-Digest-MD5 \
 perl-Encode \
 perl-Encode-Locale \
 perl-Exporter \
 perl-File-Listing \
 perl-File-Path \
 perl-File-Temp \
 perl-Filter \
 perl-Font-AFM \
 perl-Geo-IP \
 perl-Getopt-Long \
 perl-HTML-Format \
 perl-HTML-Parser \
 perl-HTML-Tagset \
 perl-HTML-Tree \
 perl-HTTP-Cookies \
 perl-HTTP-Daemon \
 perl-HTTP-Date \
 perl-HTTP-Message \
 perl-HTTP-Negotiate \
 perl-HTTP-Tiny \
 perl-IO-Compress \
 perl-IO-HTML \
 perl-IO-Socket-INET6 \
 perl-IO-Socket-IP \
 perl-IO-Socket-SSL \
 perl-IO-stringy \
 perl-JSON \
 perl-LWP-MediaTypes \
 perl-Mozilla-CA \
 perl-Net-Daemon \
 perl-Net-HTTP \
 perl-Net-LibIDN \
 perl-Net-SSLeay \
 perl-Net-Telnet \
 perl-NetAddr-IP \
 perl-PathTools \
 perl-PlRPC \
 perl-Pod-Escapes \
 perl-Pod-Perldoc \
 perl-Pod-Simple \
 perl-Pod-Usage \
 perl-Scalar-List-Utils \
 perl-Socket \
 perl-Socket6 \
 perl-Storable \
 perl-Sys-Syslog \
 perl-Text-ParseWords \
 perl-Time-HiRes \
 perl-Time-Local \
 perl-TimeDate \
 perl-URI \
 perl-WWW-RobotRules \
 perl-XML-NamespaceSupport \
 perl-XML-Parser \
 perl-XML-SAX \
 perl-XML-SAX-Base \
 perl-XML-Simple \
 perl-XML-Twig \
 perl-constant \
 perl-libs \
 perl-libwww-perl \
 perl-macros \
 perl-parent \
 perl-podlators \
 perl-threads \
 perl-threads-shared \
 sudo \
 systemd-sysv \
 sysvinit-tools \
 tcp_wrappers-libs \
 cpanminus

A partir de la version 768 PFMS la version 2.13 ou supérieure de Thread::Semaphore est requise pour le bon fonctionnement du serveur, il est recommandé d'utiliser le gestionnaire de paquets cpanm pour installer une version plus récente et compatible :

cpanm -i Thread::Semaphore

Les dépendances supplémentaires suivantes de différents composants devront également être installées à partir du dépôt public de Pandora FMS :

  • Pour le NG 761 et les versions antérieures:
yum install -y https://firefly.pandorafms.com/centos7/wmi-1.3.14-4.el7.art.x86_64.rpm
yum install -y https://firefly.artica.es/centos7/pandorawmic-1.0.0-1.x86_64.rpm
  • Et, en plus:
yum install -y https://firefly.pandorafms.com/centos7/xprobe2-0.3-12.2.x86_64.rpm
Installation des dépendances dans Ubuntu Server 22.04

Dépendances de la console

Une fois les référentiels et MySQL installés, vous pouvez commencer à installer toutes les dépendances nécessaires pour la Console en exécutant le bloc de commandes suivant:

console_dependencies=" \
    bzip2 \
    ldap-utils \
    postfix \
    wget \
    graphviz  \
    xfonts-75dpi \
    xfonts-100dpi \
    xfonts-ayu \
    xfonts-intl-arabic \
    xfonts-intl-asian \
    xfonts-intl-phonetic \
    xfonts-intl-japanese-big \
    xfonts-intl-european \
    xfonts-intl-chinese \
    xfonts-intl-japanese \
    xfonts-intl-chinese-big \
    libzstd1 \
    gir1.2-atk-1.0 \
    libavahi-common-data \
    cairo-perf-utils \
    libfribidi-bin \
    php$PHPVER-mcrypt \
    php$PHPVER-gd  \
    php$PHPVER-curl \
    php$PHPVER-mysql \
    php$PHPVER-ldap \
    php$PHPVER-fileinfo \
    php$PHPVER-gettext \
    php$PHPVER-snmp  \
    php$PHPVER-mbstring \
    php$PHPVER-zip  \
    php$PHPVER-xmlrpc \
    php$PHPVER-xml \
    php$PHPVER-yaml \
    libnet-telnet-perl \
    chromium-browser"
apt install -y $console_dependencies

Phantomjs est un composant spécial utilisé pour générer dynamiquement des graphiques PDF. Installer en utilisant la commande:

mkdir -p $WORKDIR
cd $WORKDIR

export PHANTOM_JS="phantomjs-1.9.8-linux-x86_64"
wget https://bitbucket.org/ariya/phantomjs/downloads/$PHANTOM_JS.tar.bz2
tar xvjf $PHANTOM_JS.tar.bz2
mv $PHANTOM_JS/bin/phantomjs /usr/bin

Dépendances du serveur

Pour installer toutes les dépendances nécessaires au serveur, exécutez le bloc de commandes suivant:

server_dependencies=" \
    make \
    perl  \
    nmap  \
    fping \
    sudo \
    net-tools \
    nfdump \
    expect \
    openssh-client \
    postfix \
    unzip \
    xprobe \
    coreutils \
    libio-compress-perl \
    libmoosex-role-timer-perl \
    libdbd-mysql-perl \
    libcrypt-mysql-perl \
    libhttp-request-ascgi-perl \
    liblwp-useragent-chicaching-perl \
    liblwp-protocol-https-perl \
    snmp \
    libnetaddr-ip-perl \
    libio-socket-ssl-perl \
    libio-socket-socks-perl \
    libio-socket-ip-perl \
    libio-socket-inet6-perl \
    libnet-telnet-perl \
    libjson-perl \
    libencode-perl \
    libgeo-ip-perl \
    openjdk-8-jdk "
apt install -y $server_dependencies

Les dépendances supplémentaires suivantes de différents composants devront également être installées, à partir de notre dépôt public:

wget 'https://firefly.artica.es/pandorafms/utils/bin/wmic'
wget 'https://firefly.artica.es/pandorafms/utils/bin/pandorawmic'
chmod +x pandorawmic wmic
cp -a wmic /usr/bin/
cp -a pandorawmic /usr/bin/

Utilitaires de base:

apt install -y net-tools vim vim curl wget

Apache 2 et PHP-FPM:

apt update
apt install -y software-properties-common apt-transport-https
apt update
apt install -y php$PHPVER-fpm php$PHPVER-common libapache2-mod-fcgid php$PHPVER-cli apache2
a2enmod proxy_fcgi setenvif && a2enconf php$PHPVER-fpm
systemctl restart apache2

Utilitaires IPAM:

ipam_dependencies=" \
    xprobe \
    libnetaddr-ip-perl \
    coreutils \
    libdbd-mysql-perl \
    libxml-simple-perl \
    libgeo-ip-perl \
    libio-socket-inet6-perl \
    libxml-twig-perl \
    libnetaddr-ip-perl"
apt install -y $ipam_dependencies

Utilitaires SNMP:

cat> /etc/snmp/snmptrapd.conf <<EOF
authCommunity log public
disableAuthorization yes
EOF

Optimisation pour Pandora FMS:

cat>> /etc/sysctl.conf <<EO_KO
# Pandora FMS Optimization

# default=5
net.ipv4.tcp_syn_retries = 3

# default=5
net.ipv4.tcp_synack_retries = 3

# default=1024
net.ipv4.tcp_max_syn_backlog = 65536

# default=124928
net.core.wmem_max = 8388608

# default=131071
net.core.rmem_max = 8388608

# default = 128
net.core.somaxconn = 1024

# default = 20480
net.core.optmem_max = 81920
EO_KO

sysctl --system

Paramètres du système d'exploitation et création de la base de données

Paramètres du système d'exploitation et création de la base de données sur CentOS 7 et Rocky Linux 8

A partir de ce point, l'installation pour CentOS 7 et RHEL / Rocky Linux 8 est commune pour les deux systèmes, s'il y a une étape qui n'est pas commune, le système d'exploitation pour lequel elle est valable sera indiqué en gras.

Pour configurer Pandora FMS par paquets dans CentOS, il sera nécessaire de définir d'abord les variables suivantes pour l'un des deux systèmes, que nous utiliserons dans les étapes suivantes:

PANDORA_CONSOLE=/var/www/html/pandora_console
CONSOLE_PATH=/var/www/html/pandora_console
PANDORA_SERVER_CONF=/etc/pandora/pandora_server.conf
PANDORA_SERVER_BIN=/usr/bin/pandora_server
PANDORA_HA_BIN=/usr/bin/pandora_ha
PANDORA_TABLES_MIN=160
DBHOST=127.0.0.1
DBNAME=pandora
DBUSER=pandora
DBPASS=pandora
DBPORT=3306

Après avoir effectué les étapes ci-dessus, désactivez SELinux et le pare-feu:

setenforce 0
sed -i -e "s/^SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config
systemctl disable firewalld --now

Si vous décidez d'utiliser Security-Enhanced Linux (SELinux) avec Pandora FMS, vous devez suivre ces instructions (en anglais).

Vous pouvez ensuite commencer à configurer la base de données:

systemctl start mysqld
mysql -uroot -p$(grep "temporary password" /var/log/mysqld.log | rev | cut -d' ' -f1 | rev)
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Pandor4!');
UNINSTALL PLUGIN validate_password;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('pandora');
quit
echo "create database $DBNAME" | mysql -uroot -ppandora -P$DBPORT -h$DBHOST
echo "GRANT ALL PRIVILEGES ON $DBNAME.* TO \"$DBUSER\"@'%' identified by \"$DBPASS\"" | mysql -uroot -ppandora -P$DBPORT -h$DBHOST

Générez également le fichier my.cnf.

POOL_SIZE=$(grep -i total /proc/meminfo | head -1 | awk '{print $(NF-1)*0.4/1024}' | sed s/\\..*$/M/g)
cat> /etc/my.cnf <<EO_CONFIG_F
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
character-set-server=utf8
skip-character-set-client-handshake
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Mysql optimizations for Pandora FMS
# Please check the documentation in http://pandorafms.com for better results
max_allowed_packet = 64M
innodb_buffer_pool_size = $POOL_SIZE
innodb_lock_wait_timeout = 90
innodb_file_per_table
innodb_flush_log_at_trx_commit = 0
innodb_flush_method = O_DIRECT
innodb_log_file_size = 64M
innodb_log_buffer_size = 16M
innodb_io_capacity = 100
thread_cache_size = 8
thread_stack    = 256K
max_connections = 100
wait_timeout = 900
key_buffer_size=4M
read_buffer_size=128K
read_rnd_buffer_size=128K
sort_buffer_size=128K
join_buffer_size=4M
query_cache_type = 1
query_cache_size = 64M
query_cache_min_res_unit = 2k
query_cache_limit = 256K
sql_mode=""
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
EO_CONFIG_F

Une fois les modifications enregistrées, il sera nécessaire de redémarrer le service mysqld.

systemctl restart mysqld

Activer les services mysql et apache:

systemctl enable mysqld --now
systemctl enable httpd --now

Si vous utilisez RHEL / Rocky Linux 8, exécutez, en plus:

systemctl enable php-fpm --now
Paramètres du système d'exploitation et création de la base de données dans Ubuntu Server 22.04

Pour configurer le SGF Pandora par paquets, il faudra d'abord définir les variables suivantes que nous utiliserons dans les étapes suivantes:

POOL_SIZE=$(grep -i total /proc/meminfo | head -1 | awk '{printf "%.2f \n", $(NF-1)*0.4/1024}' | sed "s/\\..*$/M/g")

cat> /etc/mysql/my.cnf <<EOF_DB
[mysqld]
datadir=/var/lib/mysql
user=mysql
character-set-server=utf8
skip-character-set-client-handshake
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Mysql optimizations for Pandora FMS
# Please check the documentation in http://pandorafms.com for better results

max_allowed_packet = 64M
innodb_buffer_pool_size = $POOL_SIZE
innodb_lock_wait_timeout = 90
innodb_file_per_table
innodb_flush_log_at_trx_commit = 0
innodb_flush_method = O_DIRECT
innodb_log_file_size = 64M
innodb_log_buffer_size = 16M
innodb_io_capacity = 100
thread_cache_size = 8
thread_stack    = 256K
max_connections = 100

key_buffer_size=4M
read_buffer_size=128K

read_rnd_buffer_size=128K
sort_buffer_size=128K
join_buffer_size=4M

sql_mode=""

log-error=/var/log/mysql/error.log
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

EOF_DB

Vous pouvez alors commencer à configurer la base de données :

systemctl restart mysql

export MYSQL_PWD=$DBROOTPASS
echo "CREATE USER  \"$DBUSER\"@'%' IDENTIFIED BY \"$DBPASS\";" | mysql -uroot -P$DBPORT -h$DBHOST
echo "ALTER USER \"$DBUSER\"@'%' IDENTIFIED WITH mysql_native_password BY \"$DBPASS\"" | mysql -uroot -P$DBPORT -h$DBHOST
echo "GRANT ALL PRIVILEGES ON $DBNAME.* TO \"$DBUSER\"@'%'" | mysql -uroot -P$DBPORT -h$DBHOST

export MYSQL_PWD=$DBPASS

Une fois les modifications enregistrées, il sera nécessaire de redémarrer le service mysql.

systemctl restart mysql

Installation de la console et du serveur Pandora FMS

Instalación de Consola y servidor de Pandora FMS en CentOS 7

L'environnement étant prêt, il est temps d'installer Pandora FMS. La première chose à faire est de créer un répertoire pour stocker toutes les données.

mkdir $HOME/pandora && cd $HOME/pandora

Veuillez télécharger les packages Console et Server à partir de Sourceforge (ouvert) ou des liens fournis par l'équipe d'assistance ou commerciale (Enterprise).

Dans le cas de la version OpenSource :

wget https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm
wget https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_console-7.0NG.noarch.rpm
wget https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_server-7.0NG.noarch.rpm

Une fois les packages prêts, commencez l'installation. Dans le cas de l'Enterprise Console, vous devez disposer de deux packages supplémentaires : le package Enterprise Console et le package Enterprise Server (qui est un fichier tarball installé séparément des packages RPM).

Installation des packages (après les avoir téléchargés):

yum install -y $HOME/pandora/pandorafms*.rpm

Pour installer le tarball Enterprise, il sera nécessaire d'exécuter la commande suivante :

tar xvfz $HOME/pandora/pandorafms_server* && cd pandora_server && ./pandora_server_installer --install --ha; cd -

Une fois les packages installés, procédez à l'alimentation de la base de données :

mysql -u$DBUSER -p$DBPASS -P$DBPORT -h$DBHOST $DBNAME <$PANDORA_CONSOLE/pandoradb.sql
mysql -u$DBUSER -p$DBPASS -P$DBPORT -h$DBHOST $DBNAME <$PANDORA_CONSOLE/pandoradb_data.sql

Vous devrez ensuite configurer la console :

cat> $CONSOLE_PATH/include/config.php <<EO_CONFIG_F
<?php
\$config["dbtype"] = "mysql";
\$config["dbname"]="$DBNAME";
\$config["dbuser"]="$DBUSER";
\$config["dbpass"]="$DBPASS";
\$config["dbhost"]="$DBHOST";
\$config["homedir"]="/var/www/html/pandora_console";
\$config["homeurl"]="/pandora_console";
error_reporting(0);
\$ownDir = dirname(__FILE__) . '/';
include (\$ownDir . "config_process.php");
EO_CONFIG_F
cat> /etc/httpd/conf.d/pandora.conf <<EO_CONFIG_F
<Directory "/var/www/html">
   Options Indexes FollowSymLinks
   AllowOverride All
   Require all granted
</Directory>
EO_CONFIG_F
sed -i -e "s/php_flag engine off//g" $PANDORA_CONSOLE/images/.htaccess
sed -i -e "s/php_flag engine off//g" $PANDORA_CONSOLE/attachment/.htaccess
chmod 600 $CONSOLE_PATH/include/config.php
chown apache. $CONSOLE_PATH/include/config.php
mv $CONSOLE_PATH/install.php $CONSOLE_PATH/install.done

Ensuite, préparez le fichier php.ini:

sed -i -e "s/^max_input_time.*/max_input_time = -1/g" /etc/php.ini
sed -i -e "s/^max_execution_time.*/max_execution_time = 0/g" /etc/php.ini
sed -i -e "s/^upload_max_filesize.*/upload_max_filesize = 800M/g" /etc/php.ini
sed -i -e "s/^memory_limit.*/memory_limit = 800M/g" /etc/php.ini
cat> /var/www/html/index.html <<EOF_INDEX
<meta HTTP-EQUIV="REFRESH" content="0; url=/pandora_console/">
EOF_INDEX

Si vous utilisez RHEL / Rocky Linux 8, vous devez en plus exécuter :

systemctl restart php-fpm
systemctl restart httpd

Le fichier de configuration du serveur doit être préparé :

sed -i -e "s/^dbhost.*/dbhost $DBHOST/g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbname.*/dbname $DBNAME/g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbuser.*/dbuser $DBUSER/g" $PANDORA_SERVER_CONF
sed -i -e "s|^dbpass.*|dbpass $DBPASS|g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbport.*/dbport $DBPORT/g" $PANDORA_SERVER_CONF

Dans la version Enterprise, activez également le service ha (HA):

systemctl enable pandora_ha --now
service tentacle_serverd start

Dans la version Community, comme le service pandora_ha n'existe pas, il sera nécessaire d'exécuter les commandes suivantes pour activer le serveur :

systemctl enable pandora_server --now
systemctl start pandora_server
service tentacle_serverd start

Activez le cron de la console :

echo "* * * * * root wget -q -O - --no-check-certificate http://127.0.0.1/pandora_console/enterprise/cron.php>> /var/www/html/pandora_console/log/cron.log">> /etc/crontab

Configurez logrotate:

cat> /etc/logrotate.d/pandora_server <<EO_LR
/var/log/pandora/pandora_server.log
/var/log/pandora/web_socket.log
/var/log/pandora/pandora_server.error {
        su root apache
        weekly
        missingok
        size 300000
        rotate 3
        maxage 90
        compress
        notifempty
        copytruncate
        create 660 pandora apache
}

/var/log/pandora/pandora_snmptrap.log {
        su root apache
        weekly
        missingok
        size 500000
        rotate 1
        maxage 30
        notifempty
        copytruncate
        create 660 pandora apache
}

EO_LR
chmod 0644 /etc/logrotate.d/pandora_server

Allez à l'adresse IP du serveur CentOS, vous devriez pouvoir accéder à la console Pandora FMS et voir le service fonctionner correctement :

Avec ces étapes, vous aurez une installation de base Pandora FMS. Si nécessaire, ajoutez toutes les dépendances Discovery pour chaque section.

L'installation de l'agent est recommandée pour l'auto-surpervision du serveur.

Si vous utilisez EL8 (Enterprise Linux 8), en plus d'activer l'option dans la configuration générale, modifiez le fichier

/etc/php-fpm.d/www.conf

et commentez le paramètre suivant avec un point-virgule :

;php_admin_value[error_log] = /var/log/php-fpm/www-error.log
Installation de la console et du serveur Pandora FMS sur Ubuntu Server 22.04

L'environnement étant prêt, il est temps d'installer Pandora FMS. La première chose à faire est d'entrer le répertoire dans lequel seront stockées toutes les données.

cd $WORKDIR

Vous devrez télécharger les paquets Console et Server à partir de nos dépôts ou des liens fournis par l'équipe de support commercial (Enterprise).

Dans le cas de la version open:

PANDORA_CONSOLE_PACKAGE="http://firefly.artica.es/pandorafms/latest/Tarball/pandorafms_console-7.0NG.tar.gz"
PANDORA_SERVER_PACKAGE="http://firefly.artica.es/pandorafms/latest/Tarball/pandorafms_server-7.0NG.tar.gz"
curl -LSs --output pandorafms_console-7.0NG.tar.gz ${PANDORA_CONSOLE_PACKAGE}
curl -LSs --output pandorafms_server-7.0NG.tar.gz ${PANDORA_SERVER_PACKAGE}

Installation des paquets (après les avoir téléchargés):

tar xvzf pandorafms_console-7.0NG.tar.gz
cp -Ra pandora_console /var/www/html/
rm -f $PANDORA_CONSOLE/*.spec

useradd pandora
tar xvzf pandorafms_server-7.0NG.tar.gz
cd pandora_server
./pandora_server_installer --install
cd $WORKDIR

Une fois les paquets installés, procédez à la création et à l'alimentation de la base de données:

echo "create database $DBNAME" | mysql -uroot -P$DBPORT -h$DBHOST
mysql -u$DBUSER -P$DBPORT -h$DBHOST $DBNAME <$PANDORA_CONSOLE/pandoradb.sql
mysql -u$DBUSER -P$DBPORT -h$DBHOST $DBNAME <$PANDORA_CONSOLE/pandoradb_data.sql

Vous devez ensuite configurer la Console:

cat> $PANDORA_CONSOLE/include/config.php <<EO_CONFIG_F
<?php
\$config["dbtype"] = "mysql";
\$config["dbname"]="$DBNAME";
\$config["dbuser"]="$DBUSER";
\$config["dbpass"]="$DBPASS";
\$config["dbhost"]="$DBHOST";
\$config["homedir"]="$PANDORA_CONSOLE";
\$config["homeurl"]="/pandora_console";
error_reporting(0);
\$ownDir = dirname(__FILE__) . '/';
include (\$ownDir . "config_process.php");
EO_CONFIG_F
cat> /etc/apache2/conf-enabled/pandora_security.conf <<EO_CONFIG_F
<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
EO_CONFIG_F
cat>> /etc/apache2/mods-enabled/00-proxy.conf <<'EO_HTTPD_WSTUNNEL'
ProxyRequests Off
<Proxy *>
    Require all granted
</Proxy>

ProxyPass /ws ws://127.0.0.1:8080
ProxyPassReverse /ws ws://127.0.0.1:8080
EO_HTTPD_WSTUNNEL

cat> /etc/apache2/conf-available/ssl-params.conf <<EOF_PARAM
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH

    SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1

    SSLHonorCipherOrder On

    Header always set X-Frame-Options DENY

    Header always set X-Content-Type-Options nosniff

    # Requires Apache>= 2.4

    SSLCompression off

    SSLUseStapling on

    SSLStaplingCache "shmcb:logs/stapling-cache(150000)"

    # Requires Apache>= 2.4.11

    SSLSessionTickets Off
EOF_PARAM

a2enmod ssl
a2enmod headers
a2enconf ssl-params
a2ensite default-ssl
a2enconf ssl-params
apache2ctl configtest

systemctl restart apache2

systemctl enable apache2
systemctl enable php$PHPVER-fpm
chmod 600 $PANDORA_CONSOLE/include/config.php
chown www-data. $PANDORA_CONSOLE/include/config.php
chown -R www-data. $PANDORA_CONSOLE
mv $PANDORA_CONSOLE/install.php $PANDORA_CONSOLE/install.done

Ensuite, préparez le fichier php.ini:

ln -s /etc/php/$PHPVER/fpm/php.ini /etc/
sed --follow-symlinks -i -e "s/^max_input_time.*/max_input_time = -1/g" /etc/php.ini
sed --follow-symlinks -i -e "s/^max_execution_time.*/max_execution_time = 0/g" /etc/php.ini
sed --follow-symlinks -i -e "s/^upload_max_filesize.*/upload_max_filesize = 800M/g" /etc/php.ini
sed --follow-symlinks -i -e "s/^memory_limit.*/memory_limit = 800M/g" /etc/php.ini
sed --follow-symlinks -i -e "s/.*post_max_size =.*/post_max_size = 800M/" /etc/php.ini
sed --follow-symlinks -i -e "s/^disable_functions/;disable_functions/" /etc/php.ini

systemctl restart php$PHPVER-fpm
cat> /var/www/html/index.html <<EOF_INDEX
<meta HTTP-EQUIV="REFRESH" content="0; url=/pandora_console/">
EOF_INDEX

Installer l'utilitaire gotty:

wget 'https://pandorafms.com/library/wp-content/uploads/2019/11/gotty_linux_amd64.tar.gz'
tar xvzf gotty_linux_amd64.tar.gz
mv gotty /usr/bin/

Le fichier de configuration du serveur doit être préparé:

sed -i -e "s/^dbhost.*/dbhost $DBHOST/g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbname.*/dbname $DBNAME/g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbuser.*/dbuser $DBUSER/g" $PANDORA_SERVER_CONF
sed -i -e "s|^dbpass.*|dbpass $DBPASS|g" $PANDORA_SERVER_CONF
sed -i -e "s/^dbport.*/dbport $DBPORT/g" $PANDORA_SERVER_CONF
sed -i -e "s/^#.mssql_driver.*/mssql_driver $MS_ID/g" $PANDORA_SERVER_CONF
# Adding group www-data to pandora server conf.
grep -q "group www-data" $PANDORA_SERVER_CONF || \
cat>> $PANDORA_SERVER_CONF <<EOF_G

#Adding group www-data to assing remote-config permission correctly
group www-data
EOF_G

Les commandes suivantes devront être exécutées pour activer le serveur:

/etc/init.d/pandora_server restart
systemctl enable pandora_server
systemctl enable tentacle_serverd
service tentacle_serverd start

Installer et activer websocket:

mv /var/www/html/pandora_console/pandora_websocket_engine /etc/init.d/
chmod +x /etc/init.d/pandora_websocket_engine
/etc/init.d/pandora_websocket_engine start
systemctl enable pandora_websocket_engine

Activez le cron de la console :

echo "* * * * * root wget -q -O - --no-check-certificate http://127.0.0.1/pandora_console/enterprise/cron.php>> $PANDORA_CONSOLE/log/cron.log">> /etc/crontab

Configurer logrotate:

cat> /etc/logrotate.d/pandora_server <<EO_LR
/var/log/pandora/pandora_server.log
/var/log/pandora/web_socket.log
/var/log/pandora/pandora_server.error {
        su root apache
        weekly
        missingok
        size 300000
        rotate 3
        maxage 90
        compress
        notifempty
        copytruncate
        create 660 pandora apache
}

/var/log/pandora/pandora_snmptrap.log {
        su root apache
        weekly
        missingok
        size 500000
        rotate 1
        maxage 30
        notifempty
        copytruncate
        create 660 pandora apache
}

EO_LR
chmod 0644 /etc/logrotate.d/pandora_server

Allez à l'adresse IP du serveur Ubuntu, vous devriez pouvoir accéder à la console Pandora FMS et voir le service fonctionner correctement:

Avec ces étapes, nous aurons une installation de base du FMS de Pandora. Si nécessaire, vous devrez ajouter toutes les dépendances Discovery pour chaque section.

L'installation de l'agent est recommandée pour l'auto-surveillance du serveur.

Demande de licence

La version Enterprise de Pandora FMS est associée à une clé individuelle pour chaque installation. Pour pouvoir utiliser les fonctionnalités de l'Enterprise et effectuer les mises à jour automatiques de la Console, il est nécessaire de saisir le numéro de licence fourni par Artica. A partir de la version 748 de Pandora FMS, le serveur est installé avec une licence d'essai valable (trial) pour un maximum de 100 agents et un mois d'utilisation. Si vous souhaitez étendre cette licence, veuillez contacter votre représentant commercial ou remplir le formulaire de contact suivant.

La version Community ne nécessite aucune licence pour son utilisation.

Installation de paquets sur RHEL 7/8

L'installation de Pandora FMS sur les systèmes RHEL 7 et RHEL 8 est un service d'Enterprise. Vous pouvez vous renseigner sur les modalités d'installation sur ces systèmes en contactant votre représentant commercial ou en remplissant le formulaire de contact suivant.

Installation sous Docker

Cette ressource est uniquement destinée aux environnements de test, d'apprentissage et même de pré-production.

Il existe une entrée sur le site Web Docker Hub qui explique étape par étape comment configurer une stack FMS Pandora, actuellement basée sur Rocky Linux™ 8, au lien suivant :

L'installation via un fichier yaml est également possible, comme méthode d'installation rapide. La façon d'effectuer ce déploiement via docker-compose est expliquée ci-dessous.

Tout d'abord, vous devez avoir installé Docker et Docker Compose sur votre système. Vous pouvez découvrir comment les installer dans la documentation officielle de Docker :

https://docs.docker.com/get-docker/

Une fois installé, utilisez le fichier yaml du dépôt officiel de Pandora FMS :

mkdir $HOME/pandorafms; cd $HOME/pandorafms
wget https://raw.githubusercontent.com/pandorafms/pandorafms/develop/extras/docker/centos8/docker-compose.yml
docker-compose -f $HOME/pandorafms/docker-compose.yml up

Attendez quelques secondes pour le téléchargement et la configuration de l'environnement. Une fois terminé, vous pourrez accéder à la console Pandora FMS via l'URL :

http://127.0.0.1:8080/pandora_console

Utilisez admin comme utilisateur et pandora comme mot de passe.

Vous pouvez trouver plus d'informations dans le tutoriel vidéo (en anglais) «How to install Pandora FMS in Docker».

Désinstallation de Pandora FMS

Désinstallation de Pandora FMS sur CentOS/RHEL

Il suffit d'exécuter la commande:

yum remove pandorafms_console pandorafms_server

Si vous avez installé MySQL et que vous n'en avez plus besoin, vous pouvez le supprimer de manière similaire avec la même commande :

yum remove Percona-Server*

Installation personnalisée

Installation manuelle à partir des sources sur Linux / Unix / MAC OS

Il faudra avoir installé toutes les dépendances nécessaires en fonction du système d'exploitation, télécharger les fichiers au format tarball (.tar.gz, .tgz ou .tar.bz2) et le décompresser. Pour ce faire, localisez la dernière version de Pandora FMS :

Installation de la console

Une fois que vous avez le fichier compressé dans la Console, via une fenêtre de terminal :

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire où vous pouvez décompresser le fichier (dans cet exemple /tmp est utilisé) et dans ce répertoire exécutez :

tar xvzf pandorafms_console-X.Y.tar.gz
cd pandora_console
./pandora_console_install --install
Installation du serveur

Une fois que vous avez le fichier compressé sur le serveur, qui aura un nom similaire :

pandorafms_server-7.0NG.7xx.tar.gz

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire où vous pouvez décompresser le fichier (dans cet exemple /tmp est utilisé à nouveau) et dans ce répertoire exécutez :

tar xvzf pandorafms_server-7.0NG.7xx.tar.gz
cd pandora_server
./pandora_server_installer --install

S'il y a des problèmes de dépendance, vous devez les résoudre avant de tenter l'installation. Vous pouvez forcer l'installation en ignorant le problème de dépendance, mais il est très possible que Pandora FMS ne fonctionne pas correctement.

Installation manuelle (à partir du code source) du serveur

Au lieu du script d'installation générique, vous pouvez compiler le code du FMS Pandora à l'aide de l'interpréteur Perl de votre système. Ce processus installe simplement les bibliothèques et les exécutables minimums, mais il ne touche pas aux scripts de démarrage du système, aux scripts de maintenance, à la configuration ou à toute autre chose, mais strictement l'application et ses bibliothèques. Ce processus est le mieux utilisé lorsque vous devez mettre à jour le code du serveur, mais sans écraser sa configuration.

Pour ce faire, décompressez le code de votre serveur dans un répertoire (/tmp dans cet exemple) et comme décrit dans la section précédente :

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire où vous pouvez décompresser le fichier (dans cet exemple /tmp est utilisé) et dans ce répertoire exécutez :

tar xvzf pandorafms_server-X.Y.tar.gz
cd pandora_server
perl Makefile.PL
make
make install

Si une dépendance est manquante ou s'il y a un autre problème, le système vous en avertira. Si vous voyez un message similaire à :

Warning: prerequisiete Mail::Sendmail 0 not found
Warning: prerequisiete Net::Traceroute::PurePerl 0 not found

Cela signifie que Pandora FMS a besoin de certains paquets Perl qui ne sont pas installés sur le système. Consultez les paragraphes précédents pour savoir comment installer les dépendances nécessaires à l'installation de Pandora FMS. Cependant, vous pouvez temporairement ignorer ces avertissements (ce sont des avertissements et non des erreurs) et forcer l'installation. Il est certain que vous aurez des problèmes à un moment ou à un autre, parce qu'il vous manquera un élément nécessaire pour fonctionner. Toutefois, si vous connaissez le composant qui n'est pas installé et qui ne sera pas utilisé (par exemple, traceroute est utilisé exclusivement pour le serveur Pandora FMS Recon), vous pouvez continuer en toute sécurité.

Après ce processus, les fichiers sont automatiquement copiés.

/usr/local/bin/pandora_server
/usr/local/bin/pandora_exec

Et plusieurs fichiers .pm (bibliothèques Perl) dont Pandora FMS a besoin. Ces bibliothèques .pm sont copiées dans différents répertoires, selon la version de votre distribution et votre distribution. Exemples:

/usr/local/share/perl/5.10.0/PandoraFMS/
/usr/lib/perl5/site_perl/5.10.0/PandoraFMS/

Installation de la version Enterprise

Pour installer la version Enterprise de Pandora FMS, vous devez installer les packages Open de la console et du serveur, puis ajouter les packages Enterprise de chacun d'eux. Dans le cas de la Console, nous utiliserons certains paquets ou d'autres en fonction de la distribution que nous avons installée.

Installation de l'Enterprise Console

Si vous souhaitez installer l'Enterprise Console par le biais du code source :

Une fois que nous avons le fichier compressé avec la console, qui aura un nom similaire à:

pandorafms_console_enterprise-X.X.tar.gz

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire où vous pouvez décompresser le fichier (dans cet exemple /tmp est utilisé) et dans ce répertoire exécutez :

tar xvzf pandorafms_console-X.Xtar.gz

3. Copiez dans le répertoire où la console Open Source de Pandora FMS est installée :

cp -R enterprise /var/www/html/pandora_console

4. Modifiez les autorisations de sorte que les fichiers appartiennent à l'utilisateur du serveur web, par exemple :

chown -R apache /var/www/html/pandora_console/enterprise
Installation d'un serveur d'Enterprise

Nous travaillons sur une version expérimentale qui inclura des améliorations dans le serveur Enterprise. À partir de la mise à jour 738, vous devez de préférence utiliser la version E7 du serveur Pandora FMS Enterprise. Vous ne devez utiliser la version E6 qu'en cas de problèmes de compatibilité.

Pour installer le serveur Enterprise, assurez-vous d'abord que la version Open du serveur est installée, puis procédez à l'installation de la version Enterprise.

Une fois que vous avez le fichier compressé sur le serveur, qui sera nommé de manière similaire à :

pandorafms_server_enterprise-X.X.tar.gz

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire où vous pouvez décompresser le fichier (dans cet exemple /tmp est utilisé) et dans ce répertoire exécutez :

tar xvzf pandorafms_server_enterprise-X.X.tar.gz
cd pandora_server/
# ./pandora_server_installer --install

Dans le cas où le binaire du serveur Pandora FMS ne se trouve pas dans le répertoire par défaut (/usr/bin), vous devrez indiquer le répertoire de la manière suivante :

# PREFIX=/usr/local ./pandora_server_installer --install

Après l'installation, redémarrez le serveur :

/etc/init.d/pandora_server restart

Les serveurs Enterprise doivent être activés.

Ne redémarrez pas le serveur avant que l'installation de la clé de licence Pandora FMS Enterprise soit terminée, sinon le serveur ne démarrera pas et son service de surveillance sera interrompu.

À partir de la version NG 754, des options supplémentaires sont disponibles pour le démarrage et l'arrêt manuels des environnements de haute disponibilité (HA).

Installation sur un autre itinéraire

Pour installer le serveur FMS Pandora sur un chemin différent, utilisez l'option:

./pandora_server_installer --install --destdir <path>

Après l'installation, vous devez configurer le serveur FMS Pandora pour qu'il démarre automatiquement au démarrage, et configurer le script de maintenance de la base de données, pandora_db, pour qu'il soit exécuté périodiquement.

Par exemple, sous Linux (remplacez <destdir> par le chemin que vous avez passé à l'option destdir) :

ln -s <destdir>/etc/init.d/pandora_server /etc/init.d/
echo "\"<destdir>/usr/share/pandora_server/util/pandora_db\" \
 \"<destdir>/etc/pandora/pandora_server.conf\">/dev/null 2>&1"> /etc/cron.hourly/pandora_db

Installation avec un utilisateur non privilégié

Pour installer le serveur FMS Pandora avec un utilisateur non privilégié, lancez la commande suivante avec l'utilisateur avec lequel vous souhaitez effectuer l'installation :

./pandora_server_installer --install --no-root --destdir /opt/pandora

Cet utilisateur doit avoir les droits d'écriture sur le chemin qui est passé à destdir.

Installation des agents Pandora FMS

Pour l'installation en ligne de l'agent logiciel Pandora FMS, cliquez sur ce lien.

Exigences pour l'agent

L'agent peut être exécuté sur n'importe quel ordinateur doté du système d'exploitation minimum requis, l'un des systèmes suivants étant valable :

Componente Sistema Operativo
Pandora Agent 4.0 ou plus tard RedHat Enterprise (RHEL) 6.x et 8.
 Fedora 34. \\
 CentOS 6.x , 7 et 8. \\
 AlmaLinux. \\
 SLES 11 SP1 ou plus tard. \\
 OpenSUSE 11.x ou plus tard. \\
 Debian 5.x ou plus tard. \\
 Ubuntu 11 ou plus tard. \\
 Linux Mint. \\
 Elementary OS. \\
 Manjaro. \\
 HPUX B.11.11 ou plus tard, avec Perl 5.8. \\
 AIX 4.3.3 ou plus tard,a vec Perl 5.8. \\
 AIX 7.1 et 7.2. \\
 BSD Systems (NetBSD, OpenBSD, FreeBSD), avec Perl 5.8. \\
 MacOSX 10.6 ou plus tard. \\
 Solaris 8 ou plus tard, avec Perl 5.8. \\
 Windows NT4 (voir les notes spéciales pour cette version). \\
 Windows XP. \\
 Windows 2000. \\
 Windows 2003. \\
 Windows 2008. \\
 Windows 7. \\
 Windows 8. \\
 Windows 10. \\
 Windows 11. \\
 Windows 2012. \\
 Windows server 2016. \\
 Windows server 2019.  |
Pandora Android Agent 2.0 ou plus tard Android 6 ou plus tard
Pandora Embedded Agent 4.0 ou plus tard Dispositifs embarqués, nécessite une compilation

Il existe un agent spécial pour Windows NT, qui est essentiellement l'agent Unix compilé pour Windows®, bien que les performances soient bien inférieures à celles d'un agent Windows® natif et que les fonctionnalités d'accès à l'API native ne soient pas présentes.

En outre, dans les environnements UNIX, il doit être installé :

  • Perl 5.8 ou plus tard.
  • Les dépendances suivantes devront également être installées:
perl-YAML-Tiny-1.73-2
perl-Sys-Syslog
unzip
  • Configurez logrotate:
cat> /etc/logrotate.d/pandora_agent <<EO_LRA
/var/log/pandora/pandora_agent.log {
        su root apache
        weekly
        missingok
        size 300000
        rotate 3
        maxage 90
        compress
        notifempty
        copytruncate
}

EO_LRA
chmod 0644 /etc/logrotate.d/pandora_agent

Installation de l'agent sur CentOS 8 / Rocky Linux / AlmaLinux

Installation des dépendances :

yum install dnf-plugins-core -y
yum config-manager --set-enabled powertools -y
yum install -y perl-YAML-Tiny perl-Sys-Syslog unzip

Si vous allez utiliser l'option server_ssl, installez les dépendances suivantes, entrez-les dans le terminal :

yum install perl-IO-Socket-SSL -y

Installation de l'agent :

yum install -y https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm

Installation de l'agent sur CentOS 7

Installation des dépendances :

yum install dnf-plugins-core -y
yum install -y perl-YAML-Tiny perl-Sys-Syslog unzip

Si vous allez utiliser l'option server_ssl, installez les dépendances suivantes, entrez-les dans le terminal :

yum install perl-IO-Socket-SSL -y

Installation de l'agent :

yum install -y https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm

Installation de l'agent sur Ubuntu Server 22.04

Installez l'agent :

apt update
apt install -y perl coreutils wget curl unzip procps python3 python3-pip
wget http://firefly.artica.es/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.tar.gz
tar xvzf pandorafms_agent_linux-7.0NG.tar.gz
cd unix
./pandora_agent_installer --install
cp -a tentacle_client /usr/local/bin/

Supprimez le répertoire unix .

Si vous allez utiliser l'option server_ssl, installez les dépendances suivantes, entrez-les dans le terminal :

apt install libio-socket-ssl-perl -y

Configuration de l'agent :

sed -i "s/^remote_config.*$/remote_config 1/g" $PANDORA_AGENT_CONF
/etc/init.d/pandora_agent_daemon start
systemctl enable pandora_agent_daemon

Installation de l'agent à partir d'une archive tarball

Cette version de l'agent est prête à être installée sur tout système Unix/Linux/macOS.

L'agent ne nécessite aucune compilation ni préparation, une fois qu'il a été téléchargé au format .tar.gz:

1. Augmentez vos privilèges à root. Vous êtes le seul responsable de cette clé.

su -

2. Copiez dans un répertoire /tmp et dans ce répertoire exécutez :

tar xvzf pandorafms_agent_linux-7.0NG.tar.gz
cd unix
./pandora_agent_installer --install

3. Démarrez manuellement l'agent :

/etc/init.d/pandora_agent_daemon start

Installation sur mesure

L'agent peut être installé dans un répertoire défini par l'utilisateur de manière intégrale, ce qui signifie que tous les fichiers de l'agent seront placés dans ce répertoire : journaux, fichiers de configuration, binaires, pages d'aide man, etc.

Pour utiliser cette méthode, il suffit d'exécuter l'exemple suivant :

./pandora_agent_installer --install /opt/pandora

Le seul fichier que Pandora FMS créera en dehors de ce répertoire défini par l'utilisateur est le lanceur d'agent dans le dossier /etc/init.d/pandora_agent_daemon (ou équivalent sur d'autres systèmes Unix), et le lien dans le répertoire de niveau de démarrage du système, par exemple /etc/rc.d/rc2.d/S90pandora_agent_daemon.

En outre, vous pouvez configurer l'installation de sorte qu'au lieu d'exécuter l'agent avec l'utilisateur root, il puisse être exécuté avec un autre utilisateur. Par exemple, pour exécuter l'agent avec l'utilisateur Pandora, ce serait :

./pandora_agent_installer --install /home/pandora pandora

Lorsque vous spécifiez un utilisateur personnalisé, l'agent doit être installé dans un emplacement personnalisé où l'utilisateur dispose de droits d'écriture (/home/pandora en el ejemplo anterior).

L'utilisateur pandora est désactivé par défaut, vous devez l'activer en définissant un shell valide dans /etc/passwd si vous voulez utiliser l'agent avec cet utilisateur.

Pour les utilisateurs de MAC OS X version 10.11 ou supérieure (El Capitan ou version ultérieure) : Apple a ajouté une nouvelle couche de sécurité dans OS X. Certains privilèges root ont été supprimés. Lors de l'installation de Pandora FMS Agent, il apparaîtra comme un processus restreint. Seuls les processus restreints et signés par Apple pourront modifier ces fichiers. Cependant, vous pouvez désactiver ce système de sécurité en démarrant en mode récupération et en le désactivant dans un terminal en exécutant : csrutil disable.

Installation de l'agent sur NetBSD et FreeBSD

L'emplacement des fichiers et la structure du script de démarrage sont différents de ceux de Linux.

Les particularités de l'installation de FreeBSD sont les suivantes :

1. Obtenir des permis root:

su -

2. Copier le fichier téléchargé vers /tmp et dans /tmp exécutez :

tar xvzf pandorafms_agent_linux-7.0NG.tar.gz
cd unix
./pandora_agent_installer --install

Après l'installation, ajoutez la ligne suivante à /etc/rc.conf.

pandora_agent_enable="YES"

Pour activer l'agent Pandora FMS, ces paramètres sont nécessaires, sinon le processus ne démarrera pas.

Si vous voulez démarrer l'agent manuellement, exécutez ceci :

/usr/local/etc/rc.d/pandora_agent start

Agent :

/usr/local/bin/pandora_agent

Script démarrage:

/usr/local/etc/rc.d/pandora_agent

Fichier de configuration:

/usr/local/etc/pandora/pandora_agent.conf

Plugins:

/usr/local/share/pandora_agent/plugins/*

Aides man:

/usr/local/man/man1/*

Otros: Los directorios data_in y log son los mismos que en Linux.

Installation de l'agent sous Windows

L'agent est livré sous la forme d'un auto-installeur au format exécutable. ( .exe ). L'installation de base effectue toutes les étapes nécessaires et tout ce que vous avez à faire est d'accepter toutes les options.

Pour installer l'agent Pandora FMS sous Windows®, il vous suffit de le télécharger et de l'exécuter. Le programme d'installation vous guidera à travers les étapes nécessaires dans la langue que vous avez sélectionnée. L'exemple suivant montre l'installation pour Windows 10®, mais n'oubliez pas que Pandora FMS fonctionne sur toute plate-forme Microsoft® moderne (2000 ou supérieure). Des versions 32 bits et 64 bits sont également disponibles. Si vous exécutez Windows en tant qu'utilisateur standard, vous aurez besoin des droits d'administrateur, saisissez-les lors de l'exécution du programme d'installation.

Sélectionnez la langue :

Suivez les étapes du programme d'installation :

Acceptez les termes de la licence et appuyez sur Next:

Sélectionnez le chemin où l'agent Pandora FMS sera installé, par défaut il est installé dans :

%ProgramFiles%\pandora_agent), vous pouvez le modifier en appuyant sur Browse…. Ensuite, appuyez sur Next:

Attendez que les fichiers soient copiés.

Configurez les données de l'agent telles que l'adresse IP (ou le nom) du serveur Pandora FMS qui recevra les données de l'agent. Pour modifier d'autres paramètres, comme le nom de l'agent (par défaut, il prend la valeur du nom hostname de la machine) ou le chemin des fichiers temporaires, vous devrez modifier manuellement la configuration de l'agent.

Versión EnterpriseDans la fenêtre suivante, l'option permettant d'activer la configuration à distance apparaît. Il est important de l'activer avec un 1 pour avoir une copie de l'agent dans le serveur FMS de Pandora et de là, vous pourriez ajouter, modifier et supprimer des modules locaux directement à partir de l'agent.

Démarrez le service d'agent Pandora FMS, sinon vous devrez le faire manuellement, ou il démarrera au redémarrage de Windows.

L'installation est terminée, vous pouvez modifier les paramètres de l'agent dans le fichier pandora_agent.conf ou via le lien direct dans le menu Pandora FMS.

Installation sans surveillance de l'agent Windows

À partir de la version 5.1 de l'agent, le programme d'installation prend en charge le mode non assisté. Pour effectuer l'installation, il suffit d'exécuter ce qui suit :

"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S

Dans le cas où vous voulez installer l'agent dans un chemin différent de celui par défaut :

"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S /D=C:\PFMS_agent

Vous pouvez également passer certains paramètres pour les écrire dans le fichier de configuration de l'agent à créer. Grâce à ces options, le déploiement des agents Pandora FMS est beaucoup plus personnalisable. Les options de ligne de commande prises en charge sont les suivantes :

--ip

Il correspond à la token pour server_ip.

--group

Il correspond à la token pour group.

--alias

Il correspond à la token pour agent_alias.

--remote_config

Il correspond à la token remote_configVersion Enterprise.

Par exemple, si vous voulez créer un agent qui appartient au groupe Applications, avec le nom Mifunne et pointant vers le serveur avec l'adresse IP 192.168.0.59, avec configuration à distance activée, la commande serait:

"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S  --ip 192.168.0.59 --group Applications --alias Mifunne --remote_config 1

Désinstallation sans surveillance

Le désinstalleur, qui est un exécutable nommé uninstall.exe que qui reste dans le répertoire d'installation de Pandora FMS permet également la désinstallation sans surveillance, pour cela vous devez exécuter le désinstalleur avec l'option /S.

Par exemple, supposons que Pandora FMS soit installé dans le chemin par défaut:

"%ProgramFiles%\pandora_agent\uninst.exe" /S

Utilisation de PandoraAgent.exe à partir de la ligne de commande

Si vous exécutez

pandoraagent.exe --help

il affichera quelque chose de similaire à ceci:

C:\Users\Jimmy>"%ProgramFiles%\pandora_agent\pandoraagent.exe" --help
Pandora agent for Windows v7.0NG.761 Build 220427

Usage: C:\Program Files\pandora_agent\pandoraagent.exe [OPTION]

Available options are:
        --install:  Install the Pandora Agent service.
        --uninstall: Uninstall the Pandora Agent service.
        --test-ssh: Test the SSH Pandora Agent configuration.
        --test-ftp: Test the FTP Pandora Agent configuration.
        --process: Run the Pandora Agent as a user process instead of a service.

C:\Users\Jimmy>

Pour installer le service (s'il n'est pas déjà installé), il suffit d'exécuter ce qui suit dans le répertoire où se trouve l'exécutable (généralement C:\Program Files ou équivalent).

pandoraagent.exe --install

Cela instanciera le service sur la machine, en se basant sur le chemin d'accès où se trouve l'adresse de l'utilisateur .exe

Pour tester s'il se connecte via SSH avec le serveur FMS de Pandora :

C:\WINDOWS\system32>cd %PROGRAMFILES%

C:\Program Files>cd pandora_agent

C:\Program Files\pandora_agent>PandoraAgent.exe --test-ssh
Public key file C:\Program Files\pandora_agent\key\id_dsa.pub exists.
Private key file: C:\Program Files\pandora_agent\key\id_dsa exists.
Connecting with munchkin.artica.es.
Authentication successful.
Host fingerprint:
Created a blank XML file in C:\Program Files\pandora_agent\temp\ssh.test
Remote copying C:\Program Files\pandora_agent\temp\ssh.test on server munchkin.artica.es at /var/spool/pandora/data_in/ssh.test
Successfuly file copied to remote host
Successfuly disconnected from remote host
The SSH test was successful!

C:\Program Files\pandora_agent>

Si vous voulez le désinstaller, c'est le même processus mais avec une option différente:

pandoraagent.exe --uninstall

Pandora FMS Windows Agent en tant que processus

Il est possible, pour le débogage, les tests et d'autres circonstances inhabituelles, d'exécuter l'agent en mode “Processus”. Pour ce faire, il faut l'exécuter à partir de la ligne de commande :

pandoraagent.exe --process

Il existe certaines limitations dans l'exécution en mode processus, car Pandora FMS est censé être exécuté en tant que service et sous l'utilisateur SYSTEM. Si vous l'exécutez avec un autre utilisateur sans privilèges, certaines fonctionnalités ne fonctionneront pas correctement.

Retour à l'index de documentation du Pandora FMS