Cómo conseguir un VPS gratuito para siempre en Oracle Cloud (con Debian ARM64)

Cómo conseguir un VPS gratuito para siempre en Oracle Cloud (con Debian ARM64)

Índice

La Alianza Rebelde no tenía presupuesto. Tenía ingenio.

Hoth, Yavin IV, la base en el sistema Crait — ninguna fue comprada ni alquilada. Eran planetas olvidados, estaciones abandonadas, rincones del universo que el Imperio no consideraba lo suficientemente valiosos como para guardar.

Oracle Cloud tiene algo similar: un nivel gratuito permanente que la mayoría de la gente no sabe que existe, o no se molesta en reclamar. No son los 30 días de prueba de AWS. No son los créditos de GCP que se evaporan sin avisar. Es una VM ARM64 de hasta 4 núcleos y 24 GB de RAM, disponible de forma permanente, sin coste, mientras la mantengas activa.

El Imperio digital cobra por cada ciclo de CPU, cada gigabyte de transferencia, cada hora de disponibilidad. Oracle, en este punto concreto de su estrategia comercial, no lo hace.

Vamos a reclamar esa base.


Aviso legal y de uso responsable

Este artículo describe cómo crear y configurar un servidor en Oracle Cloud con fines legítimos: aprendizaje, proyectos personales, homelab, privacidad y seguridad personal.

El uso de servidores cloud para actividades ilegales, acceso no autorizado a sistemas, acoso, spam o cualquier actividad que infrinja la ley o los Términos de Servicio de Oracle Cloud queda fuera del alcance de este artículo y es responsabilidad exclusiva del usuario.

Oracle Cloud Free Tier está sujeto a condiciones de uso: una cuenta por persona, datos de registro verídicos, y la instancia debe mantenerse activa para no ser reclamada.


Por qué Oracle Cloud y no otra alternativa

Hay varios proveedores con planes gratuitos, pero la mayoría tienen trampa: límite de horas mensuales, la instancia se apaga si no hay tráfico, o el plan “gratuito” caduca a los 12 meses.

Oracle Cloud Always Free es diferente. Las instancias Ampere A1 (ARM64) con hasta 4 OCPU y 24 GB de RAM son permanentes, sin límite de horas, sin caducidad. El único riesgo es que Oracle puede reclamar instancias completamente ociosas durante semanas seguidas — si la tienes activa haciendo algo (un relay VPN, un servidor web, un bot), ese riesgo desaparece.

Qué incluye el nivel gratuito permanente:

RecursoCantidad
OCPU ARM64 (Ampere A1)4 en total
RAM24 GB en total
Almacenamiento en bloque200 GB
Transferencia saliente10 TB/mes
IP pública1

Puedes usarlo todo en una sola instancia o repartirlo en hasta cuatro. Para la mayoría de proyectos personales, una sola instancia con 2 OCPU y 12 GB de RAM es más que suficiente.


Crear la cuenta

Ve a oracle.com/cloud/free y haz clic en “Comenzar gratis”.

Lo que necesitas

  • Correo electrónico válido
  • Número de teléfono móvil (para verificación)
  • Tarjeta de crédito o débito real (no virtual, no prepago, no de un solo uso)

Oracle pide la tarjeta para verificar identidad, no para cobrarte. No se realiza ningún cargo mientras permanezcas en el nivel gratuito. Si en algún momento quieres usar recursos de pago, tienes que actualizar la cuenta manualmente — no ocurre de forma automática.

Elige bien la región

Durante el registro te pedirán una región principal. Esto es permanente — no puedes cambiarlo después. Las instancias Always Free solo se pueden crear en esta región.

Para España:

  • eu-frankfurt-1 — buena latencia, amplia disponibilidad
  • eu-madrid-1 — más cercana, pero con menos disponibilidad de recursos ARM64 en algunos momentos

Mi recomendación: Frankfurt si no tienes un motivo específico para elegir otra.

Completa el registro

El proceso pide nombre, dirección, datos de la tarjeta y un código de verificación por SMS. Una vez completado, la consola de Oracle Cloud tarda unos minutos en activarse.


Crear la instancia

Una vez dentro de la consola, ve a:

Compute → Instances → Create instance

Nombre

Ponle el nombre que quieras. Yo uso nombres cortos y descriptivos — el nombre no tiene impacto técnico.

Shape (tipo de instancia)

Haz clic en “Change shape” y selecciona:

  • Serie: Ampere
  • Shape: VM.Standard.A1.Flex
  • OCPU: 2
  • Memory: 12 GB

Podrías poner 4 OCPU y 24 GB, pero mantenerse en la mitad del límite es más estable a largo plazo — hay menos probabilidad de que Oracle reclame la instancia por considerarla sobredimensionada.

