Tabla de Contenidos
Instalación
Instalación de Consola y Servidor de Pandora FMS
¿En cuáles sistemas operativos funciona Pandora FMS?
Pandora FMS necesita Linux para el servidor y la consola. No está oficialmente soportado en MS Windows® ni en otro sistema operativo como Solaris®, BSD o similares, pese a que muchos de sus componentes funcionarán, existen funcionalidades avanzadas que no funcionarán o que darán problemas y es imposible asegurar su funcionamiento.
Los agentes de monitorización sí están soportados para cualquier plataforma, especialmente Microsoft Windows® (todas las versiones desde Windows NT4 hasta los últimos Windows 11), diferentes distribuciones de GNU/Linux (Debian, RedHat, Fedora, Centos, Mint, SUSE, etc.), así como Unix® (Solaris®, HPUX, AIX, BSD, etcétera). También existe un agente para dispostivos Android.
Requisitos mínimos hardware
Los requisitos expuestos en esta tabla son las recomendaciones mínimas para las distintas instalaciones. Estas recomendaciones están calculadas suponiendo que el 80 % de los Módulos tienen histórico de datos y el muestreo medio es de cinco minutos. Estas recomendaciones están especificadas para un entorno donde se instalan en el mismo servidor base de datos, Pandora FMS Server y Consola web.
Hardware | PEQUEÑO: Hasta 5.000 módulos | MEDIANA: Hasta 15.000 módulos | GRANDE*: Hasta 30.000 módulos | Extra GRANDE*: Hasta 80.000 módulos |
---|---|---|---|---|
CPU | 2 núcleos a 2 GHz | 4 núcleos a 2,5 GHz | 6 núcleos a 3 GHz | 10 núcleos a 3 GHz |
RAM | 4 GB | 8 GB | 16 GB | 32 GB |
Velocidad de almacenamiento | 7200 rpm | 15K rpm o SSD | SSD | SSD |
Espacio mínimo | 40GB mínimo 60 GB recomendado | 60GB mínimo 150 GB recomendado | 120GB mínimo 250 GB recomendado | 250GB mínimo 400 GB recomendado |
Estos valores son aproximados y tomando como referencia un entorno con monitorización mixta (agente software y remota) con el intervalo por defecto de 5 minutos y el almacenamiento de datos por defecto. Si se alteran estos valores los requerimientos pueden variar.
* * Para entornos que superen las 80 mil métricas se debe optar por un sistema de monitorización distribuida utilizando múltiples nodos.
(*) En el caso de requerir un mayor rendimiento por nodo, existe la posibilidad de desplegar la base de datos en otra instancia o incluso configurar al nodo para conectar con un cluster de base de datos xtradb.
En caso de instalar Pandora FMS en un entorno virtual, asegúrese de asignar un disco independiente con espacio reservado y una velocidad de acceso elevada. Se recomienda encarecidamente el uso de discos SSD , debido al alto impacto que estos tienen sobre la mejora del rendimiento.
Si necesita guardar la información de más de un mes de antigüedad, deberá crear una base de datos de histórico. Para el dimensionamiento de la máquina consulte los requerimientos de hardware en la tabla anterior.
Requisitos mínimos de software
Software | Requisitos | |
---|---|---|
Sistema Operativo | RedHat Enterprise (RHEL) 8 (recomendado). Rocky Linux 8 . RedHat Enterprise (RHEL) 7.X (solamente versión Enterprise). CentOS 7.X . Ubuntu Server 22.04 (versión 766 o posterior): en la versión Enterprise solamente para los nodos stand alone, los entornos de Metaconsola deben ser instalados en su totalidad en RHEL 8 / Rocky Linux 8 (recomendados) o en su defecto RHEL 7 o CentOS 7.X |
|
Windows Server (2003 o superior) SLES 11 SP1 o superior OpenSUSE 11.X o superior Debian 5, 6, 7 o superior Ubuntu Server 21 o anterior Ubuntu Desktop FreeBSD 9.X o superior Solaris 10/OpenSolaris | Pandora FMS no da soporte oficial en estas plataformas. | |
Permisos | Server Se debe de ejecutar el servicio de Pandora FMS Server como permisos de root. Es posible la ejecución como usuario no root, siendo un procedimiento especial y diferente, más información en este enlace. Consola Para poder utilizar la consola desde cualquier navegador web, Apache debe tener permisos de lectura y ejecución sobre los ficheros de la Consola. Adicionalmente el fichero config.php debe tener los permisos 600 (lectura y escritura para administrator/root ). Es necesario a su vez que se tengan permisos de escritura en el directorio del servidor: /var/spool/pandora/ Agente Software -Linux®: Se debe ejecutar el Agente Software de Pandora FMS Server como permisos de root para poder contar con todas las funcionalidades del agente, aunque también es posible ejecutarlo con otros permisos. -Windows®: Se debe ejecutar el Agente Software de Pandora FMS Server con permisos de administrador. |
|
Consola | PHP 8 → Para versiones de Pandora FMS 760 o posteriores (desde la versión 766 utiliza PHP 8 por defecto). PHP 7.4 → Para versiones de Pandora FMS 759 a 767. PHP 7.2 → Para versiones de Pandora FMS desde 729 a 758. PHP 5 → Para versiones de Pandora FMS 728 o anteriores. |
|
Navegadores | Microsoft Edge®. Opera web browser®. Google Chrome®. Mozilla Firefox® |
|
Se recomiendan Mozilla Firefox® y Google Chrome® para hacer uso de gráficas interactivas y mapas de red. |
Para Pandora FMS (a nivel de servidor) el término EL8 es utilizado para denotar el conjunto de sistemas operativos recomendados, el cual está conformado por Rocky Linux 8™, AlmaLinux 8® y RedHat 8®.
Requisitos de Base de datos
BBDD | Detalles |
---|---|
MySQL Standard | Versión 5.7 por defecto, a partir de la versión 760 tiene soporte para MySQL versión 8. Para la instalación estándar se requiere un usuario con privilegios de creación en la BBDD de Pandora FMS. En caso de no poseer dicho usuario se podrá realizar una instalación manual. |
Percona Server for MySQL | La instalación de Percona Server for MySQL se recomienda para entornos amplios de Pandora FMS donde se vayan a crear más de 4000 agentes. Versión 5.7 por defecto, a partir de la versión 760 tiene soporte para MySQL versión 8. Para la instalación estándar se requiere un usuario con privilegios de creación en la BBDD de Pandora FMS. En caso de no poseer dicho usuario se podrá realizar una instalación manual. |
Requisitos del Servidor Satélite
Satélite | Detalles |
---|---|
Hardware | Los requisitos de hardware del sistema que albergará el servidor satélite dependerán del volumen de monitorización que deberá de realizar el mismo. Para entornos de menos de 1000 agentes, se recomienda un mínimo de 1 núcleo a 2GHz y 1 GB de RAM. |
Dependencias | Las dependencias fundamentales son: fping nmap perl wmic (versiones anteriores a NG 761). pandorawmic (versión NG 762 y posteriores). |
Binarios | Las dependencias fundamentales son: Linux® 32 Bits Linux® 64 Bits Windows® 32 Bits Windows® 64 Bits Raspberry Pi OS |
Requisitos de Puertos
Puerto | Protocolo | Servicio/Proceso | Descripción | Dirección |
---|---|---|---|---|
80 | TCP | Consola Pandora FMS | Administración de IP’s | Navegador → Servidor Consola Pandora FMS |
80 | TCP | Consola Pandora FMS (Comunicación API) | Utilización de funcionalidad API/CLI | Navegador/Servidor que inicie la consulta → Servidor Consola Pandora FMS |
80 | TCP | Metaconsola | Comunicación entre Metaconsola y Nodos | Servidor Metaconsola → Servidor Nodo Servidor Nodo → Servidor Metaconsola |
162 | UDP | Servidor Pandora FMS | Recepción de traps | Dispositivo generados de traps → Servidor Pandora FMS |
443 | TCP | Consola Pandora FMS (Comunicación API) | Utilización de funcionalidad API/CLI | Navegador/Servidor que inicie la consulta → Servidor Consola Pandora FMS |
443 | TCP | Metaconsola | Comunicación entre Metaconsola y Nodos | Servidor Metaconsola → Servidor Nodo Servidor Nodo → Servidor Metaconsola |
3306 | TCP | Consola y Servidor Pandora FMS | Conexión a la BBDD | Servidor Consola Pandora FMS → Servidor BBDD Pandora FMS Servidor Pandora FMS → Servidor BBDD Pandora FMS |
3306 | TCP | Metaconsola | Comunicación entre Metaconsola y Nodos BBDD | Servidor Metaconsola → Servidor BBDD Nodos Servidor Nodo → Servidor BBDD Metaconsola |
4444 | TCP | Servidor Pandora FMS | Conexión con Selenium GRID | Servidor Pandora FMS → Servidor Selenium |
9995 | UDP | Servidor Pandora FMS | Recepción de sondas Netflow | Servidor nfcapd → Servidor Pandora FMS |
9200 | TCP | Consola y Servidor Pandora FMS | Gestión de almacenamiento de Logs con Elasticsearch | Servidor Elasticsearch → Servidor Pandora FMS |
41121 | TCP | Agentes de Pandora FMS | Comunicación Tentacle | Servidor Agente Software → Servidor Pandora FMS |
Se recomienda facilitar la comunicación desde el servidor y la consola de Pandora FMS a toda su red. Para monitorización estándar se necesitaría como mínimo: | ||||
80 | TCP | Servidor Pandora FMS | Monitorización web para servidor WUX | Servidor Pandora FMS → Servidor a monitorizar |
161 | UDP | Consola y Servidor Pandora FMS | Monitorización mediante SNMP Polling | Servidor Pandora FMS → Servidor a monitorizar |
443 | TCP | Servidor Pandora FMS | Monitorización web para servidor WUX | Servidor Pandora FMS → Servidor a monitorizar |
ICMP | ICMP | Consola y Servidor Pandora FMS | Monitorización de red con chequeos ICMP | Servidor Pandora FMS → Servidor a monitorizar |
Dependencias de paquetes
Pandora FMS depende en gran parte del sistema operativo Linux®, pero además necesita paquetes adicionales que muchas veces no vienen instalados de forma predeterminada. En el proceso de instalación se detallan de forma específica esas dependencias para sistemas CentOS.
Cuestiones previas a la instalación
MySQL
Durante el proceso de instalación de Pandora FMS en sistemas CentOS 7 y 8 por paquetes ya se explica cómo instalar y configurar la base de datos compatible con el servidor, por lo que es innecesario una instalación previa antes de seguir la guía y así bien puede saltar este punto.
Necesitará un servidor MySQL operativo antes de instalar Pandora FMS, ya que el siguiente paso tras instalar los paquetes de Pandora FMS, es configurar el acceso a la base de datos. Si está instalando Pandora FMS a la vez que el servidor MySQL, recuerde que tiene que arrancar y configurar el acceso al usuario root de MySQL. Esto se hace mediante dos comandos:
1. Arrancar con systemd:
systemctl start mysql
De manera alternativa puede usar: /etc/init.d/mysql start
.
2. Configurar la contraseña (password) del usuario administrador root:
mysqladmin password <password>
En <password>
colocará la contraseña que se establece para el usuario root. Este password será solicitado durante todo el proceso de instalación de Pandora FMS.
Orden de instalación de Pandora FMS
Es recomendable seguir el siguiente orden al instalar Pandora FMS:
- Instalar la consola
- Instalar el servidor
La razón es que la base de datos MySQL que usa el servidor se crea en el proceso de configuración inicial de la Consola y por ello, para asegurar el correcto funcionamiento del servidor, es recomendable realizar primero el proceso de instalación completo de la Consola.
Es innecesario que la Consola y el servidor de Pandora FMS se encuentren alojados en la misma máquina. Es posible indicar a ambos dónde se encuentra la base de datos MySQL mediante los correspondientes ficheros de configuración, aunque en entornos Enterprise a la hora de realizar una instalación distribuida, hay que tener en cuenta más factores para la instalación.
La instalación del Agente Software la podemos realizar sin ningún problema antes o después de instalar el servidor y la consola ya que es independiente de estos y puede estar instalado en cualquier máquina.
Instalación de la versión Enterprise de Pandora FMS
El orden adecuado para realizar una instalación Enterprise es el siguiente:
- Instale la Consola Open Source.
- Instale la Consola de la versión Enterprise.
- Instale el servidor de la versión Enterprise.
- Al acceder a la Consola, aparecerán cuadros requiriendo que introduzca su código de licencia Enterprise.
La validación de la licencia solo se realiza en la Consola, no en el servidor.
Puede encontrar detalles sobre cómo introducir correctamente la licencia en la siguiente sección: Activar licencia v5.X
Enterprise Alternative Server packages
También puede optar por descargar e instalar la versión Enterprise en un novedoso paquete alterno.
Es un conjunto de ficheros binarios en disponible en formato .tar.gz
y .rpm
, es una compilación binaria diferente de la habitual, en fase experimental.
Tiene como ventajas la implementación de la conexión de manera cifrada a la base de datos MySQL® así como también la opción a utilizar MS SQL Server®.
Desde la sección de soporte técnico podrá solicitar el acceder a dicho recurso.
Herramienta de instalación en línea
Si tiene acceso a Internet se recomienda que realice la instalación en línea (online) por medio de esta útil herramienta.
Entorno monolito Pandora FMS (server/console/database)
Este método de instalación es especialmente útil cuando el entorno está alojado en proveedores en la nube aunque no es exclusivo para este tipo de entornos.
El término “proveedor en la Nube” (o simplemente “Nube”) es utilizado para describir el alojamiento de máquinas virtuales, ya sea de manera exclusiva o compartida, en proveedores especializados con hardware, hipervisores y sistemas web de atención al cliente para su configuración y administración.
Para cualquiera de ellos puede instalar Pandora FMS edición Community. Se recomienda Red Hat (RHEL) 8.x como sistema operativo aunque también tiene compatibilidad oficial con RockyLinux 8.x, AlmaLinux 8.x, Ububtu 22.x y Centos 7.x.
Los requisitos mínimos de hardware para esta instalación son: 1 núcleo (core), 2 gigabytes en memoria RAM y 20 gigabytes en espacio libre en disco, preferiblemente de tipo Solid State Drive (SSD).
Estos requisitos son los mínimos de instalación, para dimensionar adecuadamente el entorno de monitorización recomendamos ir a la sección de requisitos mínimos de hardware.
Requisitos para el uso de la herramienta de instalación en línea ( online )
- Tener acceso a internet (URL necesarias). Además de estas URL es necesario tener acceso a los repositorios oficiales de la distribución utilizada (RHEL / Rocky Linux / CentOS / Ubuntu Server).
- Tener instalado curl (viene por defecto en la mayoría de las distribuciones)
- Cumplir con los requisitos mínimos de hardware.
- Ser usuario administrador root.
- Contar con un SO compatible.
- En el caso de usar RHEL 8 será necesario que previamente esté activado con una licencia y subscrito a los repositorios estándar.
Para usar la herramienta de instalación online simplemente acceda a la línea de comandos dispuesta por su proveedor en la Nube, con usuario administrador root, y ejecute:
Para el caso de CentOS 7.x:
curl -sSL https://pfms.me/deploy-pandora | bash
Para el caso de utilizar RHEL 8.x y Rocky Linux 8.x:
curl -sSL https://pfms.me/deploy-pandora-el8 | bash
Si utiliza Ubuntu Server 22.04 para instalar la versión:
curl -SsL https://pfms.me/deploy-pandora-ubuntu | bash
Existe una herramienta similar de instalación online para la versión enterprise de Pandora FMS que puede solicitarse si ya es usuario de esta versión a través del portal de soporte o a través de este enlace obtener un trial (demo) gratuito.
Además, para la instalación de Satellite server, cuenta igualmente con un instalador en línea.
Con esta ejecución se instalará todo el conjunto (stack) necesario de Pandora FMS dejando una instancia completamente funcional para comenzar a monitorizar.
Puede obtener más información en el videotutorial «Instaladores Cloud (agentes, servidor)».
Instalación personalizada utilizando la herramienta de instalación online
Aunque la ejecución anterior hace una instalación completa del entorno, es posible definir diferentes modificadores a través de variables de entorno para personalizar la instalación.
Parámetros personalizados para RHEL 8.x y Rocky Linux 8.x
- TZ: Define el time zone (huso horario) de la máquina, por defecto es
Europe/Madrid
. - DBHOST: El host (anfitrión) de la base de datos, por defecto
DBHOST=127.0.0.1
. - DBNAME: El nombre de la base de datos a crear, por defecto
DBNAME=pandora
. - DBUSER: El usuario de la base de datos que se creará, por defecto
DBUSER=pandora
. - DBPASS: La contraseña (password) para el usuario que se creará, por defecto
DBPASS=pandora
. - DBPORT: Número de puerto de la base de datos a conectar, por defecto
DBPORT=3306
. - DBROOTPASS: Contraseña del usuario root de la base de datos, por defecto
DBROOTPASS=pandora
. - SKIP_PRECHECK: Saltarse el chequeo de sí ya existe una instalación previa de pandora, útil para crear una base de datos nueva y apuntar la instalación a esta; por defecto
SKIP_PRECHECK=0
. - SKIP_DATABASE_INSTALL: Saltarse la instalación de la base de datos, útil para cuando se tenga ya una base de datos instalada, bien sea local o remota y se usen las credenciales de este para crear la base de datos de Pandora FMS; por defecto
SKIP_DATABASE_INSTALL=0
. - SKIP_KERNEL_OPTIMIZATIONS: Saltarse la optimización de kernel recomendada, solo para usuarios avanzados. Por defecto
SKIP_KERNEL_OPTIMIZATIONS=0
. - MYVER: Define la versión de MySQL a instalar, si se define 80 se instalará MySQL 8. Por defecto
MYVER=80
(despliega MySQL 8.0). - PHPVER: Define la versión de PHP a instalar, por defecto
PHPVER=8
(despliega PHP 8). - PANDORA_SERVER_PACKAGE: Define la URL del paquete RPM del servidor de Pandora FMS que se desee instalar. Por defecto está definida la última versión disponible.
- PANDORA_CONSOLE_PACKAGE: Define la URL del paquete RPM de la Consola web de Pandora FMS que se desee instalar. Por defecto está definida la última versión disponible.
- PANDORA_AGENT_PACKAGE: Define la URL del paquete RPM del Agente software de Pandora FMS que se desee instalar. Por defecto está definida la última versión disponible.
- PANDORA_BETA: Si se define a
1
se instalarán los paquetes de la última version beta disponible (solo para entornos de prueba). Por defectoPANDORA_BETA=0
(si están definidos paquetes específicos se ignora esta opción). - PANDORA_LTS: Instala la última versión Long Term Support (LTS), una versión de máxima estabilidad que incorpora gran corrección de fallos. Por defecto activa (PANDORA_LTS=1), si se establece a cero instala la última versión regular, Regular Rolling Release (RRR).
Para el uso de estas variables de entorno basta con definirlas antes de ejecutar el script de instalación, por ejemplo, en una instalación en RHEL 8 con variables definidas ejecute el bloque:
env TZ='Europe/Madrid' \ DBHOST='127.0.0.1' \ DBNAME='pandora' \ DBUSER='pandora' \ DBPASS='pandora' \ DBPORT='3306' \ DBROOTPASS='pandora' \ MYVER=80 \ 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 \ PANDORA_LTS=1 \ sh -c "$(curl -fsSL https://pfms.me/deploy-pandora-el8)"
Parámetros personalizados para Ubuntu Server 22.04
- TZ: Define el time zone (huso horario) de la máquina, por defecto es
Europe/Madrid
. - PHPVER: Define la versión de PHP a instalar. Por defecto
PHPVER=8
(despliega PHP 8). - DBHOST: El host (anfitrión) de la base de datos, por defecto
DBHOST=127.0.0.1
. - DBNAME: El nombre de la base de datos a crear, por defecto
DBNAME=pandora
. - DBUSER: El usuario de la base de datos que se creará, por defecto
DBUSER=pandora
. - DBPASS: La contraseña (password) para el usuario que se creará, por defecto
DBPASS=pandora
. - DBPORT: Número de puerto de la base de datos a conectar, por defecto
DBPORT=3306
. - DBROOTPASS: Contraseña del usuario root de la base de datos, por defecto
DBROOTPASS=pandora
. - SKIP_PRECHECK: Saltarse el chequeo si ya existe una instalación previa de pandora, útil para crear una base de datos nueva y apuntar la instalación a esta; por defecto
SKIP_PRECHECK=0
. - SKIP_DATABASE_INSTALL: Saltarse la instalación de la base de datos, útil para cuando se tenga ya una base de datos instalada, bien sea local o remota y se usen las credenciales de este para crear la base de datos de Pandora FMS; por defecto
SKIP_DATABASE_INSTALL=0
. - SKIP_KERNEL_OPTIMIZATIONS: Saltarse la optimizacion de kernel recomendada, solo para usuarios avanzados. Por defecto
SKIP_KERNEL_OPTIMIZATIONS=0
. - POOL_SIZE: Especifica un valor de memoria a utilizar, por defecto lo realiza de manera automática.
- PANDORA_BETA: Si se define a
1
se instalarán los paquetes de la última version beta disponible (solo para entornos de prueba). Por defectoPANDORA_BETA=0
. - PANDORA_LTS: Instala la última versión Long Term Support (LTS), una versión de máxima estabilidad que incorpora gran corrección de fallos. Por defecto activa (PANDORA_LTS=1), si se establece a cero instala la última versión regular, Regular Rolling Release (RRR).
Para el uso de estas variables de entorno basta con definirlas antes de ejecutar el script de instalación, por ejemplo, en una instalación en Ubuntu Server 22.04 con variables definidas ejecute el bloque:
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 \ PANDORA_LTS=1 \ bash -c "$(curl -SsL https://pfms.me/deploy-pandora-ubuntu)"
Instalación de Pandora FMS con una base de datos externa
Versión 765 o posterior.
Dado el caso se cuente con un poderoso servidor exclusivo para alojar la base de datos (DB) para Pandora FMS, existe otra personalización para la instalación en línea.
Primero debe tener en cuenta, a grandes rasgos, cómo debe planificar la instalación para que tanto el servidor PFMS como su Consola web (PANDORA FMS SERVER+CONSOLE) conecten a una base de datos remota (DB):
- Conéctese al servidor que aloja el motor de la base de datos, tome nota exacta de su URL o su dirección IP (DBHOST).
- El número de puerto (DBPORT) por defecto es
3306
, tome nota si utiliza uno distinto. - Debe crear la base de datos, anote exactamente el nombre utilizado (se recomienda usar
pandora
como DBNAME). - Debe crear el usuario a utilizar para conectar a la base de datos (se recomienda usar
pandora
como DBUSER). - Asigne una contraseña para el usuario creado en el paso anterior (DBPASS).
Para cumplir con la Arquitectura de seguridad de Pandora FMS, utilice una contraseña distinta a la establecida por defecto.
- Asigne todos los permisos sobre la base de datos creada al usuario creado.
Para cumplir con la Arquitectura de seguridad de Pandora FMS, establezca limitar la conexión a la dirección IP o URL del futuro servidor PFMS y para el usuario creado. Esto garantizará de que, si las contraseñas se ven comprometidas, serán inútiles si son usadas desde un dispositivo distinto al servidor PFMS a crear.
- Ya con todo esto establecido, realice una conexión de prueba por línea de comandos desde el futuro servidor PFMS a la base de datos creada, esto garantizará que existe comunicación verificada y lista para trabajar.
- El parámetro de instalación que permite conectar a una base de datos remota durante la instalación en línea es SKIP_DATABASE_INSTALL y su valor debe ser establecido a
1
. - Proceda a realizar la instalación propiamente dicha con la herramienta de instalación en línea. Se muestra a continuación un ejemplo simplificado y con los valores por defecto (recuerde siempre utilizar contraseña de usuario distinta a la establecida por defecto).
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)"
Instalación en línea del Agente Software de Pandora FMS
Para instalar solamente el Agente Software existe también una herramienta de instalación en línea por medio de comando BASH.
- Es compatible con los sistemas operativos GNU/Linux® de base Red Hat (Fedora, Centos, etcétera) y Debian (Ubuntu Server, Devuan, Lubuntu, etcétera). Puede obtener más información en el vídeo tutorial «Desplegar agentes de Pandora FMS en entornos Cloud».
- Disponible en MS Windows® por medio de la tecnología Powershell®.
Para GNU/Linux
Requisitos para el uso de la herramienta de instalación en línea (online):
- Tener acceso a internet.
- Tener instalado curl (viene por defecto en la mayoría de las instalaciones).
- Ser usuario administrador root.
- Contar con un SO compatible.
El script soporta una serie de variables de entorno para personalizar la instalación. Solamente una de ellas es obligatoria: $PANDORA_SERVER_IP , por lo que para realizar una instalación estándar en una sola línea basta con ejecutar:
export PANDORA_SERVER_IP=<PandoraServer IP or FQDN> && curl -Ls https://pfms.me/agent-deploy | bash
Estas variables de entorno se utilizan solo en el proceso de instalación, pueden ser destruidas o cambiadas después de la instalación sin alterar el comportamiento del agente software de Pandora FMS.
Opcionalmente es posible utilizar otras variables env para personalizar la instalación:
- $PANDORA_REMOTE_CONFIG: Configurar la configuración remota en la versión Enterprise. Cero (
0
) por defecto, desactivado. - $PANDORA_AGENT_NAME: Configura el nombre del agente. Autogenerado por defecto.
- $PANDORA_AGENT_ALIAS: Configura el alias del Agente Software. Por defecto el nombre de host.
- $PANDORA_GROUP: Configura el grupo del Agente Software. Por defecto
Servers
. - $PANDORA_SECONDARY_GROUPS: Configura los grupos secundarios del Agente Software. Vacío por defecto
- $PANDORA_DEBUG: Configurar el ajuste de depuración. Cero (
0
) por defecto, desactivado. - $TIMEZONE : Configura la zona horaria del sistema.
- $PANDORA_AGENT_SSL: Permite configurar las comunicaciones cifradas entre el Agente Software y el servidor PFMS correspondiente. Por defecto no habilitado (
no
), para habilitarlo utiliceyes
(esto también instalará las dependencias de software para cifrar dichas comunicaciones). Utilice comillas simples para delimitar el valor, observe el siguiente ejemplo:
env \ PANDORA_SERVER_IP='192.168.10.245' \ PANDORA_REMOTE_CONFIG=1 \ PANDORA_AGENT_NAME='pandora_agent_name' \ PANDORA_AGENT_ALIAS='pandora_AGENT_ALIAS' \ PANDORA_GROUP='Servers' \ PANDORA_SECONDARY_GROUPS='VMware,Web' \ PANDORA_AGENT_SSL='yes' \ curl -Ls https://pfms.me/agent-deploy | bash
Tenga en cuenta que para cifrar las comunicaciones por medio del protocolo Tentacle entre los agentes software y sus respectivos servidores PFMS será necesario contar previamente con certificados y claves SSL. Visite la sección “Cifrado de la comunicación” en la referencia técnica del protocolo Tentacle.
Para MS Windows
Requisitos para el uso de la herramienta de instalación en línea (online):
- Tener acceso a internet.
- Tener instalado powershell.
Ejecutar los comandos siguientes en una ventana terminal con Powershell y con permisos de administrador (administrator):
Invoke-WebRequest -Uri https://firefly.pandorafms.com/pandorafms/latest/Windows/Pandora%20FMS%20Windows%20Agent%20v7.0NG.x86_64.exe -OutFile ${env:tmp}\pandora-agent-windows.exe; & ${env:tmp}\pandora-agent-windows.exe /S --ip [PANDORASERVER IP or NAME] --group [GROUPNAME] --remote_config 1
Luego:
NET START PandoraFMSAgent
Instalación por paquetes
Esta sección es referencial ya que se ahorra tiempo y esfuerzo al utilizar la herramienta de instalación en línea. Se recomienda encarecidamente usar esa opción para instalar el servidor PFMS.
Instrucciones para:
- CentOS 7.
- Rocky Linux 8.
- Ubuntu Server 22.04 .
Configuración de repositorios
Configuración de repositorios en Rocky Linux 8
Para configurarlo será necesario ejecutar los siguientes comandos:
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
(Nota: utilizar PowerTools
o powertools
según sea el caso.)
Configuración de repositorios en CentOS 7
Configure yum y los repositorios necesarios, debe ejecutar los siguientes comandos:
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
Actualización de repositorios en Ubuntu Server 22.04
Ejecute como usuario root o por medio del comando sudo:
add-apt-repository ppa:ondrej/php -y apt update apt install -y gawk sed grep
Instalación de base de datos
Instalación de base de datos en Rocky Linux 8
Será necesario también instalar una base de datos Percona ejecutando los comandos:
dnf install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm dnf module disable -y mysql rm -rf /etc/my.cnf percona-release setup ps80 -y dnf install -y percona-server-server percona-xtrabackup-80
Instalación de base de datos en CentOS 7
Será necesario también instalar una base de datos Percona ejecutando los comandos:
yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm rm -rf /etc/my.cnf percona-release setup ps80 -y yum install -y percona-server-server percona-xtrabackup-80
Instalación de base de datos en Ubuntu Server 22.04
Configuración de variables de instalación y entorno:
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")
Instale MySQL server:
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
Instalación de dependencias
Instalación de dependencias en Rocky Linux 8
Dependencias de la Consola
Con dnf y Percona ya instalados podrá empezar a instalar todas las dependencias necesarias para la Consola ejecutando el siguiente bloque de comandos:
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
- Para NG 767 y versiones anteriores. Phantomjs es un componente especial que se utiliza para poder generar gráficas dinámicamente en PDF. Instale mediante el comando:
dnf install -y http://firefly.artica.es/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm
Dependencias del servidor
Con las dependencias de la consola ya instaladas es momento de instalar las dependencias del servidor:
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
Las siguientes dependencias adicionales de diferentes componentes será necesario instalarlas también desde el repositorio público de Pandora FMS:
- Para NG 761 y versiones anteriores:
dnf install -y https://firefly.artica.es/centos8/wmi-1.3.14-4.el7.art.x86_64.rpm
- Para NG 762 y versiones posteriores el componente PandoraWMIC:
dnf install -y https://firefly.artica.es/centos8/pandorawmic-1.0.0-1.x86_64.rpm
- Además:
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
Aunque se observe en el enlace de la instalación de xprobe
que el paquete se encuentra en el repositorio de CentOS 7, funciona correctamente en ambas versiones.
Tras realizar los pasos anteriores, deshabilite SELinux y el cortafuego:
setenforce 0 sed -i -e "s/^SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config systemctl disable firewalld --now
Si usted decide hacer uso de Security-Enhanced Linux (SELinux) con Pandora FMS debe seguir estas instrucciones.
En caso de ser necesario deberá añadir todas las dependencias de Discovery para cada sección.
Llegados a este punto puede continuar con la configuración del sistema operativo y base de datos siguiendo este enlace
Instalación de dependencias en CentOS 7
Dependencias de la consola
Una vez con los repositorios y Percona instalados podrá comenzar a instalar todas las dependencias necesarias para la Consola ejecutando el siguiente bloque de comandos:
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
- Para NG 767 y versiones anteriores. Phantomjs es un compente especial que se utiliza para poder generar gráficas dinámicamente en PDF. Instale desde servidores de Pandora FMS mediante el comando:
yum install -y https://firefly.pandorafms.com/centos8/phantomjs-2.1.1-1.el7.x86_64.rpm
Aunque se observe en el enlace de la instalación de phantomjs
que el paquete se encuentra en el repositorio de CentOS 8, funciona correctamente en ambas versiones.
Dependencias del servidor
Para instalar todas las dependencias necesarias para el servidor ejecute el siguiente bloque de comandos:
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 versión 768 PFMS es necesario contar con la versión 2.13 o superior de Thread::Semaphore
para el correcto funcionamiento del servidor, se recomienda usar el gestor de paquetes cpanm para instalar una versión más reciente y compatible:
cpanm -i Thread::Semaphore
Las siguientes dependencias adicionales de diferentes componentes será necesario instalarlas también, desde nuestro repositorio público:
- Para NG 761 y versiones anteriores:
yum install -y https://firefly.pandorafms.com/centos7/wmi-1.3.14-4.el7.art.x86_64.rpm
- Para NG 762 y versiones posteriores el componente PandoraWMIC:
yum install -y https://firefly.artica.es/centos7/pandorawmic-1.0.0-1.x86_64.rpm
- Y, además:
yum install -y https://firefly.pandorafms.com/centos7/xprobe2-0.3-12.2.x86_64.rpm
Tras realizar los pasos anteriores, deshabilite SELinux y el cortafuego:
setenforce 0 sed -i -e "s/^SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config systemctl disable firewalld --now
Si usted decide hacer uso de Security-Enhanced Linux (SELinux) con Pandora FMS debe seguir estas instrucciones.
Instalación de dependencias en Ubuntu Server 22.04
Dependencias de la consola
Una vez con los repositorios y MySQL instalados podrá comenzar a instalar todas las dependencias necesarias para la Consola ejecutando el siguiente bloque de comandos:
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 \ snmp-mib-downloader " apt install -y $console_dependencies
- Para NG 767 y versiones anteriores. Phantomjs es un componente especial que se utiliza para poder generar gráficas dinámicamente en PDF. Instale mediante el comando:
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
Dependencias del servidor
Para instalar todas las dependencias necesarias para el servidor ejecute el siguiente bloque de comandos:
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 \ arping " apt install -y $server_dependencies
Las siguientes dependencias adicionales de diferentes componentes será necesario instalarlas también, desde nuestro repositorio público:
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/
Utilidades básicas:
apt install -y net-tools vim vim curl wget
Apache 2 y 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
Utilidades 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
Utilidades SNMP:
cat> /etc/snmp/snmptrapd.conf <<EOF authCommunity log public disableAuthorization yes EOF
Optimización para 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
Por último desactive AppArmor y UFW:
# Disabling apparmor and ufw systemctl stop ufw.service systemctl disable ufw systemctl stop apparmor systemctl disable apparmor
Ajustes del SO y creación de base de datos
Ajustes del SO y creación de base de datos en CentOS 7 y Rocky Linux 8
A partir de este punto la instalación para CentOS 7 y RHEL / Rocky Linux 8 es común para ambos sistemas, si hay algún paso que no sea común se indicará en negrita el sistema operativo para el que es válido.
Para configurar Pandora FMS por paquetes será necesario definir primero las siguientes variables y que utilizaremos en los siguientes pasos:
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
A continuación puede comenzar a configurar la base de datos:
systemctl start mysqld mysql -uroot -p$(grep "temporary password" /var/log/mysqld.log | rev | cut -d' ' -f1 | rev)
echo """ SET PASSWORD FOR 'root'@'localhost' = 'Pandor4!'; UNINSTALL COMPONENT 'file://component_validate_password'; SET PASSWORD FOR 'root'@'localhost' = '$DBROOTPASS'; """ | mysql --connect-expired-password -uroot -p$MYSQL_PWD echo "create database $DBNAME" | mysql -u$DBROOTUSER -P$DBPORT -h$DBHOST echo "CREATE USER \"$DBUSER\"@'%' IDENTIFIED BY \"$DBPASS\";" | mysql -u$DBROOTUSER -P$DBPORT -h$DBHOST echo "ALTER USER \"$DBUSER\"@'%' IDENTIFIED WITH mysql_native_password BY \"$DBPASS\"" | mysql -u$DBROOTUSER -P$DBPORT -h$DBHOST
Genere también el fichero 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 sql_mode="" [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid EO_CONFIG_F
Para MySQL versión 8, y versiones posteriores, el equipo de desarrollo de MySQL ha retirado el soporte para query cache, si desea obtener más información puede visitar el siguiente enlace web (en inglés):
https://dev.mysql.com/blog-archive/mysql-8-0-retiring-support-for-the-query-cache/
Una vez guardados los cambios, será necesario reiniciar el servicio mysqld
.
systemctl restart mysqld
Habilite los servicios mysql
y apache
:
systemctl enable mysqld --now systemctl enable httpd --now
Si utiliza RHEL / Rocky Linux 8 ejecute, además:
systemctl enable php-fpm --now
Ajustes del SO y creación de base de datos en Ubuntu Server 22.04
Para configurar Pandora FMS por paquetes será necesario definir primero las siguientes variables y que utilizaremos en los siguientes pasos:
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
A continuación puede comenzar a configurar la base de datos:
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
Una vez guardados los cambios, será necesario reiniciar el servicio mysql
.
systemctl restart mysql
Instalación de Consola y servidor de Pandora FMS
Instalación de Consola y servidor de Pandora FMS en CentOS 7 y Rocky Linux 8
Con todo el entorno preparado, es momento de instalar Pandora FMS. Lo primero será crear un directorio para almacenar todos los datos.
mkdir $HOME/pandora && cd $HOME/pandora
Será necesario descargar los paquetes de la Consola y Servidor desde Sourceforge (open) o los enlaces que provea el equipo de soporte o comercial (Enterprise).
En el caso de la versión open:
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
Con los paquetes ya preparados, puede comenzar la instalación. En el caso de la Consola Enterprise debe contar con dos paquetes adicionales más: el paquete el paquete de Consola Enterprise y el del servidor Enterprise (que es un fichero tarball que se instala al margen de los paquetes RPM).
Instalación de los paquetes (después de descargarlos):
yum install -y $HOME/pandora/pandorafms*.rpm
Para la instalación del tarball Enterprise será necesario ejecutar el siguiente comando:
tar xvfz $HOME/pandora/pandorafms_server* && cd pandora_server && ./pandora_server_installer --install --ha; cd -
Una vez instalados los paquetes, proceda a poblar la base de datos:
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
Después deberá configurar la Consola:
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
Prepare a continuación el fichero 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
Instale la utilidad 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/
Si utiliza RHEL / Rocky Linux 8 debe ejecutar, además:
systemctl restart php-fpm systemctl restart httpd
Se preparará el fichero de configuración del servidor:
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
En la versión Enterprise habilite también el servicio ha
(HA):
systemctl enable pandora_ha --now service tentacle_serverd start
En la versión Community, al no existir el servicio pandora_ha
, será necesario ejecutar los siguientes comandos para habilitar el servidor:
systemctl enable pandora_server --now systemctl start pandora_server service tentacle_serverd start
Habilite el cron
de la consola:
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
Configure 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
Vaya a la dirección IP del servidor CentOS, debería poder acceder a la consola de Pandora FMS y ver el servicio corriendo correctamente:
Con estos pasos tendremos una instalación de Pandora FMS básica. En caso de ser necesario deberá añadir todas las dependencias de Discovery para cada sección.
Se recomienda la instalación del agente para la auto monitorización del servidor.
Si está utilizando EL8 (Enterprise Linux 8), aparte de habilitar la opción en la configuración general, debe modificar el fichero
/etc/php-fpm.d/www.conf
y comentar con un punto y coma el siguiente parámetro:
;php_admin_value[error_log] = /var/log/php-fpm/www-error.log
Instalación de Consola y servidor de Pandora FMS en Ubuntu Server 22.04
Con todo el entorno preparado, es momento de instalar Pandora FMS. Lo primero será entrar al directorio para almacenar todos los datos.
cd $WORKDIR
Será necesario descargar los paquetes de la Consola y Servidor desde nuestros repositorios o los enlaces que provea el equipo de soporte comercial (Enterprise).
En el caso de la versión 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}
Instalación de los paquetes (después de descargarlos):
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
Una vez instalados los paquetes, proceda a crear y poblar la base de datos:
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
Después deberá configurar la Consola:
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
Prepare a continuación el fichero 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
Instale la utilidad 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/
Se preparará el fichero de configuración del servidor:
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
Serán necesario ejecutar los siguientes comandos para habilitar el servidor:
/etc/init.d/pandora_server restart systemctl enable pandora_server systemctl enable tentacle_serverd service tentacle_serverd start
Instale y habilite 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
Habilite el cron
de la consola:
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
Configure 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
Vaya a la dirección IP del servidor Ubuntu Server, debería poder acceder a la consola de Pandora FMS y ver el servicio corriendo correctamente:
Con estos pasos tendremos una instalación de Pandora FMS básica. En caso de ser necesario deberá añadir todas las dependencias de Discovery para cada sección.
Se recomienda la instalación del agente para la auto monitorización del servidor.
Aplicación de la licencia
La versión Enterprise de Pandora FMS viene asociada a una clave individual para cada instalación. Para poder usar las funcionalidades Enterprise y realizar actualizaciones automáticas de la Consola es necesario introducir el número de licencia proporcionado por Artica. A partir de la versión de Pandora FMS 748, el servidor se instala con una licencia trial válida para un máximo de 100 agentes y un mes de uso. Si desea expandir esta licencia, contacte con su comercial de confianza o rellene el siguiente formulario de contacto
La versión Community no requiere ninguna licencia para su uso.
Instalación por paquetes en RHEL 7/8
La instalación de Pandora FMS en sistemas RHEL 7 y RHEL 8 es un servicio Enterprise. Puede consultar cómo realizar la instalación en estos sistemas contactando a su comercial de confianza o rellenando el siguiente formulario de contacto.
Instalación bajo Docker
Este recurso solamente está pensado para entornos de prueba, aprendizaje e incluso preproducción.
Disponemos de una entrada en el sitio web de Docker Hub en el que se explica paso por paso cómo montar un stack de Pandora FMS, actualmente basado en Rocky Linux™ 8, en el siguiente enlace:
También es posible la instalación a través de un fichero yaml
, como método de instalación rápida. A continuación se explica cómo realizar este despliegue mediante docker-compose
.
Primero, es necesario tener instalado en el sistema Docker y Docker Compose. Puede consultar cómo realizar la instalación a través de la documentación oficial de Docker:
https://docs.docker.com/get-docker/
Una vez instalado, use el fichero yaml
desde el repositorio oficial 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
Espere algunos segundos para la descarga y la configuración del entorno. Una vez finalizado, podrá acceder a la consola de Pandora FMS a través de la URL:
http://127.0.0.1:8080/pandora_console
Utilice admin
como usuario y pandora
como contraseña.
Puede obtener más información en el vídeo tutorial «Instalación Pandora FMS en Docker».
Desinstalación de Pandora FMS
Desinstalación de Pandora FMS en CentOS o RHEL
Bastará con ejecutar la orden:
yum remove pandorafms_console pandorafms_server
Si desinstala la versión 761 o posterior:
yum remove pandorawmic
Véase también la desinstalación del agente software PFMS.
Si ha instalado MySQL y ya no lo necesita, puede borrarlo de manera similar:
yum remove Percona-Server*
Instalación personalizada
Instalación manual desde las fuentes en Linux / Unix / MAC OS
Será necesario tener todas las dependencias necesarias instaladas según el sistema operativo, descargar los ficheros en formato tarball (.tar.gz
, .tgz
o .tar.bz2
) y descomprimirlo. Para ello, localice la última versión de Pandora FMS:
Instalación de la consola
Una vez que dispone del fichero comprimido en la Consola, por medio de una ventana terminal:
1. Eleve privilegios a root. Usted es el único responsable de dicha clave.
su -
2. Copie a un directorio donde pueda descomprimir el fichero (en este ejemplo se utiliza /tmp
) y dentro de ese directorio ejecute:
tar xvzf pandorafms_console-X.Y.tar.gz cd pandora_console ./pandora_console_install --install
Instalación del servidor
Una vez que disponga del fichero comprimido el servidor, que tendrá como nombre similar:
pandorafms_server-7.0NG.7xx.tar.gz
1. Eleve privilegios a root. Usted es el único responsable de dicha clave.
su -
2. Copie a un directorio donde pueda descomprimir el fichero (en este ejemplo se vuelve a utilizar /tmp
) y dentro de ese directorio ejecute:
tar xvzf pandorafms_server-7.0NG.7xx.tar.gz cd pandora_server ./pandora_server_installer --install
Si existen problemas de dependencias, debe resolverlas antes de intentar la instalación. Puede forzar la instalación ignorando el problema de dependencias, pero es muy posible que Pandora FMS no funcione correctamente.
Instalación manual (desde código fuente) del servidor
Alternativamente al script de instalación genérico, se puede compilar el código de Pandora FMS mediante el intérprete Perl de su sistema. Este proceso simplemente instala las librerías y los ejecutables mínimos, pero no toca el sistema de scripts de arranque, scripts de mantenimiento, configuración ni ninguna otra cosa sino estrictamente la aplicación y sus librerías. Este proceso es el indicado cuando tiene que actualizar el código del servidor, pero sin sobrescribir su configuración.
Para ello, descomprima el código de su servidor en un directorio (/tmp
en este ejemplo) y tal y como se indica en la sección anterior:
1. Eleve privilegios a root. Usted es el único responsable de dicha clave.
su -
2. Copie al directorio donde está descomprimiendo los ficheros (/tmp
en este ejemplo) y dentro de ese directorio ejecute:
tar xvzf pandorafms_server-X.Y.tar.gz cd pandora_server perl Makefile.PL make make install
Si falta alguna dependencia o existe algún otro problema, el sistema le advertirá de ello. Si observa un mensaje similar a:
Warning: prerequisiete Mail::Sendmail 0 not found Warning: prerequisiete Net::Traceroute::PurePerl 0 not found
Significa que existen algunos paquetes de Perl que Pandora FMS necesita y que el sistema no tiene instalado. Revise los párrafos anteriores para saber como instalar las dependencias necesarias previas para instalar Pandora FMS. No obstante puede ignorar temporalmente esos avisos (son advertencias y no errores) y forzar así la instalación. Con seguridad tendrá problemas en un momento u otro ya que faltará algún componente necesario para funcionar. No obstante, si se conoce el componente que no está instalado y no se va a utilizar (p.e: traceroute
se utiliza exclusivamente para Pandora FMS Recon Server), se puede continuar con seguridad.
Después de ese proceso, automáticamente se copian los ficheros
/usr/local/bin/pandora_server /usr/local/bin/pandora_exec
Y varios ficheros .pm
(librerías de Perl) que necesita Pandora FMS. Esas librerías .pm
se copian a diferentes directorios, dependiendo de la versión de su distribución y de su distribución. Ejemplos:
/usr/local/share/perl/5.10.0/PandoraFMS/
/usr/lib/perl5/site_perl/5.10.0/PandoraFMS/
Instalación de la Versión Enterprise
Para la instalación de la versión Enterprise de Pandora FMS, debe instalar los paquetes Open de la Consola y el servidor, y después añadir los paquetes Enterprise de cada uno. En el caso de la Consola usaremos unos paquetes u otros dependiendo de la distribución que tengamos instalada.
Instalación de la consola Enterprise
Si desea instalar la Consola Enterprise a través del código fuente:
Una vez que tenemos el fichero comprimido con la consola, que se tendrá como nombre pandorafms_console_enterprise-X.X.tar.gz
o similar:
1. Eleve privilegios a root. Usted es el único responsable de dicha clave.
su -
2. Copie a un directorio donde pueda descomprimir el fichero (para este ejemplo se usa /tmp
) y ejecute:
tar xvzf pandorafms_console-X.Xtar.gz
3. Copie al directorio donde esté instalada la Consola de Pandora FMS Open Source:
cp -R enterprise /var/www/html/pandora_console
4. Cambie los permisos para que los ficheros sean propiedad del usuario del servidor web, por ejemplo:
chown -R apache /var/www/html/pandora_console/enterprise
Instalación del servidor Enterprise
Estamos trabajando en una versión experimental que incluirá mejoras en el servidor Enterprise. A partir de la actualización 738 deberá utilizar preferiblemente la versión E7 del servidor de Pandora FMS Enterprise. Únicamente debería utilizar la versión E6 en caso de problemas de compatibilidad.
Para realizar la instalación del servidor Enterprise, primero hay que asegurarse de que la versión Open del servidor está instalada y después proceder a instalar la versión Enterprise.
Una vez que tenga el fichero comprimido en el servidor, que se llamará pandorafms_server_enterprise-X.X.tar.gz
o similar:
1. Eleve privilegios a root. Usted es el único responsable de dicha clave:
su -
2. Copie al directorio para descomprimir los ficheros (/tmp
en el siguiente ejemplo) y dentro de ese directorio ejecute:
tar xvzf pandorafms_server_enterprise-X.X.tar.gz cd pandora_server/ # ./pandora_server_installer --install
En el caso de que el binario del servidor de Pandora FMS no se encuentre en el directorio por defecto (/usr/bin
) habrá que indicar el directorio de la siguiente forma:
# PREFIX=/usr/local ./pandora_server_installer --install
Tras realizar la instalación reinicie el servidor:
/etc/init.d/pandora_server restart
Deben aparecer habilitados los servidores Enterprise.
No reinicie el servidor hasta que la instalación de la llave de licencia de Pandora FMS Enterprise esté completada, ya que si no el servidor no arrancará y su servicio de monitorización quedará interrumpido.
A partir de la versión NG 754 dispone de opciones adicionales en el arranque y parada manual de Entornos de Alta Disponibilidad (HA).
Instalación en una ruta diferente
Para instalar el servidor de Pandora FMS en una ruta diferente, utilice la opción:
./pandora_server_installer --install --destdir <path>
Después de la instalación, deberá configurar el servidor de Pandora FMS para que se inicie de forma automática durante el arranque y configurar el script de mantenimiento de la base de datos, pandora_db
, para que se ejecute de forma periódica. Por ejemplo, en GNU/Linux (sustituya <destdir>
por la ruta que le pasó a la opción 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
Instalación con un usuario no privilegiado
Para instalar el servidor de Pandora FMS con un usuario no privilegiado, lance el siguiente comando con el usuario con el que se desea realizar la instalación:
./pandora_server_installer --install --no-root --destdir /opt/pandora
Este usuario debe tener permisos de escritura sobre la ruta que se le pase a destdir.
Instalación Agentes Pandora FMS
Para la instalación en línea del Agente Software de Pandora FMS consulte la sección “Instalación en línea del Agente Software de Pandora FMS”.
Tenga en cuenta que para cifrar las comunicaciones por medio del protocolo Tentacle entre los agentes software y sus respectivos servidores PFMS será necesario contar previamente con certificados y claves SSL. Visite la sección “Cifrado de la comunicación” en la referencia técnica del protocolo Tentacle.
Requisitos para el Agente
El Agente puede ejecutarse en cualquier equipo con el sistema operativo mínimo requerido, son válidos cualquiera de los siguientes:
Componente | Sistema Operativo |
---|---|
Pandora Agent 4.0 o superior | RedHat Enterprise (RHEL) 6.x y 8. Fedora 34. CentOS 6.x , 7 y 8. AlmaLinux. SLES 11 SP1 o posterior. OpenSUSE 11.x o posterior. Debian 5.x o posterior. Ubuntu Server o Desktop versión 11 o posterior. Linux Mint. Elementary OS. Manjaro. HPUX B.11.11 o posterior, con Perl 5.8. AIX 4.3.3 o posterior, con Perl 5.8. AIX 7.1 y 7.2. BSD Systems (NetBSD, OpenBSD, FreeBSD), con Perl 5.8. MacOS X 10.6 o posterior. Solaris 8 o posterior, con Perl 5.8. Windows NT4 (ver notas especiales de esta 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 o superior | Android 6 o superior |
Pandora Embedded Agent 4.0 o superior | Dispositivos embebidos, requiere compilación |
Existe un agente especial para Windows NT, que es básicamente el agente de Unix compilado para Windows, aunque el rendimiento es muy inferior al de un agente nativo Windows y las funcionalidades de acceso a la API nativa no están presentes.
Además en entornos UNIX debe estar instalado:
- Perl 5.8 o superior
- Será necesario también instalar las siguientes dependencias:
perl-YAML-Tiny-1.73-2 perl-Sys-Syslog unzip
- Configure 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
Instalación del Agente en CentOS 8 / Rocky Linux / AlmaLinux
Instalación de dependencias:
yum install dnf-plugins-core -y yum config-manager --set-enabled powertools -y yum install -y perl-YAML-Tiny perl-Sys-Syslog unzip
Si va a utilizar la opción server_ssl instale las siguientes dependencias, introduzca en la terminal:
yum install perl-IO-Socket-SSL -y
Instalación del Agente:
yum install -y https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm
Instalación del agente en CentOS 7
Instalación de dependencias:
yum install dnf-plugins-core -y yum install -y perl-YAML-Tiny perl-Sys-Syslog unzip
Si va a utilizar la opción server_ssl instale las siguientes dependencias, introduzca en la terminal:
yum install perl-IO-Socket-SSL -y
Instalación del agente:
yum install -y https://firefly.pandorafms.com/pandorafms/latest/RHEL_CentOS/pandorafms_agent_linux-7.0NG.noarch.rpm
Instalación del agente en Ubuntu Server 22.04
Instale el agente:
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/
Elimine el directorio unix
.
Si va a utilizar la opción server_ssl instale las siguientes dependencias, introduzca en la terminal:
apt install libio-socket-ssl-perl -y
Configuración del agente:
sed -i "s/^remote_config.*$/remote_config 1/g" $PANDORA_AGENT_CONF /etc/init.d/pandora_agent_daemon start systemctl enable pandora_agent_daemon
Instalación del Agente desde tarball
Esta versión del agente está preparada para su instalación en cualquier sistema Unix/Linux/macOS.
El agente no requiere compilación ni preparación, una vez haya descargado el agente en formato .tar.gz
:
1. Eleve privilegios a root. Usted es el único responsable de dicha clave.
su -
2. Copie a /tmp
, ingrese a ese directorio y ejecute:
tar xvzf pandorafms_agent_linux-7.0NG.tar.gz cd unix ./pandora_agent_installer --install
3. Arranque manualmente el Agente:
/etc/init.d/pandora_agent_daemon start
Instalación personalizada del agente
El Agente puede ser instalado en un directorio definido por el usuario de forma integral, esto significa que se meterán en ese directorio todos los ficheros del agente: logs, ficheros de configuración, binarios, páginas de ayuda man, etc.
Para usar ese método, simplemente ejecute como el siguiente ejemplo:
./pandora_agent_installer --install /opt/pandora
El único fichero que Pandora FMS creará fuera de ese directorio definido por el usuario, es el lanzador del agente en /etc/init.d/pandora_agent_daemon
(o equivalente en otros sistemas Unix), y el enlace en el directorio del nivel de arranque del sistema, por ejemplo /etc/rc.d/rc2.d/S90pandora_agent_daemon
.
Además, puede configurar la instalación para que en vez de ejecutarse el Agente con usuario root, se pueda ejecutar con otro usuario. Por ejemplo para que el Agente se ejecute con el usuario Pandora, sería:
./pandora_agent_installer --install /home/pandora pandora
Cuando se especifica un usuario personalizado hay que instalar el Agente en una localización personalizada en la que el usuario tenga permisos de escritura (/home/pandora
en el ejemplo anterior).
El usuario pandora viene desactivado por defecto, debe activarlo poniendo una shell válida en /etc/passwd
si quiere usarlo para ejecutar el agente con dicho usuario.
Para los usuarios que se encuentren con una versión de MAC OS X 10.11 o superior (El Capitan o más reciente): Apple ha añadido una nueva capa de seguridad en OS X. Han desaparecido algunos privilegios de root. A la hora de instalar el Agente de Pandora FMS le aparecerá como un proceso restringido. Sólo los procesos restringidos que son firmados por Apple podrán modificar estos archivos. Sin embargo, puede desactivar este sistema de seguridad mediante el arranque en modo de recuperación y su desactivación en un terminal ejecutando: csrutil disable
.
Instalación del agente en NetBSD y FreeBSD
La localización de los ficheros y la estructura del script de inicio son diferentes respecto a Linux.
Las peculiaridades de la instalación en FreeBSD serían las siguientes:
1. Adquiera permisos root
su -
2. Copie el fichero descargado a /tmp
y una vez dentro de /tmp
ejecute:
tar xvzf pandorafms_agent_linux-7.0NG.tar.gz cd unix ./pandora_agent_installer --install
Después de la instalación, añada la siguiente línea a /etc/rc.conf.
pandora_agent_enable="YES"
Para habilitar el agente de Pandora FMS, se necesitan estos ajustes, si no, el proceso no se iniciará.
Si desea iniciar el agente manualmente, ejecute esto:
/usr/local/etc/rc.d/pandora_agent start
Agente:
/usr/local/bin/pandora_agent
Script de arranque:
/usr/local/etc/rc.d/pandora_agent
Fichero de configuración:
/usr/local/etc/pandora/pandora_agent.conf
Plugins:
/usr/local/share/pandora_agent/plugins/*
Ayudas man:
/usr/local/man/man1/*
Otros: Los directorios data_in
y log
son los mismos que en GNU/Linux.
Instalación del Agente en Windows
El agente se entrega como un autoinstalador en formato ejecutable ( .exe
). La instalación básica realiza todos los pasos necesarios y tan sólo es necesario aceptar todas las opciones.
Para instalar el agente de Pandora FMS en Windows® solo hace falta descargarlo y ejecutarlo. El instalador le guiará a través de los pasos necesarios en el idioma que seleccione. En el siguiente ejemplo se muestra la instalación para Windows 10®, recuerde que Pandora FMS funciona en cualquier plataforma moderna de Microsoft® (2000 o superior). También dispone de versiones de 32 y de 64 bits y a partir de la versión 761 está firmado digitalmente. Si ejecuta Windows como usuario estándar necesitará permisos de Administrador, introdúzcalos al ejecutar el instalador.
Seleccione el idioma:
Siga los pasos del instalador:
Acepte los términos de la licencia y pulse Next:
Seleccione la ruta donde se instalará el agente de Pandora FMS, por defecto se instala en:
%ProgramFiles%\pandora_agent
), puede cambiarla pulsando Browse…. Luego pulse Next:
Espere a que se copien los ficheros.
Configure los datos para el agente como la dirección IP (o nombre) del servidor de Pandora FMS que recibirá los datos del Agente. Para poder cambiar otros parámetros, tales como cambiar el nombre del agente (por defecto toma el valor del hostname de la máquina) o la ruta de los ficheros temporales, tendrá que editar a mano la configuración del agente.
En la siguiente ventana aparece la opción de habilitar la configuración remota. Es importante tenerla activada mediante un
1
para tener una copia del agente en el servidor de Pandora FMS y desde ahí poder añadir, editar y borrar módulos locales directamente desde el agente.
Inicie el servicio del agente de Pandora FMS, de lo contrario tendrá que hacerlo de forma manual, o bien se iniciará cuando Windows se reinicie de nuevo.
La instalación ha finalizado, puede cambiar los parámetros del agente en el fichero pandora_agent.conf
o bien a través del enlace directo en el menú Pandora FMS.
Instalación desatendida del Agente Windows
A partir de la versión 5.1 del Agente, el instalador soporta el modo desatendido. Para realizar la instalación simplemente habrá que ejecutar lo siguiente:
"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S
En el caso de que desee instalar el Agente en otra ruta diferente a la de por defecto:
"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S /D=C:\PFMS_agent
También se pueden pasar ciertos parámetros para que se escriban en el fichero de configuración del agente a crear. Gracias a estas opciones el despliegue de los agentes de Pandora FMS es mucho más personalizable. Las opciones por línea de comandos que se soportan son las siguientes:
--ip
- Corresponde con el token llamado server_ip.
--group
- Corresponde con el token llamado group.
--alias
- Corresponde con el token llamado agent_alias.
--remote_config
Por ejemplo, si se quiere crear un agente que pertenezca al grupo Applications, con nombre Mifunne y que apunte al servidor con la dirección IP 192.168.0.59, con la configuración remota habilitada, el comando sería:
"Pandora FMS Windows Agent v7.0NG.VERSION-BUILD_ARCH.exe" /S --ip 192.168.0.59 --group Applications --alias Mifunne --remote_config 1
Desinstalación desatendida
El desinstalador que es un ejecutable llamado uninstall.exe
que queda en el directorio de instalación de Pandora FMS también permite la desinstalación desatendida, para ello hay que ejecutar el desinstalador con la opción /S
.
Por ejemplo, suponiendo que Pandora FMS esté instalado en el vía o path por defecto:
"%ProgramFiles%\pandora_agent\uninst.exe" /S
Utilizando PandoraAgent.exe desde la línea de comandos
Si ejecuta:
pandoraagent.exe --help
mostrará algo similar a esto:
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>
Para instalar el servicio (si este no está instalado), basta con ejecutar lo siguiente dentro del directorio donde está el ejecutable (generalmente C:\Program Files
o equivalente).
pandoraagent.exe --install
Esto instará el servicio en la máquina, basándose en el path donde se ubica el .exe
Para probar si conecta vía SSH con el servidor Pandora FMS:
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 desea desinstalarlo, es el mismo proceso pero con diferente opción:
pandoraagent.exe --uninstall
Agente Windows de Pandora FMS como proceso
Es posible, por motivos de depuración, pruebas y otras circunstancias poco habituales, ejecutar el agente en modo “Proceso”. Esto se hace ejecutándolo desde línea de comando:
pandoraagent.exe --process
Existen algunas limitaciones en la ejecución al modo proceso, ya que Pandora FMS está pensado para ejecutarse como servicio y bajo el usuario SYSTEM
. Si lo ejecuta con otro usuario sin privilegios, habrá funcionalidades que no operen correctamente.