Cómo instalar Cacti en Ubuntu 16.04 Server: Guía paso a paso

Cacti es una herramienta de código abierto basada en la web que utiliza RRDtool para almacenar toda la información necesaria para mostrar gráficos de red y de sistema. Cacti utiliza el Protocolo Simple de Administración de Red para recopilar y supervisar el tráfico de dispositivos de red, y se puede instalar en varias distribuciones de Linux. En este artículo, te guiaré a través del proceso de instalación de Cacti en Ubuntu 16.04 Server. La instalación es bastante complicada y la mayoría de los pasos se realizan a través de la terminal. Así que inicia sesión en tu servidor Ubuntu 16.04 y prepárate para escribir algunos comandos.

Índice de Contenido
  1. Configurando apt y actualizando/actualizando
  2. Instalando dependencias
  3. Configurando php
  4. La base de datos
  5. Configurando SNMP
  6. Instalando Cacti-Spine
  7. Instalando Cacti
  8. Instalación web

Configurando apt y actualizando/actualizando

Lo primero que debes hacer es agregar los repositorios necesarios a apt. Para hacer esto, crea un nuevo archivo con el comando sudo nano /etc/apt/sources.list.d/cacti.list y agrega el siguiente contenido:

deb http://ftp.ro.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.ro.debian.org/debian/ stretch main

deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security stretch/updates main

Guarda y cierra ese archivo, y luego actualiza y actualiza Ubuntu con los siguientes comandos:

sudo apt update
sudo apt upgrade

Instalando dependencias

A continuación, debes instalar las dependencias necesarias. Esto se puede hacer con los siguientes tres comandos:

sudo apt install wget patch unzip zip bash-completion
sudo apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-snmp php7.0-xml php7.0-mbstring php7.0-json php7.0-gd php7.0-gmp php7.0-zip php7.0-ldap php7.0-mcrypt
sudo apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev librrds-perl libsnmp-dev

Si tienes un firewall en funcionamiento, deberás abrir el puerto 80 con el siguiente comando:

sudo ufw allow 80/tcp

Configurando php

Hay dos líneas que se deben configurar en el archivo /etc/php/7.0/apache2/php.ini. Estas dos líneas son:

Escudos digitales: 4 estrategias para proteger redes empresariales de los hackers
file_uploads = On
date.timezone =

Si file_uploads no está configurado en On, cámbialo. También deberás configurar tu zona horaria. Obtén tu zona horaria válida para PHP de la lista oficial de zonas horarias de PHP. Con esas configuraciones en su lugar, guarda y cierra el archivo y reinicia Apache con el siguiente comando:

sudo systemctl restart apache2

La base de datos

Cacti almacena sus datos en una base de datos RDBMS. Para hacer esto, configuraremos Cacti para funcionar con MariaDB. Instala esta base de datos con el siguiente comando:

sudo apt install mariadb-server php7.0-mysql

A continuación, aseguraremos la cuenta de root de MariaDB con los siguientes comandos:

mysql -h localhost
use mysql;
update user set plugin='' where user='root';
flush privileges;
exit
sudo mysql_secure_installation

El último comando te pedirá que respondas algunas preguntas. La primera será ingresar la contraseña actual del usuario root. Como no hay contraseña, presiona Enter en tu teclado y luego escribe y verifica la nueva contraseña, y luego responde el resto de las preguntas con las respuestas predeterminadas.

Ahora tenemos que crear la nueva base de datos. Esto se hace primero iniciando sesión en la base de datos con el siguiente comando:

mysql -h localhost -u root -p

Después de autenticarte, ingresa los siguientes comandos para crear la nueva base de datos:

Cómo proteger la seguridad de tu sitio web con un registro DNS CAA
create database cacti;
grant all on cacti.* to 'cacti_user'@'localhost' identified by 'cacti_pass';
flush privileges;
exit

A continuación, se requiere establecer permisos para el nuevo usuario de la base de datos de acuerdo con la zona horaria correcta. Para hacer esto, ingresa los siguientes comandos:

mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql
mysql -u root -p -e 'grant select on mysql.time_zone_name to root@localhost'

El siguiente paso es agregar las siguientes líneas al archivo /etc/mysql/mariadb.conf.d/50-server.cnf:

max_heap_table_size = 98M
tmp_table_size = 64M
join_buffer_size = 64M
innodb_buffer_pool_size = 485M
innodb_doublewrite = off
innodb_additional_mem_pool_size = 80M
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16

Reinicia Apache y MySQL con el siguiente comando:

systemctl restart mysql apache2

Configurando SNMP

Ahora es el momento de instalar y configurar el servicio SNMP. La instalación se realiza con el siguiente comando:

sudo apt install snmp snmpd snmp-mibs-downloader

Dado que Cacti depende de RRDtool, este debe ser instalado con el siguiente comando:

sudo apt install rrdtool

