MRTG (Multi Router Traffic Grapher) es una herramienta de código abierto escrita en Perl que se utiliza para monitorear y medir la carga de tráfico en los enlaces de la red y presentar datos en forma gráfica. Esta herramienta lo ayuda a rastrear y solucionar problemas de anomalías en la red, como picos de tráfico en la red en horas extrañas.
MRTG funciona con todos los dispositivos de red que admiten el protocolo SNMP. Supervisa los dispositivos de red SNMP y dibuja bonitas imágenes que muestran cuánto tráfico ha pasado a través de cada interfaz. MRTG se ejecuta en sistemas Unix/Linux, Windows y Netware.
En esta publicación, veremos cómo instalar y configurar MRTG en Ubuntu 18.04/20.04.
Requisitos previos de MRTG
Debe tener Apache instalado antes de poder ejecutar MRTG en su máquina. En Ubuntu 18.04, puede instalar Apache fácilmente extrayendo el paquete del repositorio oficial.
$ sudo apt install apache2
Instalar paquetes snmp para Ubuntu:
$ sudo apt install snmpd snmp
Para configurar SNMP, me gusta habilitar el acceso completo desde localhost:
$ sudo vim /etc/snmp/snmpd.conf
Agregue la siguiente cadena comunitaria snmp al archivo snmpd.conf:
rocommunity public localhost

Debe reiniciar el servicio snmpd para que se efectúe el cambio.
$ sudo systemctl restart snmpd
De forma predeterminada, SNMP escucha localhost. Puede verificar qué puerto o IP está escuchando SNMP usando el comando ss.
Instalar MRTG en Ubuntu 18.04/20.04
Todos los requisitos previos están bien, por lo que podemos instalar MRTG en Ubuntu ejecutando el comando:
$ sudo apt install mrtg
Acepte cualquier mensaje emergente y haga clic en Sí para iniciar la instalación.

Configuración de MRTG
Una vez que se completa el proceso de instalación, debe configurarlo antes de poder comenzar a monitorear los dispositivos de destino. Configuraremos el directorio de trabajo de MRTG para que sea /var/www/mrtg
$ sudo mkdir /var/www/mrtg
Asegúrese de cambiar el propietario de este directorio a www-data
, que es la cuenta de usuario predeterminada para el servidor web Apache.
$ sudo chown -R www-data:www-data /var/www/mrtg
Luego edite /etc/mrtg.conf para configurar el directorio de trabajo:
$ sudo cat /etc/mrtg.cfg | grep -v "^#"
Salida:
WorkDir: /var/www/mrtg
WriteExpires: Yes
Title[^]: Traffic Analysis for
Reconstruya la configuración de MRTG desde el archivo modificado:
$ sudo cfgmaker public@localhost > /etc/mrtg.cfg
Salida:
--base: Get Device Info on public@localhost:
--base: Vendor Id: Unknown Vendor - 1.3.6.1.4.1.8072.3.2.10
--base: Populating confcache
--base: Get Interface Info
--base: Walking ifIndex
--snpd: public@localhost: -> 1 -> ifIndex = 1
--snpd: public@localhost: -> 2 -> ifIndex = 2
--snpd: public@localhost: -> 3 -> ifIndex = 3
--base: Walking ifType
--snpd: public@localhost: -> 1 -> ifType = 24
--snpd: public@localhost: -> 2 -> ifType = 6
--snpd: public@localhost: -> 3 -> ifType = 6
--base: Walking ifAdminStatus
--snpd: public@localhost: -> 1 -> ifAdminStatus = 1
--snpd: public@localhost: -> 2 -> ifAdminStatus = 1
--snpd: public@localhost: -> 3 -> ifAdminStatus = 1
--base: Walking ifOperStatus
--snpd: public@localhost: -> 1 -> ifOperStatus = 1
--snpd: public@localhost: -> 2 -> ifOperStatus = 1
--snpd: public@localhost: -> 3 -> ifOperStatus = 1
--base: Walking ifMtu
--snpd: public@localhost: -> 1 -> ifMtu = 65536
--snpd: public@localhost: -> 2 -> ifMtu = 1500
--snpd: public@localhost: -> 3 -> ifMtu = 1500
--base: Walking ifSpeed
--snpd: public@localhost: -> 1 -> ifSpeed = 10000000
--snpd: public@localhost: -> 2 -> ifSpeed = 0
--snpd: public@localhost: -> 3 -> ifSpeed = 0
$ ls /var/www/mrtg/
index.html mrtg-l.png mrtg-m.png mrtg-r.png
Crear archivo de índice para el servidor web:
$ sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html
Lo último que debe hacer es crear un archivo VirtualHost para el sitio.
$ sudo vim /etc/apache2/sites-available/mrtg.conf
Agregue lo siguiente a este nuevo archivo:
Alias /mrtg "/var/www/mrtg/"
<Directory "/var/www/mrtg/">
Options None
AllowOverride None
Require all granted
</Directory>
Habilite el sitio y vuelva a cargar el servicio Apache.
$ sudo sudo a2ensite mrtg
Recargar el servicio de Apache:
$ sudo systemctl reload apache2
Acceso a la interfaz de usuario de MRTG
Dirígete a http://ip-address/mrgt o http://servername/mrtg para acceder a la interfaz web de MRTG. El monitoreo de la interfaz debería comenzar a mostrar el tráfico:

También hay un gráfico diario predeterminado para una interfaz de forma predeterminada.

Puede configurar MRTG para monitorear otras cosas como RAM, uso de CPU, intercambio, disco, etc.
Configure MRTG para sondear métricas cada X minutos
Voy a crear un trabajo cron que verifique los cambios en el archivo de configuración y genere nuevas imágenes png que se puedan ver en la interfaz web. Asegúrese de crear el trabajo cron como usuario root.
# crontab -e
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg.cfg
Esto se ejecutará cada cinco minutos.
Conclusión
En este tutorial, aprendimos cómo instalar y configurar MRTG en Ubuntu 18.04/20.04.
Gracias por leer, envíe sus comentarios y sugerencias en la sección de comentarios.