Monitoreo de redes · 11 min read · Nov 01, 2025
Cómo instalar la solución de monitoreo OpenNMS en Ubuntu 22.04

OpeNNMS es una solución de monitoreo y gestión de redes gratuita y de código abierto. Es una plataforma de monitoreo de redes de nivel empresarial que visualiza y monitorea todo en redes locales y remotas. OpenNMS es una solución completamente de código abierto para el monitoreo y la gestión de redes, publicada bajo la licencia AGPLv3.
OpenNMS es una plataforma de monitoreo de redes escalable que permite monitorear decenas de miles de redes a través de sistemas distribuidos y en capas. Además, OpenNMS es una plataforma de monitoreo flexible que se integra fácilmente con su negocio principal y extensiones de terceros.
OpenNMS tiene múltiples componentes que se enumeran a continuación:
- OpenNMS Horizon - paquetes de tres componentes principales: Core (el componente principal de Horizon), Minion (utilizado para monitoreo distribuido remoto) y Sentinel (para escalabilidad).
- Helm - panel de control personalizado para OpenNMS.
- Arquitectura para Correlación Habilitada para Aprendizaje (ALEC) (triatlón de alarmas).
- Servidor de Integración de Aprovisionamiento (PRIS) (integración de datos extraídos).
Esta guía le muestra cómo instalar la solución de monitoreo OpenNMS con un servidor de base de datos PostgreSQL y Nginx Reverse Proxy en un servidor Ubuntu 22.04. Además, esta guía le mostrará la instalación de Java OpenJDK, la configuración básica del servidor de base de datos PostgreSQL y el servidor web Nginx.
Requisitos previos
Primero que nada, necesitará los siguientes requisitos para finalizar esta guía:
- Un servidor Ubuntu 22.04 - Este ejemplo utiliza el servidor Ubuntu con el nombre de host ‘opennms-server’ y la memoria es de 4GB.
- Un usuario no root con privilegios de administrador sudo/root.\
- Se utilizará un nombre de dominio o dominio local para ejecutar OpenNMS.
Instalando Java OpenJDK
La solución de monitoreo OPneNMS es una herramienta de monitoreo principalmente escrita en Java. En el momento de escribir esto, la última versión de OpenNMS admite como mínimo Java 11. El repositorio predeterminado de Ubuntu 22.04 proporciona Java OpenJDK 11 que puede instalar fácilmente a través de APT.
Antes de instalar Java, ejecute el siguiente comando apt para actualizar y refrescar su índice de paquetes.
sudo apt updateAhora instale Java OpenJDK 11 a través del comando apt a continuación. La versión predeterminada de Java para el sistema Ubuntu 22.04 es Java OpenJDK 11, que es adecuada para la instalación de OpenNMS.
sudo apt install default-jdkCuando se le solicite, ingrese y para confirmar y presione ENTER. La instalación de Java OpenJDK comenzará.

Después de que Java OpenJDK esté instalado, ejecute el siguiente comando para verificar la versión instalada de Java. Debería obtener Java OpenJDK 1.11 instalado en su sistema Ubuntu.
java -versionCon Java OpenJDK instalado, pase a la instalación de la base de datos PostgreSQL.
Instalando y configurando el servidor PostgreSQL
PostgreSQL es un RDMS (Sistema de Gestión de Bases de Datos Relacional) de alto rendimiento. OpenNMS solo admite PostgreSQL como backend de base de datos. En el momento de escribir esto, OpenNMS admite PostgreSQL v10.x-14.x.
Ahora instalará y configurará la base de datos PostgreSQL v14 en un servidor Ubuntu. Por defecto, el repositorio de Ubuntu proporciona múltiples versiones de PostgreSQL, y usted instalará PostgreSQL 14.x para el despliegue de OpenNMS.
Ejecute el siguiente comando apt para instalar PostgreSQL 14.
sudo apt install postgresql-14Cuando se le pida confirmación, ingrese y presione ENTER para continuar.

