Cómo instalar la herramienta de monitorización de Pandora FMS en Ubuntu 20.04
Pandora FMS, también conocido como «Sistema de Monitorización Flexible de Pandora», es una herramienta de monitorización para servidores, redes, aplicaciones e infraestructura virtual. Es sencilla, escalable y adecuada para entornos complejos y de mayor tamaño. Utiliza varios protocolos como TCP, UDP, SNMP, HTTP y agentes para recoger las diferentes métricas. Puedes monitorizar el estado y el rendimiento de servidores web, servidores de bases de datos, aplicaciones, routers y otros dispositivos de red utilizando Pandora FMS.
En este tutorial, te mostraremos cómo instalar y configurar Pandora FMS en Ubuntu 20.04.
Requisitos previos
- Un servidor con Ubuntu 20.04.
- Un nombre de dominio válido apuntado con la IP de tu servidor.
- Una contraseña de root configurada el servidor.
Cómo empezar
En primer lugar, se recomienda actualizar los paquetes de tu sistema a la versión actualizada. Puedes actualizarlos con el siguiente comando:
apt-get update -y
Una vez actualizados todos los paquetes, instala todas las dependencias necesarias para Pandora FMS con el siguiente comando:
apt-get install snmp snmpd libnet-telnet-perl libgeo-ip-perl libtime-format-perl libxml-simple-perl libxml-twig-perl libdbi-perl libnetaddr-ip-perl libhtml-parser-perl xprobe2 nmap libmail-sendmail-perl traceroute libio-socket-inet6-perl libhtml-tree-perl libsnmp-perl snmp-mibs-downloader libio-socket-multicast-perl libsnmp-perl libjson-perl -y
Instalar servidor LAMP
A continuación, tendrás que instalar en tu sistema el servidor Apache, MariaDB, PHP y otras dependencias necesarias. Puedes instalarlos todos con el siguiente comando:
apt-get install apache2 mariadb-server php php-common php-gmp php-curl php-mbstring php-xmlrpc php-mysql php-gd php-bcmath php-xml php-cli php-zip php-pear php-zip php-sqlite3 php-snmp php-db graphviz php-curl php-ldap dbconfig-common unzip git -y
Después de instalar todos los paquetes, edita el archivo php.ini y define la configuración recomendada:
nano /etc/php/7.4/apache2/php.ini
Cambia las siguientes líneas:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 max_input_vars = 2000 date.timezone = Asia/Kolkata
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar la base de datos MariaDB
Por defecto, la contraseña de root de MariaDB no está configurada. Así que tendrás que establecerla en tu sistema. Puedes hacerlo ejecutando el siguiente script:
mysql_secure_installation
Responde a todas las preguntas que se muestran a continuación para establecer la contraseña de root:
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
A continuación, entra en el shell de MariaDB con el siguiente comando:
mysql -u root -p
Proporciona tu contraseña de root cuando se te pida y luego activa el plugin mysql_native_password con el siguiente comando:
MariaDB [(none)]> USE mysql;
MariaDB [(none)]> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
A continuación, crea una base de datos y un usuario para Pandora con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE pandora;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON pandora.* to pandora@'localhost' IDENTIFIED BY 'pandora';
A continuación, vacía los privilegios y sal del shell de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
A continuación, tendrás que editar el archivo /etc/mysql/my.cnf y definir el sql_mode.
nano /etc/mysql/my.cnf
Añade las siguientes líneas:
[mysqld] sql_mode=NO_ENGINE_SUBSTITUTION
Guarda y cierra el archivo cuando hayas terminado y reinicia el servicio MariaDB para aplicar los cambios:
systemctl restart mariadb
Descarga Pandoa FMS
A continuación, tendrás que descargar la última versión de pandora FMS desde el repositorio Git. Puedes descargarla con el siguiente comando:
cd /var/www/html/
git clone https://github.com/pandorafms/pandorafms.git
A continuación, da el permiso y la propiedad adecuados al directorio descargado:
chown -R www-data:www-data /var/www/html/pandorafms
chown -R www-data:www-data /var/www/html/pandorafms/pandora_console/
chmod -R 775 /var/www/html/pandorafms/pandora_console/
A continuación, edita el archivo de configuración de Pandora:
nano /var/www/html/pandorafms/pandora_console/include/config.inc.php
Descomenta y cambia las siguientes líneas según la configuración de tu base de datos:
// Default values $config["dbname"]="pandora"; $config["dbuser"]="pandora"; $config["dbpass"]="pandora"; $config["dbhost"]="localhost"; // This is used for reporting, please add "/" character at the end // $config["homedir"]="/var/www/pandora_console/"; // $config["homeurl"]="/pandora_console/"; $config["auth"]["scheme"] = "mysql";
Guarda y cierra el archivo cuando hayas terminado.
Configurar Apache para Pandora FMS
A continuación, tendrás que crear un nuevo archivo de configuración del host virtual de Apache para servir a Pandora FMS. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/pandora.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] ServerName pandora.linuxbuz.com DocumentRoot /var/www/html/pandorafms/pandora_console <Directory /var/www/html/pandorafms/pandora_console> AllowOverride All </Directory> ErrorLog /var/log/apache2/error.log CustomLog /var/log/apache2/access.log combined </VirtualHost>
Guarda y cierra el archivo y luego habilita el host virtual de Pandora con el siguiente comando:
a2ensite pandora
A continuación, recarga el servicio de Apache para aplicar los cambios de configuración:
systemctl restart apache2
Accede a Pandora FMS
Ahora, abre tu navegador web y escribe la URL http://pandora.linuxbuz.com/install.php para acceder a Pandora FMS. Deberías ver el asistente de instalación web de Pandora FMS como se muestra a continuación:
Haz clic en el botón Siguiente. Deberías ver la siguiente página:
Haz clic en el botón«Sí, acepto los términos de la licencia«. Deberías ver la siguiente página:
Asegúrate de que todas las extensiones de PHP están instaladas y haz clic en el botón Siguiente. Deberías ver la siguiente página:
Proporciona tu nombre de usuario raíz, la contraseña raíz de MariaDB, el nombre de la base de datos, la ruta de Pandora y haz clic en el botón Siguiente. Deberías ver la siguiente página:
Esto cambiará la contraseña del usuario de la base de datos de Pandora. Así que tendrás que definir tu contraseña original de la base de datos de Pandora en el archivo config.php.
Abre tu terminal y edita el archivo config.php:
nano /var/www/html/pandorafms/pandora_console/include/config.php
Cambia el campo «$config[«dbpass»]» por tu contraseña original:
// Begin of automatic config file $config["dbtype"] = "mysql"; //DB type (mysql, postgresql...in future others) $config["mysqli"] = true; $config["dbname"]="pandora"; $config["dbuser"]="pandora"; $config["dbpass"]="pandora"; $config["dbhost"]="localhost";
Guarda y cierra el archivo. A continuación, vuelve al asistente de instalación de Pandora y haz clic en el botón Siguiente. Deberías ver la siguiente página:
A continuación, abre de nuevo tu terminal y elimina el archivo install.php:
rm -rf /var/www/html/pandorafms/pandora_console/install.php
A continuación, vuelve al asistente de instalación de Pandora FMS y haz clic en el botón«Haz clic aquí para acceder a tu consola de Pandora FMS«. Deberías ver la pantalla de inicio de sesión de Pandora FMS:
Proporciona el nombre de usuario por defecto como admin y la contraseña como pandora y luego haz clic en el botón de inicio de sesión. Deberías ver el panel de control de Pandora en la siguiente pantalla:
Asegura Pandora FMS con Let’s Encrypt
A continuación, se recomienda asegurar tu sitio web con Let’s Encrypt SSL. En primer lugar, instala el cliente Certbot con el siguiente comando:
apt-get install python3-certbot-apache -y
Una vez instalado, ejecuta el siguiente comando para asegurar tu sitio web con Let’s Encrypt SSL:
certbot --apache -d pandora.linuxbuz.com
Se te pedirá que proporciones tu correo electrónico y aceptes las condiciones del servicio, como se muestra a continuación:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator standalone, Installer None Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Plugins selected: Authenticator apache, Installer apache Obtaining a new certificate Performing the following challenges: http-01 challenge for pandora.linuxbuz.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/pandora-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/pandora-le-ssl.conf Enabling available site: /etc/apache2/sites-available/pandora-le-ssl.conf
A continuación, selecciona si quieres redirigir el tráfico HTTP a HTTPS como se muestra a continuación:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Escribe 2 y pulsa Intro para instalar el SSL de Let’s Encrypt para tu sitio web:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/pandora.conf to ssl vhost in /etc/apache2/sites-available/pandora-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://pandora.linuxbuz.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=pandora.linuxbuz.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/pandora.linuxbuz.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/pandora.linuxbuz.com/privkey.pem Your cert will expire on 2020-10-23. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Ahora, puedes acceder a Pandora FMS de forma segura utilizando la URL https://pandora.linuxbuz.com.
Conclusión
Enhorabuena! has instalado con éxito la herramienta de monitorización de Pandora FMS con Apache y Let’s Encrypt SSL en el servidor Ubuntu 20.04. Ahora puedes añadir sistemas cliente y empezar a monitorizar desde Pandora FMS.