OpenClaw на Oracle Cloud (OCI)

Цель

Запуск постоянного OpenClaw Gateway на Always Free уровне ARM Oracle Cloud.

Бесплатный уровень Oracle может отлично подойти для OpenClaw (особенно если у вас уже есть аккаунт OCI), но имеет компромиссы:

  • Архитектура ARM (большинство вещей работает, но некоторые бинарники могут быть только x86)
  • Мощность и регистрация могут быть капризными

Сравнение стоимости (2026)

ПровайдерПланХарактеристикиЦена/месПримечания
Oracle CloudAlways Free ARMдо 4 OCPU, 24GB RAM$0ARM, ограниченная мощность
HetznerCX222 vCPU, 4GB RAM~ $4Самый дешевый платный вариант
DigitalOceanBasic1 vCPU, 1GB RAM$6Простой UI, хорошая документация
VultrCloud Compute1 vCPU, 1GB RAM$6Множество локаций
LinodeNanode1 vCPU, 1GB RAM$5Теперь часть Akamai

Предварительные требования

1) Создание инстанса OCI

  1. Войдите в консоль Oracle Cloud
  2. Перейдите в Compute → Instances → Create Instance
  3. Настройте:
    • Name: openclaw
    • Image: Ubuntu 24.04 (aarch64)
    • Shape: VM.Standard.A1.Flex (Ampere ARM)
    • OCPUs: 2 (или до 4)
    • Memory: 12 GB (или до 24 GB)
    • Boot volume: 50 GB (до 200 GB бесплатно)
    • SSH key: Добавьте свой публичный ключ
  4. Нажмите Create
  5. Запишите публичный IP-адрес

Совет: Если создание инстанса не удается с "Out of capacity", попробуйте другой availability domain или повторите позже. Мощность бесплатного уровня ограничена.

2) Подключение и обновление

# Подключитесь через публичный IP
ssh ubuntu@YOUR_PUBLIC_IP

# Обновите систему
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential

Примечание: build-essential требуется для ARM-компиляции некоторых зависимостей.

3) Настройка пользователя и hostname

# Установите hostname
sudo hostnamectl set-hostname openclaw

# Установите пароль для пользователя ubuntu
sudo passwd ubuntu

# Включите lingering (сохраняет работу пользовательских сервисов после выхода)
sudo loginctl enable-linger ubuntu

4) Установка Tailscale

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

Это включает Tailscale SSH, поэтому вы можете подключаться через ssh openclaw с любого устройства в вашей tailnet — публичный IP не нужен.

Проверка:

tailscale status

С этого момента подключайтесь через Tailscale: ssh ubuntu@openclaw (или используйте IP Tailscale).

5) Установка OpenClaw

curl -fsSL https://openclaw.bot/install.sh | bash
source ~/.bashrc

Когда спросят "How do you want to hatch your bot?", выберите "Do this later".

Примечание: Если возникнут проблемы с ARM-нативной сборкой, начните с системных пакетов (например, sudo apt install -y build-essential) перед обращением к Homebrew.

6) Настройка Gateway (loopback + token auth) и включение Tailscale Serve

Используйте token auth как по умолчанию. Это предсказуемо и избегает необходимости каких-либо флагов "небезопасной аутентификации" Control UI.

# Держите Gateway приватным на VM
openclaw config set gateway.bind loopback

# Требуйте аутентификацию для Gateway + Control UI
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token

# Предоставьте через Tailscale Serve (HTTPS + доступ к tailnet)
openclaw config set gateway.tailscale.mode serve
openclaw config set gateway.trustedProxies '["127.0.0.1"]'

systemctl --user restart openclaw-gateway

7) Проверка

# Проверьте версию
openclaw --version

# Проверьте статус демона
systemctl --user status openclaw-gateway

# Проверьте Tailscale Serve
tailscale serve status

# Проверьте локальный ответ
curl http://localhost:18789

8) Блокировка безопасности VCN

Теперь, когда все работает, заблокируйте VCN, чтобы блокировать весь трафик, кроме Tailscale. VCN Oracle Cloud действует как межсетевой экран на краю сети — трафик блокируется до того, как достигнет вашего инстанса.

  1. Перейдите в Networking → Virtual Cloud Networks в консоли OCI
  2. Нажмите на ваш VCN → Security Lists → Default Security List
  3. Удалите все правила входа, кроме:
    • 0.0.0.0/0 UDP 41641 (Tailscale)
  4. Сохраните правила выхода по умолчанию (разрешить все исходящие)