Después de que se instale el paquete de PostgreSQL, ejecute el siguiente comando systemctl para verificar el servicio de PostgreSQL y asegurarse de que el servicio esté en ejecución y habilitado.
sudo systemctl is-enabled postgresql
sudo systemctl status postgresqlLuego verá que el servicio de PostgreSQL está habilitado y se ejecutará automáticamente al iniciar. Y el estado del servicio de PostgreSQL está en ejecución.

Ahora que la base de datos PostgreSQL está en funcionamiento, revisará la creación de la base de datos y el usuario para OpenNMS. También configurará la contraseña para el usuario predeterminado de PostgreSQL ‘ postgres ‘.
Ejecute el siguiente comando para crear un nuevo usuario de PostgreSQL ‘opennms’. Cuando se le pida la contraseña, ingrese la nueva contraseña para el usuario ‘ opennms ‘ y repítala.
sudo -u postgres createuser -P opennmsA continuación, cree una nueva base de datos ‘ opennms ‘ con el propietario ‘ opennms ‘ a través del siguiente comando.
sudo -u postgres createdb -O opennms opennmsPor último, cambie la contraseña del usuario ‘ postgres ‘ a través del siguiente comando. Y asegúrese de cambiarla por una nueva contraseña fuerte.
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '5up3rp4ssw0rd';"Ahora que tiene Java OpenJDK y PostgreSQL instalados, está listo para instalar OpenNMS.
Instalando y configurando OpenNMS
Ha instalado Java OpenJDK y la base de datos PostgreSQL, también ha creado una nueva base de datos y usuario para OpenNMS, y configurado la contraseña predeterminada para el usuario de PostgreSQL ‘postgres’. A continuación, comenzará a instalar y configurar OpenNMS.
En esta sección, instalará OpenNMS a través del repositorio oficial de OpenNMS. Luego, configurará OpenNMS con la base de datos PostgreSQL, configurará el entorno de Java, inicializará el esquema de la base de datos, detectará las bibliotecas del sistema y permitirá que OpenNMS se ejecute en puertos privilegiados.
Primero, ejecute el siguiente comando para agregar la clave GPG y el repositorio de OpenNMS.
sudo apt-key adv --fetch-keys https://debian.opennms.org/OPENNMS-GPG-KEY
sudo add-apt-repository -s 'deb https://debian.opennms.org stable main'Cuando se le pida, presione ENTER para confirmar y agregar el repositorio de OpenNMS.

Ahora instale el paquete OpenNMS con paquetes R adicionales a través del siguiente comando apt.
sudo apt install opennms r-recommendedCuando se le pida confirmación, ingrese y para confirmar y presione ENTER para continuar.

A continuación, ejecute el siguiente comando apt para deshabilitar la actualización automática del paquete OpenNMS. OpenNMS requiere pasos y configuraciones manuales al actualizar a una nueva versión, por lo que debe actualizarlo manualmente para evitar errores durante/después de las actualizaciones.
sudo apt-mark hold libopennms-java \
libopennmsdeps-java \
opennms-common \
opennms-db
Ahora que OpenNMS está instalado, puede verificar el directorio de instalación de OpenNMS ‘ /usr/share/opennms ‘ a través del siguiente comando. Además, cualquier cambio relacionado con OpenNMS debe aplicarse a los archivos bajo el directorio ‘ /usr/share/opennms ‘.
sudo apt install tree -y
sudo tree /usr/share/opennms -L 1Podría ver una lista de directorios y archivos para el paquete OpenNMS.