Imagen del sistema operativo

Aquí está el punto clave. Por defecto Oracle propone Oracle Linux o Ubuntu. Cámbialo a Debian:

  1. Haz clic en “Change image”
  2. Selecciona Canonical Ubuntu o… espera: baja hasta encontrar Debian
  3. Elige la versión más reciente disponible (Debian 12 bookworm en el momento de escribir esto)
  4. Arquitectura: aarch64 (ARM64)
  5. Confirma

¿Por qué Debian? Es estable, predecible, con ciclos de soporte largos y sin sorpresas. Si ya administras servidores Debian, el servidor de Oracle se comportará exactamente igual. Los comandos, los paths, los paquetes — todo es lo mismo.

Clave SSH

En la sección de claves SSH, sube tu clave pública:

cat ~/.ssh/id_ed25519.pub

Pega el contenido en el campo correspondiente. Sin esta clave no podrás conectarte al servidor.

Si no tienes par de claves SSH, créalo primero:

ssh-keygen -t ed25519 -C "[email protected]"

Almacenamiento

El mínimo (50 GB) es suficiente para un relay VPN o servidor personal. El límite del nivel gratuito es 200 GB en total — puedes dejarlo en 50 y añadir más después si lo necesitas.

Red

Deja la configuración de red por defecto. Oracle crea automáticamente una VCN (red virtual) con las configuraciones básicas.

Crear

Haz clic en “Create”. La instancia tarda entre 1 y 3 minutos en arrancar. Cuando el estado cambie a Running, aparecerá la IP pública en los detalles.


Primera conexión

La imagen Debian de Oracle Cloud usa el usuario debian por defecto (no ubuntu, no opc, no root):

ssh -i ~/.ssh/id_ed25519 debian@IP_PUBLICA_DE_TU_INSTANCIA

Una vez dentro, actualiza el sistema:

sudo apt update && sudo apt upgrade -y

Abrir puertos en Oracle Cloud

Oracle Cloud tiene dos capas de firewall independientes: el firewall del sistema operativo y las Security Lists de la red virtual. Tienes que abrir los puertos en ambas.

Este es el paso que más gente olvida y el que provoca la mayoría de problemas de conectividad.

Capa 1 — Sistema operativo (ufw)

La imagen Debian de Oracle no trae ufw activado por defecto, pero es buena práctica configurarlo:

sudo apt install -y ufw
sudo ufw allow 22/tcp      # SSH
sudo ufw enable
sudo ufw status

Capa 2 — Security List en la consola web

En la consola de Oracle Cloud:

Networking → Virtual Cloud Networks → tu VCN → Security Lists → Default Security List → Add Ingress Rules

Añade una regla para cada puerto que necesites:

CampoValor
Source CIDR0.0.0.0/0
IP ProtocolUDP (o TCP según el servicio)
Destination Port Rangeel puerto que quieras abrir

Sin esta regla, aunque el firewall del sistema operativo tenga el puerto abierto, el tráfico no llega a la instancia.


Verificar que todo funciona

Desde tu máquina local:

# La instancia responde
ping -c 3 IP_PUBLICA

# SSH funciona
ssh debian@IP_PUBLICA "echo 'Conexión OK'"

# El puerto que abriste está accesible
nc -zvu IP_PUBLICA PUERTO

Si los tres funcionan, la instancia está lista para lo que necesites.


Mantener la instancia activa

Oracle puede reclamar instancias con CPU al 0% durante periodos prolongados. Si tu servidor no tiene actividad constante por naturaleza, puedes añadir un cron job ligero:

# En el servidor, edita el crontab
crontab -e

# Añade esto para generar un mínimo de actividad periódica
0 */6 * * * df -h > /dev/null 2>&1

Una opción más útil que el cron de df es instalar un cliente DDNS como DuckDNS, que además de mantener la instancia activa actualiza automáticamente el nombre de dominio si Oracle cambia tu IP pública. (Próximo artículo: cómo configurar DuckDNS en tu instancia de Oracle Cloud.)


Qué hacer con esto

Un VPS gratuito y permanente tiene muchos usos legítimos:

  • Relay VPN — enruta tu tráfico por una IP diferente a la doméstica durante investigaciones o trabajo remoto
  • Servidor de monitorización — checks externos de disponibilidad de tus servicios
  • Nodo de salto — acceso SSH seguro a tu red doméstica sin exponer tu IP real
  • Servidor web personal — blog, portfolio, API pequeña
  • Instancia de pruebas — entorno ARM64 para compilar, testear, experimentar

Recursos

Vídeos en español:

Vídeos en inglés (más técnicos):

Documentación y guías: