Hosting
Oracle Cloud
Ejecuta un Gateway persistente de OpenClaw en el nivel ARM Always Free de Oracle Cloud (hasta 4 OCPU, 24 GB de RAM y 200 GB de almacenamiento) sin costo.
Requisitos previos
- Cuenta de Oracle Cloud (registro); consulta la guía de registro de la comunidad si tienes problemas
- Cuenta de Tailscale (gratuita en tailscale.com)
- Un par de claves SSH
- Unos 30 minutos
Configuración
Crear una instancia de OCI
- Inicia sesión en Oracle Cloud Console.
- Ve 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 gratuitos)
- SSH key: Añade tu clave pública
- Name:
- Haz clic en Create y anota la dirección IP pública.
Conectar y actualizar el sistema
ssh ubuntu@YOUR_PUBLIC_IP sudo apt update && sudo apt upgrade -ysudo apt install -y build-essentialbuild-essential es necesario para compilar algunas dependencias en ARM.
Configurar el usuario y el nombre de host
sudo hostnamectl set-hostname openclawsudo passwd ubuntusudo loginctl enable-linger ubuntuActivar la permanencia mantiene los servicios del usuario en ejecución después de cerrar sesión.
Instalar Tailscale
curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up --ssh --hostname=openclawA partir de ahora, conéctate mediante Tailscale: ssh ubuntu@openclaw.
Instalar OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bashsource ~/.bashrcCuando aparezca "¿Cómo quieres iniciar tu bot?", selecciona Hacerlo más tarde.
Configurar el Gateway
Usa autenticación mediante token con Tailscale Serve para obtener acceso remoto seguro.
openclaw config set gateway.bind loopbackopenclaw config set gateway.auth.mode tokenopenclaw doctor --generate-gateway-tokenopenclaw config set gateway.tailscale.mode serveopenclaw config set gateway.trustedProxies '["127.0.0.1"]' systemctl --user restart openclaw-gateway.serviceAquí, gateway.trustedProxies=["127.0.0.1"] solo se usa para la gestión de IP reenviada y cliente local del proxy local de Tailscale Serve. No equivale a gateway.auth.mode: "trusted-proxy". En esta configuración, las rutas del visor de diferencias mantienen un comportamiento de denegación segura: las solicitudes directas del visor desde 127.0.0.1 sin encabezados reenviados por el proxy devuelven Diff not found. Usa mode=file / mode=both para los archivos adjuntos, o habilita intencionadamente los visores remotos y establece plugins.entries.diffs.config.viewerBaseUrl (o pasa un baseUrl de proxy) si necesitas enlaces compartibles al visor.
Restringir la seguridad de la VCN
Bloquea en el perímetro de la red todo el tráfico excepto el de Tailscale:
- Ve a Networking > Virtual Cloud Networks en OCI Console.
- Haz clic en tu VCN y, después, en Security Lists > Default Security List.
- Elimina todas las reglas de entrada excepto
0.0.0.0/0 UDP 41641(Tailscale). - Conserva 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 perímetro de la red. A partir de este momento, solo puedes conectarte mediante Tailscale.
Verificar
openclaw --versionsystemctl --user status openclaw-gateway.servicetailscale serve statuscurl http://localhost:18789Accede a la interfaz de control desde cualquier dispositivo de tu tailnet:
https://openclaw.<tailnet-name>.ts.net/Sustituye <tailnet-name> por el nombre de tu tailnet (visible en tailscale status).
Verificar la postura de seguridad
Con la VCN restringida (solo está abierto UDP 41641) y el Gateway vinculado a la interfaz local, el tráfico público queda bloqueado en el perímetro de la red y el acceso administrativo se limita a la tailnet. Esto elimina la necesidad de aplicar varias medidas tradicionales de protección de un VPS:
| Medida tradicional | ¿Es necesaria? | Motivo |
|---|---|---|
| Cortafuegos UFW | No | La VCN bloquea el tráfico antes de que llegue a la instancia. |
| fail2ban | No | El puerto 22 está bloqueado en la VCN; no existe una superficie para ataques de fuerza bruta. |
| Protección adicional de sshd | No | SSH de Tailscale no utiliza sshd. |
| Deshabilitar el inicio de sesión de root | No | Tailscale autentica mediante la identidad de la tailnet, no mediante usuarios del sistema. |
| Autenticación solo con claves SSH | No | Lo mismo: la identidad de la tailnet sustituye las claves SSH del sistema. |
| Protección adicional de IPv6 | Normalmente no | Depende de la configuración de la VCN y la subred; verifica qué se ha asignado o expuesto realmente. |
Aun así, se recomienda:
chmod 700 ~/.openclawpara restringir los permisos de los archivos de credenciales.openclaw security auditpara realizar una comprobación de la postura de seguridad específica de OpenClaw.- Ejecutar periódicamente
sudo apt update && sudo apt upgradepara aplicar parches del sistema operativo. - Revisar periódicamente los dispositivos en la consola de administración de Tailscale.
Comandos de verificación rápida:
# Confirm no public ports are listeningsudo ss -tlnp | grep -v '127.0.0.1\|::1' # Verify Tailscale SSH is activetailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active" # Optional: disable sshd entirely once Tailscale SSH is confirmed workingsudo systemctl disable --now sshNotas sobre ARM
El nivel Always Free utiliza ARM (aarch64). La mayoría de las funciones de OpenClaw funcionan correctamente; una pequeña cantidad de binarios nativos requiere compilaciones para ARM:
- Node.js, Telegram y WhatsApp (Baileys): JavaScript puro, sin problemas.
- La mayoría de los paquetes npm con código nativo: disponen de artefactos
linux-arm64precompilados. - Herramientas auxiliares opcionales de la CLI (por ejemplo, binarios de Go/Rust distribuidos mediante Skills): comprueba que exista una versión para
aarch64/linux-arm64antes de instalarlas.
Verifica la arquitectura con uname -m (debería mostrar aarch64). Para los binarios que no tengan una compilación para ARM, instala desde el código fuente u omítelos.
Persistencia y copias de seguridad
El estado de OpenClaw se almacena en:
~/.openclaw/:openclaw.json, archivosauth-profiles.jsonpor agente, estado de canales y proveedores, y datos de sesiones.~/.openclaw/workspace/: el espacio de trabajo del agente (SOUL.md, memoria y artefactos).
Estos datos se conservan tras reiniciar. Para crear una instantánea portátil:
openclaw backup createAlternativa: túnel SSH
Si Tailscale Serve no funciona, utiliza un túnel SSH desde tu equipo local:
ssh -L 18789:127.0.0.1:18789 ubuntu@openclawDespués, 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 con otro dominio de disponibilidad o vuelve a intentarlo durante las horas de menor demanda.
Tailscale no se conecta: ejecuta sudo tailscale up --ssh --hostname=openclaw --reset para volver a autenticarte.
El Gateway no se inicia: ejecuta openclaw doctor --non-interactive y consulta los registros con journalctl --user -u openclaw-gateway.service -n 50.
Problemas con binarios ARM: la mayoría de los paquetes npm funcionan en ARM64. Para los binarios nativos, busca versiones linux-arm64 o aarch64. Verifica la arquitectura con uname -m.
Siguientes pasos
- Canales: conecta Telegram, WhatsApp, Discord y otros servicios
- Configuración del Gateway: todas las opciones de configuración
- Actualización: mantén OpenClaw actualizado