Controlador Omada en Proxmox: un LXC con Ubuntu 24.04 paso a paso
Cómo montar el controlador de TP-Link Omada (Omada Network Application 6.3) en un contenedor LXC de Proxmox: de dónde sale la plantilla, Java 17, jsvc, MongoDB 8.0, el asistente inicial y qué cuidar para no adoptar equipos sin querer.
Si tenés equipos Omada de TP-Link (access points, switches, gateways), en algún momento te va a pedir un controlador: el software que los administra a todos desde un solo panel. Se puede comprar el OC200/OC300 (el controlador en hardware), usar la nube de TP-Link o montarlo vos mismo. Si ya tenés un Proxmox, lo más práctico es lo último: un contenedor LXC chico, que arranca solo y no gasta casi nada.
Acá va paso a paso, de la plantilla al panel funcionando. Todo se hizo en un Proxmox real, con la última versión del controlador para Linux (Omada Network Application 6.3.0.45, de septiembre de 2026).
Lo que vamos a armar
- Un contenedor LXC sin privilegios con Ubuntu 24.04.
- Adentro: Java 17, jsvc, MongoDB 8.0 y el controlador de Omada.
- Al final, el panel web en
https://IP-DEL-CONTENEDOR:8043, mostrando los equipos Omada de la red.
Recursos que le vamos a dar:
| Recurso | Valor | Por qué |
|---|---|---|
| CPU | 2 núcleos | Sobra para una red chica o mediana |
| RAM | 4 GB | Recién instalado y sin equipos ya usa unos 2,1 GB |
| Swap | 1 GB | Margen por si MongoDB pide más |
| Disco | 20 GB | Instalado ocupa 3 GB; el resto es para datos y backups |
Antes de empezar: ¿tu CPU tiene AVX?
MongoDB 5.0 en adelante no arranca en procesadores sin AVX. En un LXC el contenedor usa la CPU del host, así que hay que mirarlo en el nodo de Proxmox (en la consola del nodo: pve → Shell):
grep -o -m1 -w avx /proc/cpuinfo
Si devuelve avx, adelante. Si no devuelve nada (pasa con algunos Celeron, Atom o servidores muy viejos), este camino no sirve tal cual: habría que usar una versión vieja de MongoDB, y no lo recomiendo.
Paso 1: bajar la plantilla (no hay que buscarla en ningún lado)
Una de las dudas típicas: "¿de dónde saco la plantilla?". Proxmox trae su propio repositorio de plantillas oficiales, y se bajan desde la misma web:
- En el árbol de la izquierda, entrá al storage local del nodo.
- Abrí CT Templates y tocá el botón Templates.
- Buscá
ubuntuy elegí ubuntu-24.04-standard. - Tocá Download. Son unos 135 MB.
Lo mismo desde la consola del nodo:
pveam update
pveam available --section system | grep ubuntu-24.04
pveam download local ubuntu-24.04-standard_24.04-2_amd64.tar.zst
¿Por qué Ubuntu 24.04? Porque está en la lista oficial de sistemas soportados por el controlador para Linux (Ubuntu 20.04, 22.04 y 24.04; Debian 11 y 12), y porque trae justo la versión de jsvc que recomienda TP-Link (lo vemos en el paso 4).
Paso 2: crear el contenedor
Botón Create CT, arriba a la derecha. Pestaña por pestaña:
- General
- CT ID: el que te proponga (o el que uses para servicios de red).
- Hostname:
omada. - Unprivileged container: marcado.
- Nesting: marcado. Ubuntu 24.04 lo necesita para que systemd ande bien adentro del contenedor.
- Password: la de root del contenedor. Mejor todavía: cargá tu llave SSH pública en el campo de abajo.
- Template: storage
local, laubuntu-24.04-standardque bajaste. - Disks: 20 GB.
- CPU: 2 núcleos.
- Memory: 4096 MB de RAM y 1024 de swap.
- Network: bridge
vmbr0(o el de la red donde están los equipos Omada). IPv4: estática si podés; si usás DHCP, después reservá la IP en el router. - DNS: lo del host.
- Confirm: marcá Start after created y Finish.
Por consola es una sola línea (cambiá el ID, el storage y la red por los tuyos):
pct create 102 local:vztmpl/ubuntu-24.04-standard_24.04-2_amd64.tar.zst \
--hostname omada --unprivileged 1 --features nesting=1 \
--cores 2 --memory 4096 --swap 1024 \
--rootfs local-lvm:20 \
--net0 name=eth0,bridge=vmbr0,ip=dhcp \
--ssh-public-keys ~/.ssh/id_ed25519.pub \
--onboot 1 --start 1
--onboot 1 hace que el contenedor arranque solo cuando se reinicia el nodo. Para un controlador de red es importante: si no arranca, nadie lo nota hasta que hace falta.
La IP que tomó se ve en el resumen del contenedor o con:
pct exec 102 -- ip -4 addr show eth0
Paso 3: preparar Ubuntu e instalar Java 17 y jsvc
Entrá al contenedor (por SSH o con Console en la web) y actualizá:
apt update && apt -y upgrade
El controlador 5.15.20 en adelante pide Java 17 de 64 bits, más jsvc para correr como servicio:
apt install -y openjdk-17-jre-headless jsvc curl gnupg
java -version
dpkg -l jsvc
openjdk version "17.0.20.1" 2026-08-18
ii jsvc 1.0.15-11build1 amd64
TP-Link recomienda jsvc 1.0.15, y es justo la que trae Ubuntu 24.04. (Si probás jsvc -version te va a contestar "No class specified": es normal, por eso conviene mirar la versión con dpkg.)
Paso 4: instalar MongoDB 8.0
El controlador guarda todo en MongoDB (versiones 4.4 a 8 para el controlador 5.15.20 en adelante). Ubuntu no lo trae, así que se agrega el repositorio oficial de MongoDB:
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg --dearmor
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" \
> /etc/apt/sources.list.d/mongodb-org-8.0.list
apt update
apt install -y mongodb-org
mongod --version | head -1
db version v8.0.34
Ojo con un detalle: en la guía de TP-Link, el ejemplo para Ubuntu 24.04 dice jammy (que es 22.04). Para 24.04 va noble, como arriba.
No hace falta arrancar ni habilitar MongoDB a mano: el controlador levanta su propia instancia cuando arranca.
Paso 5: instalar el controlador
El paquete se baja de la página oficial: Omada Software Controller – descargas. Elegí el .deb para Linux x64 de la versión más nueva. Copiá el enlace del botón de descarga y bajalo directo en el contenedor:
cd /root
curl -fL -o omada.deb "ENLACE-DEL-DEB"
dpkg -I omada.deb | grep -E "Version|Depends"
Version: 6.3.0.45
Depends: adduser, jsvc (>=1.0.8), curl,
Y se instala:
dpkg -i omada.deb
Cannot locate Java Home
JRE 17.0.20.1 is greater than 8 and JSVC is less than 1.1.0
Unpacking omadac (6.3.0.45) ...
Setting up omadac (6.3.0.45) ...
Install Omada Network Application succeeded!
...
Starting Omada Network Application. Please wait.
Started successfully.
You can visit http://localhost:8088 on this host to manage the wireless network.
Las dos primeras líneas parecen errores, pero no lo son: el instalador busca Java por su cuenta y avisa la combinación de versiones que encontró. Lo que importa es el Started successfully.
El servicio queda habilitado para arrancar solo. Para manejarlo:
tpeap status
tpeap stop
tpeap start
Paso 6: comprobar que todo escucha
ss -ltnup | grep -E "jsvc|mongod"
Lo que tiene que aparecer:
| Puerto | Para qué |
|---|---|
| 8043/tcp | Panel web (HTTPS) |
| 8088/tcp | Panel web (HTTP, redirige a 8043) |
| 8843/tcp | Portal cautivo (HTTPS) |
| 29810/udp | Descubrimiento de equipos |
| 29811–29817/tcp | Adopción y administración de equipos |
| 27001/udp | App Omada del celular |
| 27217/tcp | MongoDB, solo en 127.0.0.1 |
Que MongoDB escuche solo en 127.0.0.1 está bien: la base no tiene que verse desde la red.
Si tenés un firewall entre el controlador y los equipos (el de Proxmox, el del router o ufw), esos puertos tienen que estar abiertos.
Paso 7: el asistente inicial
En el navegador: https://IP-DEL-CONTENEDOR:8043. El certificado es autofirmado, así que el navegador va a avisar; aceptá y seguí.
1. Sign In

