Cómo montar tu propio servidor Proxmox VE
Tienes un servidor bare metal y quieres que ejecute máquinas virtuales y contenedores en lugar de un único sistema operativo. Proxmox VE convierte ese hardware en una plataforma de virtualización completa: un host basado en Debian con interfaz web, virtualización completa con KVM, contenedores de sistema LXC, almacenamiento y red integrados, y ninguna licencia de hipervisor por socket que comprar. Esta guía recorre todo el camino, de un servidor vacío a un host en funcionamiento. Instalamos Proxmox VE 9.2 desde la ISO, corregimos los repositorios APT y actualizamos, explicamos la red en bridge por defecto, repasamos el almacenamiento, creamos una primera VM y un primer contenedor LXC, y terminamos con un bastionado básico. Al final tendrás un nodo único listo para producción que más adelante podrás ampliar a un clúster.
Cargando...
Proxmox VE es una de las formas más extendidas de montar tu propia plataforma de virtualización sobre hardware que tú controlas. Es software libre bajo la licencia GNU AGPLv3, puede usarse gratis en producción sin funciones bloqueadas ni límite de VMs, y ofrece tanto máquinas virtuales KVM como contenedores LXC desde una sola interfaz web. Este tutorial lleva un servidor bare metal desde un disco vacío hasta un host en funcionamiento con una VM y un contenedor.
Requisitos previos
Antes de empezar, asegúrate de tener lo siguiente:
- Un servidor bare metal con una CPU de 64 bits con extensiones de virtualización por hardware (Intel VT-x o AMD-V) activadas en la BIOS/UEFI. (Si prefieres saltarte por completo la instalación manual desde la ISO, Proxmox VE es una de las imágenes de despliegue disponibles en Serverside.com: se despliega en bare metal en menos de un minuto, con consola KVM y montaje de ISO por si prefieres instalarlo tú mismo.)
- La ISO del instalador de Proxmox VE 9.2,
proxmox-ve_9.2-1.iso(unos 1,7 GB), desde la página oficial de descargas - Una forma de arrancar esa ISO en el servidor: una consola IPMI/KVM con montaje de medios virtuales, o acceso físico con una memoria USB
- Una dirección IP pública, máscara de subred y puerta de enlace para el host, además de un resolvedor DNS
- Soltura básica con la línea de comandos de Linux y SSH
Qué vamos a montar
Vamos a configurar un nodo Proxmox VE único: una máquina física que funciona como hipervisor independiente. Encima ejecutaremos dos cargas de trabajo para que veas los dos modelos que ofrece Proxmox:
- Una máquina virtual KVM (virtualización completa por hardware: su propio kernel, arranca cualquier sistema operativo)
- Un contenedor LXC (un contenedor de sistema Linux ligero que comparte el kernel del host)
Todo lo que aparece aquí funciona en una sola máquina. El clustering, la alta disponibilidad y Ceph vienen después y necesitan al menos tres nodos, así que quedan fuera del alcance de un primer host.
Paso 1: Descarga la ISO y arranca el instalador
Descarga proxmox-ve_9.2-1.iso desde la página de descargas de Proxmox. Proxmox VE 9.2 se publicó el 21 de mayo de 2026 y está basado en Debian 13 "Trixie". Comprueba el checksum con el que publica la página de descargas antes de grabar la imagen en ningún sitio.
Si tu servidor tiene consola IPMI/KVM (iDRAC, iLO, IPMI o un KVM web), monta la ISO como medio virtual y configura el servidor para que arranque desde ella una vez. En la consola deberías ver el menú de arranque de Proxmox:
Proxmox VE 9.2 (ISO 'proxmox-ve_9.2-1')
Install Proxmox VE (Graphical)
Install Proxmox VE (Terminal UI)
Advanced Options
Elige Install Proxmox VE (Graphical) (o la variante Terminal UI si la consola KVM muestra mal los gráficos). El instalador te lleva por unas pocas pantallas:
- EULA: acéptala.
- Target harddisk: elige el disco (o los discos) donde instalar. Pulsa Options para elegir el sistema de archivos. Con un solo disco,
ext4sobre LVM es la opción sencilla por defecto. Si tienes dos o más discos y quieres redundancia y snapshots, elige zfs y un nivel de RAID. El instalador ofrece RAID0, RAID1 (espejo), RAID10, RAIDZ-1, RAIDZ-2 y RAIDZ-3, y las opciones disponibles dependen de cuántos discos selecciones. Un espejo de dos discos (RAID1) es un punto de partida sensato y resistente a fallos. - Location and time zone: indica tu país, zona horaria y distribución de teclado.
- Administration password and email: pon una contraseña de
rootfuerte y una dirección de correo real para las notificaciones del sistema. - Network configuration: define el nombre de host de gestión (un FQDN como
pve1.example.com), la IP del host en notación CIDR, la puerta de enlace y un servidor DNS. Estos datos pasan a ser la configuración de tu bridgevmbr0en el primer arranque.
Una nota sobre la memoria de ZFS antes de decidirte por él: ZFS usa una caché en RAM llamada ARC. Una buena regla general es contar con unos 2 GiB de RAM base más aproximadamente 1 GiB de ARC por cada 1 TiB de almacenamiento en el pool. Desde Proxmox VE 8.1, las instalaciones nuevas limitan el ARC por defecto al 10 % de la RAM instalada (escrito en /etc/modprobe.d/zfs.conf), valor que puedes ajustar en las Advanced Options del instalador. Reserva esa RAM además de la que necesiten tus VMs.
Confirma el resumen y deja que instale. Al terminar, el servidor se reinicia en Proxmox VE. Desmonta el medio virtual para que arranque desde el disco.
Paso 2: Primer arranque e inicio de sesión
Tras el reinicio, la consola muestra la URL de la interfaz web:
Welcome to the Proxmox Virtual Environment. Please use your web browser to
configure this server - connect to:
https://192.0.2.10:8006/
pve1 login:
Abre https://<your-server-ip>:8006 en un navegador. La interfaz web la sirve el daemon pveproxy por HTTPS en el puerto 8006. En una instalación nueva verás un aviso de certificado autofirmado; acéptalo para continuar. Inicia sesión con el usuario root, la contraseña que pusiste durante la instalación y el realm Linux PAM standard authentication (root@pam).
Ahora conéctate por SSH para ejecutar los pasos de línea de comandos que siguen:
ssh root@192.0.2.10
Comprueba la versión y el kernel en uso con pveversion:
root@pve1:~# pveversion
pve-manager/9.2-1/2c8d7f3b (running kernel: 6.14.8-2-pve)
El fragmento pve-manager/9.2-1 confirma que estás en la 9.2; el del kernel refleja el kernel que esté arrancado en ese momento. En toda esta guía el host se llama pve1 y está en 192.0.2.10. Sustitúyelos por tu propio nombre de host y tus direcciones.
No reutilices las IPs, nombres de host ni IDs exactos que aparecen aquí; usa tus propios valores.
Paso 3: Configura los repositorios y actualiza
Una instalación nueva apunta APT al repositorio enterprise, que requiere una clave de suscripción de pago. Sin ella, apt update falla contra ese repositorio. Proxmox VE puede usarse gratis en producción, pero los paquetes gratuitos vienen del repositorio no-subscription, que tienes que activar tú.
Proxmox VE 9 usa el formato moderno deb822 .sources en /etc/apt/sources.list.d/, no los antiguos ficheros .list de una línea. Primero, desactiva el repositorio enterprise añadiéndole una línea Enabled: false. Abre /etc/apt/sources.list.d/pve-enterprise.sources y déjalo así:
Types: deb
URIs: https://enterprise.proxmox.com/debian/pve
Suites: trixie
Components: pve-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Enabled: false
Después crea el repositorio no-subscription en /etc/apt/sources.list.d/proxmox.sources:
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Suites: trixie es correcto porque Proxmox VE 9 está construido sobre Debian 13 "Trixie". No actives a la vez los repositorios enterprise y no-subscription: elige un solo canal.
Una advertencia de la propia documentación de Proxmox sobre el repositorio no-subscription: "Puede usarse para pruebas y uso fuera de producción. No se recomienda usarlo en servidores de producción, ya que estos paquetes no siempre se prueban y validan tan a fondo." Para un home lab o un host de staging es la opción habitual; para una flota en producción, una suscripción por socket te da acceso al canal enterprise, con paquetes más validados, y además soporte.
Ahora refresca e instala las actualizaciones:
root@pve1:~# apt update && apt full-upgrade -y
Hit:1 http://download.proxmox.com/debian/pve trixie InRelease
Hit:2 http://deb.debian.org/debian trixie InRelease
Hit:3 http://deb.debian.org/debian trixie-updates InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
proxmox-kernel-6.14 pve-manager qemu-server ...
...
Si se actualizó el kernel, reinicia para arrancar con él:
root@pve1:~# reboot
Un efecto secundario esperado: como este host no tiene clave de suscripción, la interfaz web muestra un diálogo "No valid subscription" cada vez que inicias sesión. Es normal con el repositorio no-subscription: se trata de un aviso, no de un error, y no hay nada roto. Volvemos a tratarlo en la sección de resolución de problemas.
Paso 4: La red (entender vmbr0)
Proxmox no conecta las VMs directamente a tu tarjeta de red física. El instalador crea un bridge de Linux llamado vmbr0, le añade la interfaz física como puerto y coloca la IP del propio host sobre el bridge. Un bridge se comporta como un switch virtual: el host, cada VM y cada contenedor se conectan a él y comparten el enlace de salida. Por eso configuraste la IP del host como parte de vmbr0 durante la instalación.
Revisa las interfaces actuales:
root@pve1:~# ip -br a
lo UNKNOWN 127.0.0.1/8 ::1/128
enp1s0 UP
vmbr0 UP 192.0.2.10/24
Fíjate en que la interfaz física enp1s0 no tiene IP propia (es un puerto del bridge), mientras que vmbr0 lleva la dirección. La configuración está en /etc/network/interfaces:
root@pve1:~# cat /etc/network/interfaces
auto lo
iface lo inet loopback
iface enp1s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.0.2.10/24
gateway 192.0.2.1
bridge-ports enp1s0
bridge-stp off
bridge-fd 0
La línea bridge-ports enp1s0 es la que asocia la tarjeta física al bridge. En un primer host de un solo nodo rara vez tendrás que cambiar nada de esto: el bridge por defecto ya saca el tráfico de las VMs y los contenedores directamente a tu red.
Si editas este fichero (por ejemplo, para añadir un segundo bridge o un bridge VLAN-aware), aplica el cambio sin reiniciar. Proxmox incluye ifupdown2, que te da ifreload:
root@pve1:~# ifreload -a
Paso 5: Conceptos básicos de almacenamiento
Proxmox agrupa los discos en storages con nombre, y cada uno puede alojar ciertos tipos de contenido. Una instalación por defecto te da dos, y conviene saber para qué sirve cada uno. Ejecuta pvesm status:
root@pve1:~# pvesm status
Name Type Status Total Used Available %
local dir active 100.00G 35.00G 65.00G 35.00%
local-lvm lvmthin active 500.00G 200.00G 300.00G 40.00%
Los dos storages por defecto se reparten el trabajo:
locales un almacén basado en un directorio del sistema de archivos del host. Guarda imágenes ISO, plantillas de contenedor y copias de seguridad (y snippets): ficheros, en resumen. Aquí es donde subes las ISOs de instalación y descargas las plantillas de contenedor.local-lvmes un almacén LVM-thin. Guarda las imágenes de disco de las VMs y los volúmenes raíz de los contenedores: almacenamiento en bloque. Aquí viven los discos virtuales.
La regla general es: las ISOs y plantillas van en local; los discos de VM y el rootfs de los contenedores van en local-lvm. Si instalaste sobre ZFS en lugar de LVM, el segundo almacén suele ser local-zfs (un storage de tipo zfspool) en vez de local-lvm, y cumple la misma función: el almacén en bloque para los discos de VMs y contenedores.
Paso 6: Crea tu primera VM
Llega la recompensa. Vamos a crear una máquina virtual KVM desde la línea de comandos para que veas qué hace cada opción. Primero, sube o descarga una ISO de instalación del sistema invitado al storage local, ya sea desde la interfaz web (local → ISO Images → Upload) o copiando el fichero en /var/lib/vz/template/iso/ en el host. En este ejemplo suponemos que debian-13.5.0-amd64-netinst.iso ya está en local.
Crea la VM con qm create. Esto define la VM con ID 100, dos núcleos, 4 GiB de RAM, un controlador virtio-scsi moderno con un disco de 32 GiB en local-lvm y una tarjeta de red virtio conectada a vmbr0:
root@pve1:~# qm create 100 --name web01 --cores 2 --memory 4096 \
--scsihw virtio-scsi-single --scsi0 local-lvm:32 \
--net0 virtio,bridge=vmbr0 --ostype l26
Conecta la ISO de instalación como CD-ROM virtual y configura la VM para que arranque desde ella:
root@pve1:~# qm set 100 --ide2 local:iso/debian-13.5.0-amd64-netinst.iso,media=cdrom \
--boot order='ide2;scsi0'
update VM 100: -boot order=ide2;scsi0 -ide2 local:iso/debian-13.5.0-amd64-netinst.iso,media=cdrom
Arráncala:
root@pve1:~# qm start 100
Si todo va bien, qm start no muestra nada. Comprueba que la VM está en marcha con qm list:
root@pve1:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
100 web01 running 4096 32.00 12345
Abre la Console de la VM en la interfaz web (noVNC) para terminar la instalación del sistema invitado igual que en cualquier máquina física. Como una VM KVM arranca su propio kernel, puedes instalar cualquier sistema operativo: otro Linux, Windows, BSD, lo que quieras.
Paso 7: Crea tu primer contenedor LXC
El contenedor es la opción más ligera. En lugar de arrancar su propio kernel, un contenedor LXC comparte el kernel del host y ejecuta encima un espacio de usuario Linux aislado. Arranca en uno o dos segundos, consume una fracción de la RAM y cabe en mucha mayor cantidad en la misma máquina. A cambio, tiene que ser Linux y está menos aislado que una VM completa. Con una docena de servicios Linux pequeños, los contenedores te permiten meter muchos más por host de los que cabrían como VMs.
Empieza por actualizar el catálogo de plantillas y listar lo disponible:
root@pve1:~# pveam update
update successful
root@pve1:~# pveam available --section system
system debian-12-standard_12.7-1_amd64.tar.zst
system debian-13-standard_13.1-2_amd64.tar.zst
system ubuntu-24.04-standard_24.04-2_amd64.tar.zst
...
Descarga una plantilla en el storage local. Las revisiones menores de las plantillas cambian con el tiempo, así que busca el nombre de fichero actual en la lista anterior. Aquí usamos la plantilla estándar de Debian 13 (p. ej. debian-13-standard_13.1-2_amd64.tar.zst):
root@pve1:~# pveam download local debian-13-standard_13.1-2_amd64.tar.zst
downloading ...
download finished: local:vztmpl/debian-13-standard_13.1-2_amd64.tar.zst
Crea el contenedor con pct create. Es el contenedor con ID 200, a partir de esa plantilla, con un nombre de host, dos núcleos, 2 GiB de RAM, un volumen raíz de 8 GiB en local-lvm y una tarjeta de red con DHCP conectada a vmbr0:
root@pve1:~# pct create 200 local:vztmpl/debian-13-standard_13.1-2_amd64.tar.zst \
--hostname ct01 --cores 2 --memory 2048 \
--rootfs local-lvm:8 --net0 name=eth0,bridge=vmbr0,ip=dhcp
Arráncalo y compruébalo:
root@pve1:~# pct start 200
root@pve1:~# pct list
VMID Status Lock Name
200 running ct01
Entra directamente en una shell de root dentro del contenedor en marcha para configurarlo:
root@pve1:~# pct enter 200
root@ct01:~#
Escribe exit para volver al host. Compara con la VM del paso 6: menos memoria, arranque instantáneo y ninguna instalación de sistema operativo que esperar. Esa densidad es el motivo para elegir LXC cuando la carga de trabajo es Linux y no necesitas un kernel propio.
Paso 8: Bastionado básico
Un plano de gestión de hipervisor en una IP pública es un objetivo de alto valor para un atacante. En un nodo único, tres cambios cubren la mayor parte.
1. Autenticación SSH solo con clave. Copia tu clave pública al host y después desactiva el inicio de sesión con contraseña. Edita /etc/ssh/sshd_config:
root@pve1:~# sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
root@pve1:~# systemctl restart ssh
Comprueba que sigues pudiendo entrar con tu clave desde un segundo terminal antes de cerrar la sesión actual, para no quedarte fuera. Deja activado el inicio de sesión de root con clave (Proxmox ejecuta algunas tareas por SSH como root); con las contraseñas desactivadas, ya no es posible un ataque de fuerza bruta contra la cuenta.
2. Activa el firewall de Proxmox. Proxmox trae un firewall integrado (pve-firewall, basado en nftables/iptables) que se configura a nivel de datacenter, nodo y VM/CT. Viene desactivado por defecto. Actívalo a nivel de datacenter y en el nodo. En la interfaz web: Datacenter → Firewall → Options → Firewall: Yes y después pve1 → Firewall → Options → Firewall: Yes. Una vez activado, el firewall del host bloquea por defecto el tráfico entrante salvo la interfaz web (8006) y SSH (22) desde la red local, así que asegúrate de tener tus reglas de gestión en su sitio antes de activarlo en remoto.
3. Limita la interfaz web (puerto 8006) a las IPs de administración. El método documentado es un IPSet llamado management con las direcciones IP de administración permitidas; las reglas de gestión integradas lo respetan. En Datacenter → Firewall → IPSet, crea un IPSet llamado management y añade las IPs de tu oficina o tu VPN. Como alternativa, puedes vincular la interfaz web a una sola dirección definiendo LISTEN_IP en /etc/default/pveproxy y reiniciando pveproxy:
root@pve1:~# systemctl restart pveproxy
Si tu host está detrás de un borde de red que ya filtra el tráfico (por ejemplo, el firewall y la mitigación DDoS siempre activos delante de un servidor dedicado de Serverside.com), eso añade una capa de defensa en profundidad sobre estos controles del host, pero no los sustituye.
Verificación
Repasa esta lista para confirmar que el host está sano y que las dos cargas de trabajo funcionan:
root@pve1:~# pveversion
pve-manager/9.2-1/2c8d7f3b (running kernel: 6.14.8-2-pve)
root@pve1:~# pvesm status
Name Type Status Total Used Available %
local dir active 100.00G 35.00G 65.00G 35.00%
local-lvm lvmthin active 500.00G 200.00G 300.00G 40.00%
root@pve1:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
100 web01 running 4096 32.00 12345
root@pve1:~# pct list
VMID Status Lock Name
200 running ct01
Después abre https://192.0.2.10:8006 en el navegador, inicia sesión y comprueba que ves web01 y ct01 en la vista del servidor con estado verde (en ejecución). Abre una shell en el contenedor o una consola en la VM y haz ping hacia fuera para confirmar que la red a través de vmbr0 funciona. Si los cuatro comandos y la interfaz web coinciden, tienes un host Proxmox VE en funcionamiento.
Resolución de problemas
- Diálogo "No valid subscription" al iniciar sesión. Es lo esperado con el repositorio no-subscription. Es un aviso, no un fallo; no se desactiva nada. Desaparece si compras e instalas una clave de suscripción por socket.
apt updatefalla con un 401 contraenterprise.proxmox.com. No desactivaste el repositorio enterprise. AñadeEnabled: falsea/etc/apt/sources.list.d/pve-enterprise.sources(paso 3), comprueba que existeproxmox.sourcesconpve-no-subscriptiony vuelve a ejecutarapt update.- Una VM o un contenedor no tiene red. Comprueba que su tarjeta de red está conectada al bridge correcto (
--net0 ...,bridge=vmbr0) y quevmbr0incluye como puerto tu tarjeta física activa (bridge-portsen/etc/network/interfaces). Si el firewall de Proxmox está activado, confirma que no bloquea el tráfico del invitado a nivel de datacenter, nodo o VM/CT. pveam availableopveam downloadno encuentran nada. Ejecuta primeropveam updatepara refrescar el catálogo de plantillas y vuelve a listar. Las revisiones menores de las plantillas también cambian: copia el nombre de fichero exacto depveam available --section systemen lugar de escribir uno antiguo.- No puedes acceder a
https://<ip>:8006. Suele ser un problema de firewall: o tu IP de administración no está en el IPSetmanagement, oLISTEN_IPen/etc/default/pveproxyestá vinculado a una dirección desde la que no te conectas. Entra por la consola IPMI/KVM, amplía la regla y reiniciapveproxy.
Conclusión
Ya tienes un host Proxmox VE 9.2 de un solo nodo en funcionamiento: instalado desde la ISO, apuntando al repositorio no-subscription y actualizado del todo, con la red en bridge y el almacenamiento entendidos, una VM KVM y un contenedor LXC en marcha, y un bastionado básico aplicado. A partir de aquí puedes crecer: añadir más VMs y contenedores, montar Proxmox Backup Server para copias de seguridad con deduplicación, o sumar dos nodos más para formar un clúster con quórum y alta disponibilidad.
Si prefieres saltarte del todo la instalación manual desde la ISO, Proxmox VE está disponible como imagen de despliegue lista en Serverside.com: se despliega en un par de clics en bare metal EPYC en menos de un minuto, con protección DDoS siempre activa delante del plano de gestión y una consola KVM por si alguna vez quieres arrancar tu propia ISO.
Y si todavía estás decidiendo si Proxmox VE es el hipervisor adecuado para ti (frente a VMware ESXi, XCP-ng o Hyper-V), empieza por nuestra guía de hipervisores bare metal, que repasa las ventajas e inconvenientes de cada uno antes de que dediques una máquina a cualquiera de ellos.
Escrito por
Co-founder & CTO, Serverside.com
Jesse is the co-founder and CTO of Serverside.com, where he leads the engineering behind the company's bare-metal cloud: from the ASN 55285 backbone to the core automation that drives day-to-day operation. He writes about dedicated servers, operating systems, and running production workloads on bare metal.
Seguir leyendo
Ver todos los artículos¿Te ha gustado este artículo?
Recibe nuevas guías y artículos técnicos en tu correo. Sin spam, cancela cuando quieras.