Это блокирует SSH на порту 22, HTTP, HTTPS и все остальное на краю сети. С этого момента вы можете подключаться только через Tailscale.


Доступ к Control UI

С любого устройства в вашей сети Tailscale:

https://openclaw.<tailnet-name>.ts.net/

Замените <tailnet-name> на имя вашей tailnet (видно в tailscale status).

SSH-туннель не нужен. Tailscale предоставляет:

  • Шифрование HTTPS (автоматические сертификаты)
  • Аутентификацию через идентификацию Tailscale
  • Доступ с любого устройства в вашей tailnet (ноутбук, телефон и т.д.)

Безопасность: VCN + Tailscale (рекомендуемая базовая линия)

С заблокированным VCN (открыт только UDP 41641) и Gateway, привязанным к loopback, вы получаете сильную глубинную защиту: публичный трафик блокируется на краю сети, а административный доступ происходит через вашу tailnet.

Эта настройка часто устраняет необходимость в дополнительных правилах межсетевого экрана на уровне хоста исключительно для остановки SSH-атак методом перебора из Интернета — но вы все равно должны держать ОС обновленной, запускать openclaw security audit и проверять, что вы случайно не слушаете на публичных интерфейсах.

Что уже защищено

Традиционный шагНужен?Почему
Межсетевой экран UFWНетVCN блокирует до того, как трафик достигнет инстанса
fail2banНетНет перебора, если порт 22 заблокирован в VCN
Усиление sshdНетTailscale SSH не использует sshd
Отключить вход rootНетTailscale использует идентификацию Tailscale, а не системных пользователей
Аутентификация только по SSH-ключуНетTailscale аутентифицируется через вашу tailnet
Усиление IPv6Обычно нетЗависит от настроек вашего VCN/подсети; проверьте, что фактически назначено/предоставлено

Все еще рекомендуется

  • Разрешения учетных данных: chmod 700 ~/.openclaw
  • Аудит безопасности: openclaw security audit
  • Обновления системы: sudo apt update && sudo apt upgrade регулярно
  • Мониторинг Tailscale: Проверяйте устройства в консоли администратора Tailscale

Проверка состояния безопасности

# Убедитесь, что нет публичных портов, слушающих
sudo ss -tlnp | grep -v '127.0.0.1\|::1'

# Проверьте, что Tailscale SSH активен
tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH активен"

# Опционально: полностью отключите sshd
sudo systemctl disable --now ssh

Запасной вариант: SSH-туннель

Если Tailscale Serve не работает, используйте SSH-туннель:

# С вашей локальной машины (через Tailscale)
ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw

Затем откройте http://localhost:18789.


Устранение неполадок

Создание инстанса не удается ("Out of capacity")

Инстансы ARM бесплатного уровня популярны. Попробуйте:

  • Другой availability domain
  • Повторить в непиковые часы (раннее утро)
  • Использовать фильтр "Always Free" при выборе формы

Tailscale не подключается

# Проверьте статус
sudo tailscale status

# Повторная аутентификация
sudo tailscale up --ssh --hostname=openclaw --reset

Gateway не запускается

openclaw gateway status
openclaw doctor --non-interactive
journalctl --user -u openclaw-gateway -n 50

Не удается достичь Control UI

# Проверьте, что Tailscale Serve работает
tailscale serve status

# Проверьте, что gateway слушает
curl http://localhost:18789

# Перезапустите при необходимости
systemctl --user restart openclaw-gateway

Проблемы с ARM-бинарниками

Некоторые инструменты могут не иметь ARM-сборок. Проверьте:

uname -m  # Должно показать aarch64

Большинство npm-пакетов работают нормально. Для бинарников ищите релизы linux-arm64 или aarch64.


Постоянство

Все состояние находится в:

  • ~/.openclaw/ — конфиг, учетные данные, данные сессии
  • ~/.openclaw/workspace/ — рабочее пространство (SOUL.md, память, артефакты)

Периодически создавайте резервные копии:

tar -czvf openclaw-backup.tar.gz ~/.openclaw ~/.openclaw/workspace

См. также