Pandora FMS, también conocido como "Pandora Flexible Monitoring System", es una herramienta de monitoreo utilizada para servidores, redes, aplicaciones e infraestructura virtual. Es simple, escalable y adecuado para entornos complejos y más grandes. Utiliza varios protocolos, incluidos TCP, UDP, SNMP, HTTP y agentes para recopilar las diferentes métricas. Puede monitorear el estado y el rendimiento de servidores web, servidores de bases de datos, aplicaciones, enrutadores y otros dispositivos de red utilizando Pandora FMS.
En este tutorial, le mostraremos cómo instalar y configurar Pandora FMS en Ubuntu 20.04.
Requisitos
- Un servidor con Ubuntu 20.04.
- Nombre de dominio válido apuntado con la IP de su servidor.
- Se configura una contraseña de root en el servidor.
Cómo empezar
Primero, se recomienda actualizar los paquetes de su sistema a la versión actualizada. Puede actualizarlos con el siguiente comando:
apt-get update -y
Una vez que todos los paquetes estén actualizados, instale todas las dependencias requeridas 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, deberá instalar el servidor Apache, MariaDB, PHP y otras dependencias necesarias en su sistema. Puede instalarlos todos usando 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, edite el archivo php.ini y defina la configuración recomendada:
nano /etc/php/7.4/apache2/php.ini
Cambie 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 haya terminado, puede continuar con el siguiente paso.
Configurar base de datos MariaDB
De forma predeterminada, la contraseña raíz de MariaDB no está configurada. Por lo tanto, deberá configurarlo en su sistema. Puede hacerlo ejecutando el siguiente script:
mysql_secure_installation
Responda todas las preguntas como se muestra 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, inicie sesión en el shell de MariaDB con el siguiente comando:
mysql -u root -p
Proporcione su contraseña raíz cuando se le solicite y luego habilite el complemento 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, cree 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 [email protected]'localhost' IDENTIFIED BY 'pandora';
A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
A continuación, deberá editar el archivo /etc/mysql/my.cnf y definir el modo sql_mode.
nano /etc/mysql/my.cnf
Agregue las siguientes líneas:
[mysqld] sql_mode=NO_ENGINE_SUBSTITUTION
Guarde y cierre el archivo cuando haya terminado, luego reinicie el servicio MariaDB para aplicar los cambios:
systemctl restart mariadb
Descargar Pandoa FMS
A continuación, deberá descargar la última versión de pandora FMS desde el repositorio de Git. Puedes descargarlo con el siguiente comando:
cd /var/www/html/
git clone https://github.com/pandorafms/pandorafms.git
A continuación, otorgue 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, edite el archivo de configuración de Pandora:
nano /var/www/html/pandorafms/pandora_console/include/config.inc.php
Descomente y cambie las siguientes líneas según la configuración de su 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";
Guarde y cierre el archivo cuando haya terminado.
Configurar Apache para Pandora FMS
A continuación, deberá crear un nuevo archivo de configuración de host virtual de Apache para servir a Pandora FMS. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/pandora.conf
Agregue 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>
Guarde y cierre el archivo, luego habilite el host virtual de Pandora con el siguiente comando:
a2ensite pandora
A continuación, vuelva a cargar el servicio Apache para aplicar los cambios de configuración:
systemctl restart apache2
Accede a Pandora FMS
Ahora, abra su navegador web y escriba la URL http://pandora.linuxbuz.com/install.php para acceder a Pandora FMS. Debería ver el asistente de instalación web de Pandora FMS como se muestra a continuación:
Haga clic en Siguiente botón. Debería ver la siguiente página:
Haga clic en "Sí, acepto los Términos de licencia ". Deberías ver la siguiente página:
Asegúrese de que todas las extensiones de PHP estén instaladas y luego haga clic en Siguiente botón. Debería ver la siguiente página:
Proporcione su nombre de usuario raíz, la contraseña raíz de MariaDB, el nombre de la base de datos, la ruta de Pandora y haga clic en Siguiente botón. Debería ver la siguiente página:
Esto cambiará la contraseña del usuario de la base de datos de Pandora. Por lo tanto, deberá definir su 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
Cambie el campo "$config["dbpass"]" con su 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";
Guarde y cierre el archivo. Luego, vuelve al asistente de instalación de Pandora y haz clic en Siguiente botón. Debería ver la siguiente página:
Luego, abra su terminal nuevamente y elimine el archivo install.php:
rm -rf /var/www/html/pandorafms/pandora_console/install.php
A continuación, vuelva al asistente de instalación de Pandora FMS y haga clic en el botón "Haga clic aquí para acceder a su consola de Pandora FMS ". Debería ver la pantalla de inicio de sesión de Pandora FMS:
Proporcione el nombre de usuario de administrador predeterminado como admin y la contraseña como pandora y luego haga clic en Iniciar sesión botón. Debería ver el panel de control de Pandora en la siguiente pantalla:
Proteja Pandora FMS con Let's Encrypt
A continuación, se recomienda proteger su sitio web con Let's Encrypt SSL. Primero, instale el cliente Certbot usando el siguiente comando:
apt-get install python3-certbot-apache -y
Una vez instalado, ejecute el siguiente comando para proteger su sitio web con Let's Encrypt SSL:
certbot --apache -d pandora.linuxbuz.com
Se le pedirá que proporcione su correo electrónico y acepte el término 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, seleccione si desea redirigir o no 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
Escriba 2 y presione Entrar para instalar Let's Encrypt SSL para su 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, puede acceder a Pandora FMS de forma segura utilizando la URL https://pandora.linuxbuz.com.
Conclusión
¡Felicidades! Ha instalado correctamente la herramienta de monitorización de Pandora FMS con Apache y Let's Encrypt SSL en el servidor Ubuntu 20.04. Ahora puede agregar sistemas cliente y comenzar a monitorear desde Pandora FMS.