Dos opciones:
- Sign In con un TP-Link ID: además habilita el acceso remoto por la nube de Omada.
- Create a Local Account: un usuario y contraseña que viven solo en este controlador.
Si no sabés cuál, empezá con la cuenta local. La nube se puede vincular después.
2. Set Up Controller

Nombre del controlador, país (define qué canales y potencias de Wi-Fi están permitidos, así que poné el real) y zona horaria (para que los registros tengan la hora correcta). Acá también está Restore from backup file, por si estás migrando desde otro controlador.
3. Add Devices

Acá el controlador muestra los equipos Omada que encontró en la red. En este caso, dos switches IES210GPP.
Ojo con este paso. Vienen todos marcados, y si tocás Next los adopta: pasan a ser administrados por este controlador y la configuración que tenían hecha a mano queda reemplazada por la del controlador. Si estás probando, o si esos equipos están en producción, tocá Skip. Siguen apareciendo en Devices como pendientes, y los adoptás cuando quieras, uno por uno.
4. Complete

El resumen. El usuario y la contraseña que se muestran acá son también los que el controlador les pone a los equipos que adopte (se cambian en Site Settings → Device Account).
Go to Dashboard y listo:

El sitio creado, 0 switches adoptados (porque se tocó Skip) y, arriba a la derecha, un aviso de que hay una versión nueva. Lo vemos abajo.
¿Y si los equipos están en otra red?
El descubrimiento del paso 3 funciona por broadcast: el controlador solo ve los equipos de su misma red (misma VLAN). Si los access points o switches están en otra subred, hay que decirles dónde está el controlador. Las opciones más comunes:
- Opción 138 de DHCP: en el servidor DHCP de la red de los equipos, la opción 138 con la IP del controlador.
- Omada Discovery Utility: un programa de TP-Link que, desde una PC en la red de los equipos, les indica la dirección del controlador.
- Desde la web de cada equipo (en modo standalone), en la sección de administración por controlador.
Lo que conviene hacer después
- Reservar la IP. Los equipos adoptados recuerdan la IP del controlador. Si cambia, quedan desconectados.
- Backups automáticos. En Settings → Maintenance → Backup se programa un backup diario. Y en Proxmox, un backup del contenedor (Backup → Add), en modo snapshot, que no lo apaga.
- Actualizar. El aviso del panel ofrece la versión nueva. En Linux se actualiza bajando el
.debnuevo e instalándolo encima condpkg -i, después de un backup. Leé las notas de la versión: algunos saltos grandes piden pasos intermedios. Y hay un detalle: el aviso apareció ofreciendo 6.3.0.111, pero en la página de descargas esa versión estaba publicada solo para Windows. Antes de actualizar, fijate que exista para Linux. - No exponerlo a Internet. Si necesitás entrar desde afuera, mejor por VPN, por la nube de Omada o por un túnel SSH. Publicar el 8043 al mundo no.
Resumen en comandos
En el nodo de Proxmox:
grep -o -m1 -w avx /proc/cpuinfo
pveam update
pveam download local ubuntu-24.04-standard_24.04-2_amd64.tar.zst
pct create 102 local:vztmpl/ubuntu-24.04-standard_24.04-2_amd64.tar.zst \
--hostname omada --unprivileged 1 --features nesting=1 \
--cores 2 --memory 4096 --swap 1024 --rootfs local-lvm:20 \
--net0 name=eth0,bridge=vmbr0,ip=dhcp --onboot 1 --start 1
Adentro del contenedor:
apt update && apt -y upgrade
apt install -y openjdk-17-jre-headless jsvc curl gnupg
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg --dearmor
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" > /etc/apt/sources.list.d/mongodb-org-8.0.list
apt update && apt install -y mongodb-org
curl -fL -o omada.deb "ENLACE-DEL-DEB"
dpkg -i omada.deb
tpeap status
Y después, https://IP-DEL-CONTENEDOR:8043. Media hora, contando la descarga.