OpenClaw en Oracle Cloud (OCI)
Objetivo
Ejecutar un Gateway persistente de OpenClaw en el nivel Always Free ARM de Oracle Cloud.
El nivel gratuito de Oracle puede ser una gran opción para OpenClaw (especialmente si ya tienes una cuenta OCI), pero viene con compromisos:
- Arquitectura ARM (la mayoría de cosas funcionan, pero algunos binarios pueden ser solo x86)
- La capacidad y el registro pueden ser caprichosos
Comparación de costos (2026)
| Proveedor | Plan | Especificaciones | Precio/mes | Notas |
|---|---|---|---|---|
| Oracle Cloud | Always Free ARM | hasta 4 OCPU, 24GB RAM | $0 | ARM, capacidad limitada |
| Hetzner | CX22 | 2 vCPU, 4GB RAM | ~ $4 | Opción de pago más barata |
| DigitalOcean | Basic | 1 vCPU, 1GB RAM | $6 | UI fácil, buena documentación |
| Vultr | Cloud Compute | 1 vCPU, 1GB RAM | $6 | Muchas ubicaciones |
| Linode | Nanode | 1 vCPU, 1GB RAM | $5 | Ahora parte de Akamai |
Requisitos previos
- Cuenta de Oracle Cloud (registro) — consulta la guía de registro de la comunidad si tienes problemas
- Cuenta de Tailscale (gratis en tailscale.com)
- ~30 minutos
1) Crear una instancia OCI
- Inicia sesión en la Consola de Oracle Cloud
- Navega a Compute → Instances → Create Instance
- Configura:
- Name:
openclaw - Image: Ubuntu 24.04 (aarch64)
- Shape:
VM.Standard.A1.Flex(Ampere ARM) - OCPUs: 2 (o hasta 4)
- Memory: 12 GB (o hasta 24 GB)
- Boot volume: 50 GB (hasta 200 GB gratis)
- SSH key: Añade tu clave pública
- Name:
- Haz clic en Create
- Anota la dirección IP pública
Consejo: Si la creación de la instancia falla con “Out of capacity”, prueba otro dominio de disponibilidad o reintenta más tarde. La capacidad del nivel gratuito es limitada.
2) Conectar y actualizar
# Conectar vía IP pública
ssh ubuntu@YOUR_PUBLIC_IP
# Actualizar el sistema
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential
Nota: build-essential es necesario para la compilación ARM de algunas dependencias.
3) Configurar usuario y hostname
# Establecer hostname
sudo hostnamectl set-hostname openclaw
# Establecer contraseña para el usuario ubuntu
sudo passwd ubuntu
# Habilitar lingering (mantiene los servicios de usuario ejecutándose después del logout)
sudo loginctl enable-linger ubuntu
4) Instalar Tailscale
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --ssh --hostname=openclaw
Esto habilita Tailscale SSH, así que puedes conectarte vía ssh openclaw desde cualquier dispositivo en tu tailnet — sin necesidad de IP pública.
Verifica:
tailscale status
A partir de ahora, conecta vía Tailscale: ssh ubuntu@openclaw (o usa la IP de Tailscale).
5) Instalar OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash
source ~/.bashrc
Cuando te pregunte “How do you want to hatch your bot?”, selecciona “Do this later”.
Nota: Si tienes problemas de compilación nativa ARM, comienza con paquetes del sistema (p. ej.
sudo apt install -y build-essential) antes de recurrir a Homebrew.
6) Configurar Gateway (loopback + auth por token) y habilitar Tailscale Serve
Usa la autenticación por token como predeterminada. Es predecible y evita la necesidad de flags de “auth insegura” en la UI de control.
# Mantener el Gateway privado en la VM
openclaw config set gateway.bind loopback
# Requerir autenticación para el Gateway + UI de control
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
# Exponer vía Tailscale Serve (HTTPS + acceso por tailnet)
openclaw config set gateway.tailscale.mode serve
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
systemctl --user restart openclaw-gateway
7) Verificar
# Comprobar versión
openclaw --version
# Comprobar estado del daemon
systemctl --user status openclaw-gateway
# Comprobar Tailscale Serve
tailscale serve status
# Probar respuesta local
curl http://localhost:18789
8) Blindar la seguridad de la VCN
Ahora que todo funciona, blinda la VCN para bloquear todo el tráfico excepto Tailscale. La Virtual Cloud Network de OCI actúa como un firewall en el borde de la red — el tráfico se bloquea antes de llegar a tu instancia.
- Ve a Networking → Virtual Cloud Networks en la Consola de OCI
- Haz clic en tu VCN → Security Lists → Default Security List
- Elimina todas las reglas de entrada excepto:
0.0.0.0/0 UDP 41641(Tailscale)
- Mantén las reglas de salida predeterminadas (permitir todo el tráfico saliente)
Esto bloquea SSH en el puerto 22, HTTP, HTTPS y todo lo demás en el borde de la red. A partir de ahora, solo puedes conectarte vía Tailscale.
Acceder a la UI de control
Desde cualquier dispositivo en tu red Tailscale:
https://openclaw.<tailnet-name>.ts.net/
Reemplaza <tailnet-name> con el nombre de tu tailnet (visible en tailscale status).
No se necesita túnel SSH. Tailscale proporciona:
- Cifrado HTTPS (certificados automáticos)
- Autenticación vía identidad de Tailscale
- Acceso desde cualquier dispositivo en tu tailnet (laptop, teléfono, etc.)
Seguridad: VCN + Tailscale (línea base recomendada)
Con la VCN blindada (solo UDP 41641 abierto) y el Gateway vinculado a loopback, obtienes una fuerte defensa en profundidad: el tráfico público se bloquea en el borde de la red, y el acceso administrativo ocurre sobre tu tailnet.
Esta configuración a menudo elimina la necesidad de reglas adicionales de firewall del host puramente para detener la fuerza bruta SSH desde Internet — pero igualmente deberías mantener el sistema operativo actualizado, ejecutar openclaw security audit y verificar que no estás escuchando accidentalmente en interfaces públicas.
Lo que ya está protegido
| Paso tradicional | ¿Necesario? | Por qué |
|---|---|---|
| Firewall UFW | No | La VCN bloquea antes de que el tráfico llegue a la instancia |
| fail2ban | No | Sin fuerza bruta si el puerto 22 está bloqueado en la VCN |
| Endurecimiento de sshd | No | Tailscale SSH no usa sshd |
| Deshabilitar login root | No | Tailscale usa identidad de Tailscale, no usuarios del sistema |
| Auth solo por clave SSH | No | Tailscale autentica vía tu tailnet |
| Endurecimiento IPv6 | Generalmente no | Depende de la configuración de tu VCN/subnet; verifica qué está realmente asignado/expuesto |
Aún recomendado
- Permisos de credenciales:
chmod 700 ~/.openclaw - Auditoría de seguridad:
openclaw security audit - Actualizaciones del sistema:
sudo apt update && sudo apt upgraderegularmente - Monitorear Tailscale: Revisa dispositivos en la consola de administración de Tailscale
Verificar la postura de seguridad
# Confirmar que no hay puertos públicos escuchando
sudo ss -tlnp | grep -v '127.0.0.1\|::1'
# Verificar que Tailscale SSH está activo
tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active"
# Opcional: deshabilitar sshd por completo
sudo systemctl disable --now ssh
Alternativa: túnel SSH
Si Tailscale Serve no funciona, usa un túnel SSH:
# Desde tu máquina local (vía Tailscale)
ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw
Luego abre http://localhost:18789.
Solución de problemas
La creación de la instancia falla (“Out of capacity”)
Las instancias ARM del nivel gratuito son populares. Prueba:
- Otro dominio de disponibilidad
- Reintentar en horas de baja demanda (temprano en la mañana)
- Usar el filtro “Always Free” al seleccionar el shape
Tailscale no conecta
# Comprobar estado
sudo tailscale status
# Re-autenticar
sudo tailscale up --ssh --hostname=openclaw --reset
El Gateway no arranca
openclaw gateway status
openclaw doctor --non-interactive
journalctl --user -u openclaw-gateway -n 50
No se puede acceder a la UI de control
# Verificar que Tailscale Serve está ejecutándose
tailscale serve status
# Comprobar que el Gateway está escuchando
curl http://localhost:18789
# Reiniciar si es necesario
systemctl --user restart openclaw-gateway
Problemas con binarios ARM
Algunas herramientas pueden no tener builds ARM. Verifica:
uname -m # Debería mostrar aarch64
La mayoría de paquetes npm funcionan bien. Para binarios, busca releases linux-arm64 o aarch64.
Persistencia
Todo el estado se almacena en:
~/.openclaw/— configuración, credenciales, datos de sesión~/.openclaw/workspace/— workspace (SOUL.md, memoria, artefactos)
Haz respaldo periódicamente:
tar -czvf openclaw-backup.tar.gz ~/.openclaw ~/.openclaw/workspace
Ver también
- Acceso remoto al Gateway — otros patrones de acceso remoto
- Integración con Tailscale — documentación completa de Tailscale
- Configuración del Gateway — todas las opciones de configuración
- Guía de DigitalOcean — si prefieres pago + registro más fácil
- Guía de Hetzner — alternativa basada en Docker