A continuación, configurará la configuración de la base de datos para OpenNMS. Abra el archivo ‘ /usr/share/opennms/etc/opennms-datasources.xml ‘ utilizando el siguiente comando del editor nano. El comando ‘ sudo -u opennms command.. ‘ indica que está ejecutando el comando como el usuario ‘ opennms ‘, y no como el usuario root.
sudo -u opennms nano /usr/share/opennms/etc/opennms-datasources.xmlCambie el ‘jdbc-data-source’ para el ‘ opennms ‘ que debe estar utilizando los detalles de la base de datos y el usuario ‘ opennms ‘. Y para ‘ opennms-admin ‘, debe estar utilizando el usuario administrador de PostgreSQL ‘ postgres ‘.
Guarde el archivo y salga del editor cuando haya terminado.
Ahora ejecute el siguiente comando para detectar el entorno de Java en su sistema, que se almacenará permanentemente en el archivo de configuración ‘/usr/share/opennms/etc/java.conf ‘.
sudo -u opennms /usr/share/opennms/bin/runjava -s
Después de eso, ejecute el siguiente comando para inicializar la base de datos y detectar las bibliotecas del sistema para OpenNMS. Las bibliotecas para OpenNMS se enumerarán en el archivo ‘ /opt/opennms/etc/libraries.properties ‘.
sudo -u opennms /usr/share/opennms/bin/install -dis
A continuación, edite el archivo de servicio de OpenNMS a través del siguiente comando systemctl. Debería obtener el EDITOR predeterminado en su sistema.
sudo systemctl edit --full opennms.serviceAgregue la siguiente configuración a la sección ‘ [Service] ‘. Esto permite que el servicio OpenNMS se ejecute y se vincule en puertos privilegiados (puertos 1-1024).
[Service]
...
AmbientCapabilities=CAP_NET_RAW CAP_NET_BIND_SERVICEGuarde el archivo y salga del editor cuando haya terminado.
Después de modificar el archivo de servicio de OpenNMS, ejecute el siguiente comando para recargar el administrador de systemd, reiniciar y habilitar el servicio OpenNMS.
sudo systemctl daemon-reload
sudo systemctl restart opennms
sudo systemctl enable opennmsAhora que el servicio OpenNMS está en funcionamiento con nuevas configuraciones, luego verificará el servicio OpenNMS a través del siguiente comando systemctl.
sudo systemctl is-enabled opennms
sudo systemctl status opennmsLa salida - El servicio OpenNMS está habilitado y se ejecutará automáticamente al iniciar el sistema. Y el servicio OpenNMS actualmente está en ejecución.

En este punto, ha terminado la instalación y configuración de OpenNMS. Pero, ejecutará OpenNMS con Nginx como proxy inverso. Siga leyendo para aprender cómo configurar Nginx como un proxy inverso para OpenNMS.
Instalando Nginx como un proxy inverso para OpenNMS
Ahora que tiene OpenNMS ejecutándose en el puerto predeterminado ‘8980’, instalará y configurará Nginx como un proxy inverso para OpenNMS.
Ejecute el siguiente comando apt para instalar el paquete Nginx en su sistema.
sudo apt install nginxIngrese y cuando se le pida, luego presione ENTER para continuar. Y la instalación comenzará.

A continuación, verifique el servicio Nginx con el siguiente comando systemctl.
sudo systemctl is-enabled nginx
sudo systemctl status nginxDebería ver que el servicio Nginx está habilitado y se ejecutará automáticamente al iniciar. Además, el servicio Nginx se inicia automáticamente después de que finaliza la instalación.

Después de que Nginx esté instalado, cree un nuevo bloque de servidor Nginx ‘ /etc/nginx/sites-available/opennms.conf ‘ utilizando el siguiente comando del editor nano.
sudo nano /etc/nginx/sites-available/opennms.confAgregue la siguiente configuración al archivo. Asegúrese de cambiar el nombre de dominio por su dominio.
server {
listen 80;
server_name opennms.howtoforge.local;
access_log /var/log/nginx/opennms.access.log;
error_log /var/log/nginx/opennms.error.log;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-OpenNMS-Server-URL https://opennms.howtoforge.local/;
proxy_pass http://localhost:8980;
}
}Guarde el archivo y salga del editor cuando haya terminado.
A continuación, active el bloque del servidor ‘ opennms.conf ‘ y verifique la configuración de Nginx para asegurarse de que tiene la configuración correcta.
sudo ln -s /etc/nginx/sites-available/opennms.conf /etc/nginx/sites-enabled/
sudo nginx -tSi ve el mensaje de salida como ‘ test successful - syntax ok ‘, eso significa que su configuración de Nginx es correcta.

