Cómo instalar la herramienta de monitorización de red Cacti en Debian 11
Cacti es una herramienta de monitorización de red de código abierto basada en web y escrita en PHP. Cacti es el front-end de RRDtool, el estándar de la industria. Cacti genera gráficos de carga de la CPU y de utilización del ancho de banda de la red mediante SNMP (Protocolo Simple de Gestión de Red). Está especialmente diseñado para supervisar dispositivos de red como conmutadores, enrutadores y servidores. Cacti almacena todos los datos necesarios en la base de datos MySQL para generar diversos gráficos.
Esta guía te mostrará cómo instalar las herramientas de monitorización Cacti en Debian 11.
Requisitos previos
- Un servidor que ejecute Debian 11.
- Se ha configurado una contraseña de root en el servidor.
Cómo empezar
Antes de empezar, siempre es una buena idea actualizar tu sistema base a la última versión. Ejecuta el siguiente comando para actualizar todos los paquetes:
sudo apt update
sudo apt upgrade
Tras la actualización de los paquetes, puedes pasar al siguiente paso de la instalación.
Instalar dependencias
Cacti utiliza SNMP, por lo que necesitas instalar las dependencias necesarias ejecutando el siguiente comando:
sudo apt install snmp snmpd php-snmp rrdtool librrds-perl unzip curl git gnupg2
Instalar servidor LAMP
Necesitas instalar Apache, PHP y MySQL/MariaDB en tu servidor.
Instalar el servidor web Apache
Puedes instalar el servidor web Apache mediante el siguiente comando:
sudo apt install apache2 -y
A continuación, inicia el servicio Apache y habilítalo para que se inicie al arrancar ejecutando el siguiente comando:
sudo systemctl start apache2
sudo systemctl enable apache2
Instalar PHP
Necesitas instalar PHP y otras extensiones PHP necesarias:
apt install php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y
A continuación, realiza algunas modificaciones en el archivo php.ini:
vim /etc/php/*/apache2/php.ini
Ahora, realiza los cambios que se muestran a continuación:
memory_limit = 512M max_execution_time = 60 date.timezone = Asia/Kolkata
Ahora, guarda y cierra el archivo y, a continuación, edita php.ini para CLI:
vim /etc/php/*/cli/php.ini
A continuación, realiza los siguientes cambios:
memory_limit = 512M max_execution_time = 60 date.timezone = Asia/Kolkata
Guarda y cierra el archivo y reinicia el servicio Apache para aplicar los cambios:
systemctl restart apache2
Instalar y configurar el servidor de base de datos para Cacti
MySQL/MariaDB es el backend para Cacti. Puedes instalar MariaDB ejecutando el siguiente comando:
sudo apt install mariadb-server
A continuación, inicia el servicio MariaDB, habilita el servicio al iniciar el sistema y comprueba el estado del servicio MariaDB mediante el siguiente comando:
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo systemctl status mariadb
A continuación, inicia sesión en el intérprete de comandos de MariaDB ejecutando el siguiente comando:
mysql
Tras iniciar sesión, crea una base de datos y un usuario para Cacti ejecutando el siguiente comando:
CREATE DATABASE cactidb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
GRANT ALL PRIVILEGES ON cactidb.* TO 'cacti_user'@'localhost' IDENTIFIED BY 'password';
ALTER DATABASE cactidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
A continuación, vacía los privilegios para aplicar los cambios y sal del intérprete de comandos MariaDB ejecutando el siguiente comando:
flush privileges;
exit;
Ahora, tienes que importar los datos de la zona horaria a la base de datos MariaDB. Ejecuta el siguiente comando para importar la zona horaria:
mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql
Ahora, inicia sesión en el intérprete de comandos MariaDB y concede los privilegios necesarios en la zona horaria MySQL ejecutando el siguiente comando:
mysql
GRANT SELECT ON mysql.time_zone_name TO cacti_user@localhost;
A continuación, elimina los privilegios y sal del intérprete de comandos MariaDB:
flush privileges;
exit;
A continuación, edita el archivo de configuración por defecto de MariaDB:
vim /etc/mysql/mariadb.conf.d/50-server.cnf
Primero, comenta las dos líneas siguientes añadiendo #tag
#collation-server = utf8mb4_general_ci #character-set-server = utf8mb4
A continuación, añade / modifica las siguientes líneas debajo de la sección [mariadb]:
collation-server = utf8mb4_unicode_ci character-set-server=utf8mb4 max_heap_table_size = 128M tmp_table_size = 128M join_buffer_size = 128M innodb_file_format = Barracuda innodb_large_prefix = 1 innodb_buffer_pool_size = 1G innodb_flush_log_at_timeout = 3 innodb_read_io_threads = 32 innodb_write_io_threads = 16 innodb_io_capacity = 5000 innodb_io_capacity_max = 10000 innodb_doublewrite = 0
Ahora, guarda y sal del archivo y reinicia el servicio MariaDB para aplicar los cambios:
systemctl restart mariadb
Tras reiniciar el servicio, puedes pasar al siguiente paso.
Instalar y configurar Cacti
Ahora, descarga la última versión de Cacti desde el sitio web oficial de Cacti utilizando el comando wget:
wget https://www.cacti.net/downloads/cacti-latest.tar.gz
A continuación, extrae el archivo tar.gz ejecutando el siguiente comando:
tar -zxvf cacti-latest.tar.gz
Ahora, mueve el directorio extraído a la ruta raíz de Apache ejecutando el siguiente comando:
mv cacti-1* /var/www/html/cacti
A continuación, importa la base de datos a la base de datos de cacti ‘cactidb’ utilizando el siguiente comando:
mysql cactidb < /var/www/html/cacti/cacti.sql
Ahora edita el archivo config.php e introduce los datos de tu base de datos Cacti.
cd /var/www/html/cacti/include/
vim config.php
A continuación, realiza cambios en las siguientes líneas:
$database_type = 'mysql'; $database_default = 'cactidb'; $database_hostname = 'localhost'; $database_username = 'cacti_user'; $database_password = 'password'; $database_port = '3306';
Ahora, establece los permisos necesarios para el directorio cacti utilizando el siguiente comando:
chown -R www-data:www-data /var/www/html/cacti/
chmod -R 775 /var/www/html/cacti/
Ahora, establece la frecuencia de recogida de datos utilizando el cronjob para Cacti con el siguiente comando:
vim /etc/cron.d/cacti
Añade la siguiente línea para establecer que Cacti Pollor ejecute poller.php cada cinco minutos.
*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1
Guarda el archivo y sal de él.
Configurar el host virtual Apache para Cacti
A continuación, tienes que crear un archivo de configuración de host virtual Apache independiente para Cacti. Puedes crearlo utilizando el siguiente comando:
vim /etc/apache2/sites-available/cacti.conf
A continuación, añade las siguientes líneas:
Alias /cacti /var/www/html/cacti <Directory /var/www/html/cacti> Options +FollowSymLinks AllowOverride None <IfVersion >= 2.3> Require all granted </IfVersion> <IfVersion < 2.3> Order Allow,Deny Allow from all </IfVersion> AddType application/x-httpd-php .php <IfModule mod_php.c> php_flag magic_quotes_gpc Off php_flag short_open_tag On php_flag register_globals Off php_flag register_argc_argv On php_flag track_vars On # this setting is necessary for some locales php_value mbstring.func_overload 0 php_value include_path . </IfModule> DirectoryIndex index.php </Directory>
A continuación, tienes que habilitar este archivo de host virtual. Ejecuta el siguiente comando para habilitarlo.
a2ensite cacti
Verifica el archivo cacti.conf ejecutando el siguiente comando:
ls -l /etc/apache2/sites-enabled/cacti.conf
A continuación, tienes que reiniciar el servicio Apache para aplicar los cambios:
systemctl restart apache2
Tras reiniciar el servicio Apache, ejecuta el siguiente comando para comprobar el estado del servicio Apache:
systemctl status apache2
Salida:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-06-29 07:22:07 UTC; 3s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 63096 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 63100 (apache2) Tasks: 6 (limit: 1132) Memory: 13.6M CPU: 100ms CGroup: /system.slice/apache2.service ??63100 /usr/sbin/apache2 -k start ??63101 /usr/sbin/apache2 -k start ??63102 /usr/sbin/apache2 -k start ??63103 /usr/sbin/apache2 -k start ??63104 /usr/sbin/apache2 -k start ??63105 /usr/sbin/apache2 -k start
Jun 29 07:22:07 debian-11 systemd[1]: Starting The Apache HTTP Server…
En este punto, tu Cacti está instalado y configurado, y puedes proceder al siguiente paso para acceder a Cacti desde un navegador web.
Interfaz Web de Cacti
Ahora, abre tu navegador web e introduce la siguiente URL con tu dirección IP:
http://your-server-ip/cacti
Deberías ver la página de inicio de sesión de Cacti.
Introduce el nombre de usuario y la contraseña por defecto como admin y haz clic en el botón Iniciar sesión. Se te redirigirá a la pantalla de restablecimiento de contraseña como se muestra a continuación:
Tras cambiar la contraseña por defecto, pulsa el botón Guardar. Deberías ver la pantalla del Acuerdo de Licencia:
Selecciona la casilla Aceptar el Acuerdo de Licencia GPL y pulsa el botón Comenzar. Deberías ver la Comprobación Previa a la Instalación y otra información de advertencia en la siguiente pantalla:
Haz clic en el botón Siguiente. Deberías ver la siguiente pantalla Tipo de instalación:
Aquí puedes seleccionar el tipo de instalación que deseas y, a continuación, hacer clic en el botón Siguiente. A continuación, deberías ver la pantalla Comprobación de permisos de directorio:
Haz clic en el botón Siguiente. Te mostrará la pantalla Ubicaciones y versiones binarias críticas como se indica a continuación:
Haz clic en el botón Siguiente. Deberías ver la pantalla de Protección de la Lista Blanca de Validación de Entradas:
Selecciona la casilla «He leído esta declaración» y Pulsa el botón Siguiente. Deberías ser redirigido a la pantalla Perfil Predeterminado:
Introduce la información según tus necesidades y pulsa el botón Siguiente. A continuación deberías ver la pantalla de Configuración de Plantilla:
Haz clic en el botón Siguiente, y deberías ver la configuración relacionada con UTF-8 en la siguiente pantalla:
Haz clic en el botón Siguiente. Deberías ver la pantalla Confirmar instalación:
Selecciona la casilla «Confirmar instalación» y luego pulsa el botón Instalar. Deberías ver el registro de instalación en la siguiente pantalla:
Una vez finalizada la instalación, haz clic en el botón Comenzar. Deberías ver la pantalla Cacti Dashboard:
Conclusión
Con este artículo, has instalado y configurado correctamente la herramienta de monitorización Cacti en Debian 11. Ahora puedes añadir dispositivos de red, supervisar el ancho de banda de tu red, generar diversos gráficos de supervisión de la red y muchas cosas más. Puedes acceder fácilmente a Cacti desde un navegador web. No dudes en preguntarme si tienes alguna duda.