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

Configuración

  • Crear una instancia de OCI

    1. Inicia sesión en Oracle Cloud Console.
    2. Ve a Compute > Instances > Create Instance.
    3. 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
    4. Haz clic en Create y anota la dirección IP pública.
  • Conectar y actualizar el sistema

    bash
    ssh ubuntu@YOUR_PUBLIC_IP sudo apt update && sudo apt upgrade -ysudo apt install -y build-essential

    build-essential es necesario para compilar algunas dependencias en ARM.

  • Configurar el usuario y el nombre de host

    bash
    sudo hostnamectl set-hostname openclawsudo passwd ubuntusudo loginctl enable-linger ubuntu

    Activar la permanencia mantiene los servicios del usuario en ejecución después de cerrar sesión.

  • Instalar Tailscale

    bash
    curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up --ssh --hostname=openclaw

    A partir de ahora, conéctate mediante Tailscale: ssh ubuntu@openclaw.

  • Instalar OpenClaw

    bash
    curl -fsSL https://openclaw.ai/install.sh | bashsource ~/.bashrc

    Cuando 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.

    bash
    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.service

    Aquí, 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:

    1. Ve a Networking > Virtual Cloud Networks en OCI Console.
    2. Haz clic en tu VCN y, después, en Security Lists > Default Security List.
    3. Elimina todas las reglas de entrada excepto 0.0.0.0/0 UDP 41641 (Tailscale).
    4. 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

    bash
    openclaw --versionsystemctl --user status openclaw-gateway.servicetailscale serve statuscurl http://localhost:18789

    Accede a la interfaz de control desde cualquier dispositivo de tu tailnet:

    Code
    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 ~/.openclaw para restringir los permisos de los archivos de credenciales.
    • openclaw security audit para realizar una comprobación de la postura de seguridad específica de OpenClaw.
    • Ejecutar periódicamente sudo apt update && sudo apt upgrade para aplicar parches del sistema operativo.
    • Revisar periódicamente los dispositivos en la consola de administración de Tailscale.

    Comandos de verificación rápida:

    bash
    # 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 ssh

    Notas 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-arm64 precompilados.
    • Herramientas auxiliares opcionales de la CLI (por ejemplo, binarios de Go/Rust distribuidos mediante Skills): comprueba que exista una versión para aarch64 / linux-arm64 antes 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, archivos auth-profiles.json por 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:

    bash
    openclaw backup create

    Alternativa: túnel SSH

    Si Tailscale Serve no funciona, utiliza un túnel SSH desde tu equipo local:

    bash
    ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw

    Despué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

    Contenido relacionado

    Was this useful?
    On this page

    On this page