Ahora reinicie el servicio Nginx para aplicar la nueva configuración del bloque del servidor.
sudo systemctl restart nginxAhora que Nginx está funcionando como un proxy inverso para OpenNMS, revisará la configuración del firewall UFW y abrirá algunos puertos para algunos servicios.
Configurando el firewall UFW
Después de configurar el proxy inverso Nginx, configurará el UFW en su servidor OpenNMS. Ejecutará la herramienta de monitoreo OpenNMS con el UFW habilitado, por lo que debe agregar algunos puertos que se utilizarán para OpenNMS.
Ejecute el siguiente comando apt para instalar UFW en su sistema.
sudo apt install ufw -yDespués de que se instale UFW, ejecute el siguiente comando para agregar el servicio OpenSSH. Luego, inicie y habilite el servicio UFW.
sudo ufw allow OpenSSH
sudo ufw enableCuando se le pida, ingrese y para confirmar y presione ENTER para continuar. Ahora el UFW estará en funcionamiento y está habilitado y se ejecutará automáticamente al iniciar.

A continuación, agregue una nueva regla para permitir el tráfico al servidor web Nginx.
sudo ufw allow "Nginx Full"
Después de eso, abra el archivo ‘ /etc/ufw/before.rules ‘ utilizando el siguiente comando del editor nano.
sudo nano /etc/ufw/before.rulesAgregue la siguiente configuración antes de la sección ‘filter’. Esto habilitará NAT y redirigirá/reenviará el tráfico de 62/udp a 10162/udp*.
*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p udp --dport 162 -j REDIRECT --to-port 10162
COMMITGuarde el archivo y salga del editor cuando haya terminado.
Ahora agregue la nueva regla para permitir ambos puertos 62/udp a 10162/udp.
sudo ufw allow in 162/udp
sudo ufw allow in 10162/udpRecargue el UFW para aplicar los cambios y verifique el estado de UFW a través del siguiente comando.
sudo ufw reload
sudo ufw status
Hasta ahora, ha terminado la instalación y configuración de OpenNMS con dependencias de paquetes como la base de datos PostgreSQL y el servidor web Nginx, y también ha configurado el UFW. Para el paso final, accederá a la instalación de OpenNMS a través de un navegador web y configurará el usuario administrador para OpenNMS.
Accediendo a la herramienta de monitoreo OpenNMS
Abra su navegador web y visite el nombre de dominio de su instalación de OpenNMS (es decir: http://opennms.howtoforge.local). Debería ver la página de inicio de sesión de la herramienta de monitoreo OpenNMS.
Ingrese el usuario/contraseña predeterminados ‘ admin/admin ‘ y haga clic en ‘ Iniciar sesión ‘.

Luego verá el panel de administración de OpenNMS.

Después de iniciar sesión en OpenNMS a través del usuario/contraseña predeterminados ‘ admin/admin ‘, luego cambiará el nombre de usuario y la contraseña predeterminados para su instalación de OpenNMS.
En la barra de menú superior, haga clic en el menú ‘ Admin ‘ y seleccione ‘Cambiar contraseña ‘.
Ahora ingrese la contraseña antigua ‘admin’ e ingrese la nueva contraseña de OpenNMS y repita la contraseña. Luego, haga clic en ‘ Enviar ‘ para aplicar.

Ahora ha terminado la configuración de OpenNMS.
Conclusión
Ahora tiene OpenNMS, una herramienta de monitoreo altamente escalable y personalizable, instalada en su servidor Ubuntu 22.04. También ha configurado el servidor de base de datos PostgreSQL instalado y el servidor web Nginx configurado como un proxy inverso para OpenNMS. Con OpenNMS completamente configurado, ahora puede agregar un nuevo host para monitorear a través del protocolo SNMP, configurar el monitoreo distribuido a través de OpenNMS Minion, escalar OpenNMS a través de Sentinel y comenzar a personalizar el panel a través de Helm.
Si desea ejecutar OpenNMS en implementaciones grandes, consulte la documentación oficial.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.