Abre el archivo /etc/snmp/snmp.conf y comenta la línea mibs : agregando un # de la siguiente manera:

Cómo proteger la contraseña de GRUB en Ubuntu Server 16.04
#mibs :

Guarda y cierra ese archivo.

Para configurar SNMP, abre el archivo /etc/snmp/snmpd.conf. Lo primero que se debe hacer es comentar la línea:

agentAddress udp:127.0.0.1:161

Luego, descomenta la línea (eliminando el #):

agentAddress udp:161,udp6:[::1]:161

Desplázate hacia abajo y encuentra la línea:

rocommunity6 public default -V systemonly

Justo debajo de esa línea, agrega lo siguiente:

rocommunity snmp_string localhost
rocommunity snmp_string 192.168.1.0/25

Guarda y cierra ese archivo.

5 formas de mejorar la seguridad en NGINX

Reinicia el servicio SNMP con el siguiente comando:

sudo systemctl restart snmpd.service

Si tienes un firewall en funcionamiento, abre el puerto adecuado con el siguiente comando:

sudo ufw allow 161/udp

Instalando Cacti-Spine

Es hora de instalar Cacti-Spine, una herramienta que reemplaza el poller cmd.php predeterminado. Esto se hace con los siguientes comandos:

sudo -s
wget https://www.cacti.net/downloads/spine/cacti-spine-latest.tar.gz
tar xfz cacti-spine-latest.tar.gz
cd cacti-spine*
./bootstrap
./configure
make
make install
chown root:root /usr/local/spine/bin/spine
chmod +s /usr/local/spine/bin/spine

Luego, configuramos Cacti-Spine para que use nuestra nueva base de datos. Abre el archivo /usr/local/spine/etc/spine.conf y edita las credenciales de la base de datos según lo establecido durante la instalación/configuración de la base de datos. Deberás cambiar DB_User y DB_Pass.

Instalando Cacti

Finalmente, llegamos a la instalación de Cacti. Esto se hace con los siguientes comandos:

wget https://www.cacti.net/downloads/cacti-latest.tar.gz
tar xfz cacti-latest.tar.gz
cp -rf cacti*/* /var/www/html/

De manera similar a Cacti-Spine, la configuración de Cacti debe establecerse para conectarse a la base de datos. Abre el archivo /var/www/html/include/config.php y cambia las credenciales según la instalación/configuración de la base de datos. Deberás cambiar database_username y database_password. En el mismo archivo, la línea:

Cómo firmar digitalmente un archivo en Linux usando gnupg
$url_path = "/cacti";

debe cambiarse por:

$url_path = "/";

Guarda y cierra ese archivo.

Popula la base de datos de Cacti con el siguiente comando:

mysql -u cacti_user cacti -p < /var/www/html/cacti.sql

Ejecuta el comando mysql -u cacti_user cacti -p -e ‘show tables’ y deberías ver los datos recién populados (Figura A).

Figura A

Cómo instalar Cacti en Ubuntu 16.04 Server: Guía paso a paso - Seguridad | Imagen 1 Newsmatic

Cómo deshabilitar el soporte USB en servidores Linux para mejorar la seguridad

Antes de pasar a la instalación web, ejecuta los siguientes comandos:

rm /var/www/html/index.html
touch /var/www/html/log/cacti.log
chown -R www-data:www-data /var/www/html/

Instalación web

La última fase es abrir tu navegador e ir a http://DIRECCION_IP_DEL_SERVIDOR/install (donde DIRECCION_IP_DEL_SERVIDOR es la dirección del servidor donde se encuentra Cacti) y seguir los pasos de instalación. Dado que ya hemos configurado todo, esto debería requerir poco más que hacer clic en Siguiente unas cuantas veces.

Sin embargo, encontré un problema que requirió un poco de solución. El instalador no podrá encontrar el ejecutable de Spine. Por defecto, ese ejecutable se encuentra en /usr/local/spine/bin. Sin embargo, el instalador quiere que esté en /usr/local/spine/bin/spine. Para solucionar esto, realiza lo siguiente:

cd /usr/local/spine/bin
mv spine ../
mkdir spine
mv ../spine spine/

Es un problema un tanto extraño, pero lo anterior lo solucionará.

Después de hacer clic en Finalizar en el instalador web, se te pedirá que inicies sesión. Las credenciales predeterminadas son admin/admin. Una vez que ingreses esas credenciales, se te pedirá que establezcas una nueva contraseña de administrador (debe contener una combinación de mayúsculas, minúsculas y al menos un número). Después de eso, te encontrarás en la interfaz web de Cacti, donde podrás empezar a trabajar con tu nueva instalación de Cacti.

¡Feliz graficación!

Cómo solucionar el problema de seguridad entre Docker y UFW en Linux

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Seguridad, allí encontraras muchos artículos similares a Cómo instalar Cacti en Ubuntu 16.04 Server: Guía paso a paso , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.