Objetivos de aprendizaje
Después de leer este artículo podrás:
- Entender cómo funciona un VPS por dentro
- Saber qué queda bajo tu responsabilidad al alquilar uno
- Decidir si tu proyecto necesita un VPS o algo más simple
Cuando tu proyecto sale de la computadora de casa y necesita estar en línea todo el día, la primera sugerencia suele ser "alquila un VPS". Es una buena respuesta en muchos casos, pero trae una cuenta que casi nadie menciona: junto con el servidor, heredas el trabajo de administrarlo.
¿Qué es un VPS?#
VPS es la sigla de Virtual Private Server, en español servidor virtual privado. Según la definición de Wikipedia, es una máquina virtual vendida como servicio por una empresa de hosting.
En la práctica, pagas cada mes por una computadora que no existe como pieza física separada. Es una porción de una máquina real, con una cantidad fija de CPU, RAM y disco, una dirección IP pública y un sistema operativo solo tuyo, normalmente Linux. Entras por terminal y haces lo que quieras, dentro de los límites del contrato.
¿Cómo funciona un VPS por dentro?#
Un servidor físico grande ejecuta un hipervisor, el software que crea y administra las máquinas virtuales. Cada máquina virtual (la "guest") ve solo los recursos reservados para ella y puede reiniciarse sin afectar a las demás.
Dos puntos te importan:
- Cada VPS tiene su propio sistema operativo. Con virtualización de hardware, como KVM, cada máquina tiene incluso su propio kernel, lo que da más aislamiento respecto al servidor físico. En cambio, en la virtualización por contenedores, el kernel del host se comparte: caben más instancias por máquina, pero el aislamiento es menor y la personalización también.
- Los recursos físicos se comparten. Como varios VPS dividen la misma máquina, cada uno recibe un límite de CPU, RAM y disco. Según la carga de los vecinos, el rendimiento puede oscilar.
Si la diferencia entre máquina virtual y contenedor todavía no está clara, mira contenedores vs máquinas virtuales.
¿Qué recibes al alquilar un VPS?#
Normalmente cuatro cosas: una IP pública, acceso root (o un usuario con sudo), una imagen de sistema ya instalada (Ubuntu, Debian y similares) y un panel del proveedor para encender, apagar, reinstalar y, a veces, redimensionar la máquina.
Después de eso, el servidor es tuyo. Llega prácticamente vacío, y todo lo que corre en él lo instalaste tú.
¿Qué tienes que mantener?#
Este es el punto que define si el VPS vale la pena. El proveedor mantiene el hardware y la red. Lo demás corre por tu cuenta:
- Actualizaciones del sistema. Los paquetes desactualizados con fallos conocidos son una puerta clásica para intrusiones.
- Seguridad de acceso. Autenticación con clave SSH, firewall y usuarios sin privilegios innecesarios.
- Ejecutar la aplicación de forma confiable. Si el proceso cae o la máquina se reinicia, algo tiene que volver a levantarlo.
- HTTPS, proxy inverso y certificados, si vas a servir un sitio o una API.
- Monitoreo, logs y copias de tus datos.
Un primer paso de seguridad, en un Ubuntu recién creado, es actualizar el sistema y activar el firewall permitiendo solo SSH (los comandos de ufw están en la documentación de Ubuntu):
sudo apt update && sudo apt upgrade -y
sudo ufw allow ssh
sudo ufw enable
sudo ufw status verboseEjecuta ufw allow ssh antes de ufw enable. Activar el firewall sin permitir SSH corta tu propia conexión.
Y eso es solo el comienzo. Todavía faltan el supervisor de procesos, el proxy, el certificado y las actualizaciones automáticas. Cada elemento es simple por separado, pero sumados se convierten en horas de mantenimiento al mes.
VPS, servidor dedicado y hosting compartido: ¿cuál es la diferencia?#
| Hosting compartido | VPS | Servidor dedicado | |
|---|---|---|---|
| Qué alquilas | Una cuenta en un servidor compartido | Una máquina virtual | La máquina física entera |
| Acceso root | No | Sí | Sí |
| Aislamiento | Bajo | Medio a alto | Total |
| Rendimiento | Varía con los vecinos | Puede variar con los vecinos | Predecible |
| Administración | Casi ninguna | Toda tuya | Toda tuya |
| Costo | Menor | Intermedio | Mayor |
Para muchos fines, un VPS se comporta como un servidor dedicado, con la ventaja de crearse en minutos y costar menos. Para ver qué entra en el precio, mira cuánto cuesta un VPS.
¿Cuándo necesitas un VPS?#
Un VPS tiene sentido cuando necesitas control sobre el sistema:
- Software que exige acceso al sistema entero, como un servicio de red, una VPN o un módulo del kernel.
- Un stack poco común, que no encaja en los runtimes estándar de las plataformas de hosting.
- Varios servicios distintos en la misma máquina, configurados a tu manera.
- Aprendizaje: administrar un servidor Linux de verdad enseña mucho sobre deploy, redes y seguridad.
- Requisitos de cumplimiento que exigen controlar el sistema operativo.
¿Cuándo un VPS no es la mejor opción?#
Si tu proyecto es un bot, una API o un sitio web común, lo que quieres es el proceso en línea, no un servidor que cuidar. En ese caso, el VPS te cobra en tiempo: te conviertes en administrador de sistemas de un proyecto que solo necesitaba un node index.js corriendo.
Señales de que estás cargando demasiado peso:
- Pasas más tiempo en la terminal del servidor que en el código.
- Un aviso de seguridad del sistema se convierte en tu urgencia de la semana.
- El bot se cayó de madrugada y nadie lo notó, porque el reinicio automático no estaba configurado.
Para este tipo de carga, una plataforma de hosting que ejecuta tu código en contenedores suele ser más simple. La comparación completa está en VPS o plataforma de hosting.
Cómo hacerlo en Square Cloud#
Si tu objetivo es mantener una aplicación en línea sin montar un servidor, Square Cloud es un hosting self-service: tú haces el deploy y controlas la aplicación, que corre en un contenedor aislado. No instalas sistema operativo, firewall ni proxy.
Los contenedores están siempre encendidos, sin modo de suspensión, con reinicio automático (activado por defecto en el deploy desde el panel) cuando el proceso termina con error. Despliegas subiendo un ZIP en el panel, con la CLI, desde GitHub o con la extensión de VS Code. Entre diversos runtimes, como Node.js, Python, Java y Go, hay uno para sitios estáticos (consulta los disponibles hoy en Runtimes), y el HTTPS viene automático en las aplicaciones web.
Lo que la plataforma no es: una máquina con acceso root. El proceso corre como usuario sin privilegios, y no hay Dockerfile ni imagen propia. Si tu caso exige controlar el sistema entero, el VPS sigue siendo la herramienta correcta. Si solo exige mantener tu código corriendo, mira los recursos de Square Cloud.
Deploy
Sube desde GitHub, la CLI o un ZIP y publica en segundos
Preguntas frecuentes
¿Un VPS y un servidor dedicado son lo mismo?
No. Con un servidor dedicado alquilas la máquina física entera. Con un VPS alquilas una porción virtual de una máquina que otros clientes también usan, lo que cuesta menos pero puede sufrir con la carga de los vecinos.
¿Necesito saber Linux para usar un VPS?
En la práctica, sí. Te conectas por terminal (SSH), instalas paquetes, configuras el firewall y mantienes el sistema actualizado. Sin esa base, el mantenimiento se convierte en el mayor costo del proyecto.
¿Un VPS sirve para alojar un bot, una API o un sitio web?
Sirve para los tres, y para cualquier cosa que corra en el sistema que elijas. La contrapartida es que tú mismo configuras el proceso, el reinicio automático, el HTTPS y la seguridad.
¿Cuál es la diferencia entre un VPS y la nube?
Un VPS es una máquina virtual de tamaño fijo. Las nubes de infraestructura también venden máquinas virtuales, pero con muchos otros servicios alrededor. En la práctica, una instancia de nube usada como servidor se comporta como un VPS.
Más en Deploy
Ver los 33 artículos- Qué son las variables de entornoLas variables de entorno son pares clave-valor que el sistema operativo entrega a un proceso al iniciar. Aprende a leerlas en Node.js y Python sin exponer tokens.
- Qué es un deploy o despliegueUn deploy o despliegue lleva una versión de tu código a un servidor, la prepara y la pone en marcha. Conoce las etapas, los métodos y cómo hacer rollback.
- ¿Cuánta RAM y CPU necesita mi aplicación?Dimensiona RAM y CPU midiendo el pico real de la aplicación y sumando un margen del 30%. Mira cómo medir en Node.js, Python y Java y qué hacer cuando falte.
- Deploy automático con GitHub ActionsEl deploy automático con GitHub Actions envía tu código al servidor en cada push. Mira el workflow paso a paso, los secrets, las pruebas y los errores comunes.