Развёртывание OpenClaw на VPS для работы 24/7

Пошаговый гайд по установке OpenClaw на виртуальный сервер: выбор VPS, настройка Ubuntu, Node.js, Docker, systemd, nginx, SSL, файрвол, мониторинг, бэкапы и оценка стоимости.

Aravana··7 мин

Зачем разворачивать OpenClaw на VPS

ОБНОВЛЕНИЕ ВЕРСИИ (июль 2026): Версия v2026.6.9 содержала критические регрессии в модуле памяти, настройке email и переключении моделей. Версия v2026.6.10 исправила CVE-2026-22172 и основные регрессии v2026.6.9, однако содержала нестабильности в дистрибуции плагинов. Версия v2026.6.11 содержала критические регрессии в core: пустой tool output после первого вызова, сбои memory_search, отсутствующий reentrancy guard. Версия v2026.7.1 вышла как стабильная и рекомендуется для production. Минимально безопасная версия (CVE-2026-22172 исправлена): v2026.6.10.

Локальная установка OpenClaw на ноутбук или домашний компьютер имеет ограничение: агент работает только когда компьютер включён и подключён к интернету. Закрыли крышку ноутбука -- агент остановился. Пропал интернет -- автоматизации не выполняются. Для надёжной работы 24/7 нужен сервер, который доступен круглосуточно.

VPS (Virtual Private Server) -- оптимальный вариант. Это виртуальная машина в дата-центре с гарантированным аптаймом, стабильным интернетом и фиксированным IP-адресом. OpenClaw на VPS работает непрерывно: выполняет cron-задания, обрабатывает вебхуки, отвечает на сообщения в Telegram -- даже когда ваш ноутбук выключен.

Выбор VPS-провайдера

OpenClaw не требует мощного сервера -- основная вычислительная нагрузка лежит на LLM-провайдере (OpenAI, Anthropic, Google). Сам агент потребляет минимум ресурсов. Минимальные требования:

CPU: 1-2 ядра. OpenClaw -- однопоточное приложение, одного ядра достаточно для базовой работы. Два ядра -- если планируете мультиагентную систему.

RAM: 4 ГБ минимум (2 ГБ достаточно только для тестов), 8 ГБ рекомендуется. При использовании нескольких каналов (multi-channel) и фоновых cron-задач одновременно 4 ГБ может оказаться мало -- рекомендуем закладывать 8 ГБ для production. Основное потребление -- Node.js runtime и хранение контекста в памяти.

Диск: 20 ГБ SSD. Логи, память агента, конфигурации. SSD обязателен -- OpenClaw активно читает и пишет на диск.

Трафик: 1-2 ТБ в месяц. Запросы к LLM API, вебхуки, Telegram -- всё это текстовый трафик, объём минимальный.

Проверенные провайдеры (ценовой ориентир на июнь 2026):

Hetzner -- от 4 евро/месяц. Минимальный вариант (CX22): 2 vCPU, 4 ГБ RAM, 40 ГБ SSD. Дата-центры в Германии и Финляндии. Рекомендуемый вариант (CX32): 4 vCPU, 8 ГБ RAM, 80 ГБ NVMe, около 7.40 евро/месяц на момент написания. CX32 оптимален для большинства пользователей: 4 ГБ RAM достаточно для базовой работы, но при использовании нескольких каналов (multi-channel) и cron-задач одновременно память может быть исчерпана. CX32 устраняет это ограничение.

DigitalOcean -- от $6/месяц (Basic: 1 vCPU, 1 ГБ RAM, 25 ГБ SSD). Простой интерфейс, хорошая документация.

Contabo -- от 5 евро/месяц. Больше ресурсов за меньшие деньги, но поддержка слабее.

AWS Lightsail -- от $5/месяц. Если вы уже в экосистеме AWS.

Начальная настройка сервера

Шаг 1: Подключение и обновление системы

# Подключение к серверу
ssh root@your-server-ip

# Обновление системы (Ubuntu 24.04 LTS рекомендуется)
apt update && apt upgrade -y

# Установка базовых утилит
apt install -y curl wget git htop ufw fail2ban

Шаг 2: Создание непривилегированного пользователя

Никогда не запускайте OpenClaw от root. Создайте отдельного пользователя:

# Создание пользователя
adduser openclaw
usermod -aG sudo openclaw

# Настройка SSH-ключа для нового пользователя
mkdir -p /home/openclaw/.ssh
cp ~/.ssh/authorized_keys /home/openclaw/.ssh/
chown -R openclaw:openclaw /home/openclaw/.ssh
chmod 700 /home/openclaw/.ssh
chmod 600 /home/openclaw/.ssh/authorized_keys

# Отключение входа по паролю (только SSH-ключи)
sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
systemctl restart sshd

Шаг 3: Установка Node.js

OpenClaw работает на Node.js 24 (рекомендуется, начиная с OpenClaw 2026.5.x) или Node.js 22.19 и выше:

# Установка Node.js 24 LTS через NodeSource
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
apt install -y nodejs

# Проверка версии
node --version  # v24.x.x
npm --version   # 10.x.x

Шаг 4: Установка Docker (опционально)

Docker нужен, если вы планируете запускать навыки в изолированных контейнерах или использовать Docker-версию OpenClaw:

# Установка Docker
curl -fsSL https://get.docker.com | sh
usermod -aG docker openclaw

# Проверка
docker --version
docker run hello-world

Установка OpenClaw

# Переключаемся на пользователя openclaw
su - openclaw

# Установка OpenClaw глобально
npm install -g @openclaw/core @openclaw/cli

# Проверка установки
openclaw --version

# Инициализация проекта
mkdir ~/openclaw-agent && cd ~/openclaw-agent
openclaw init

# Структура после инициализации:
# ~/openclaw-agent/
#   config.yaml      -- основная конфигурация
#   SOUL.md           -- поведение агента
#   USER.md           -- информация о пользователе
#   skills/           -- установленные навыки
#   memory/           -- база памяти
#   logs/             -- логи

Конфигурация

# config.yaml
agent:
  name: "my-assistant"
  model: "claude-sonnet-4-6"  # или другая модель
  
server:
  host: "127.0.0.1"  # ТОЛЬКО localhost
  port: 18789
  
llm:
  provider: "anthropic"
  api_key: "${ANTHROPIC_API_KEY}"
  
telegram:
  enabled: true
  token: "${TELEGRAM_BOT_TOKEN}"
  allowed_users: [123456789]  # ваш Telegram ID
  
memory:
  path: "./memory"
  
logging:
  level: "info"
  file: "./logs/agent.log"
  max_size: "100M"
  retention: "30d"

Запуск как systemd-сервис

Systemd обеспечивает автоматический запуск OpenClaw при загрузке сервера, перезапуск при падении и управление логами:

# Создание systemd unit-файла
sudo tee /etc/systemd/system/openclaw.service << 'EOF'
[Unit]
Description=OpenClaw AI Agent
After=network.target

[Service]
Type=simple
User=openclaw
Group=openclaw
WorkingDirectory=/home/openclaw/openclaw-agent
ExecStart=/usr/bin/node /usr/lib/node_modules/@openclaw/core/server.js
Restart=always
RestartSec=10
Environment=NODE_ENV=production
EnvironmentFile=/home/openclaw/.env

# Лимиты ресурсов
LimitNOFILE=65536
MemoryMax=2G
CPUQuota=150%

# Безопасность
NoNewPrivileges=true
ProtectSystem=strict
ProtectHome=read-only
ReadWritePaths=/home/openclaw/openclaw-agent
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF

# Активация и запуск
sudo systemctl daemon-reload
sudo systemctl enable openclaw
sudo systemctl start openclaw

# Проверка статуса
sudo systemctl status openclaw

Файл переменных окружения

# /home/openclaw/.env
ANTHROPIC_API_KEY=sk-ant-...
TELEGRAM_BOT_TOKEN=...
OPENAI_API_KEY=sk-...
GITHUB_TOKEN=ghp_...
HA_TOKEN=...

# Защита файла
chmod 600 /home/openclaw/.env
chown openclaw:openclaw /home/openclaw/.env

Обратный прокси с nginx

Nginx нужен, если вы хотите принимать вебхуки от внешних сервисов (GitHub, Stripe, Telegram). Nginx обрабатывает SSL, проксирует запросы к OpenClaw и обеспечивает дополнительный уровень безопасности:

# Установка nginx
sudo apt install -y nginx

# Конфигурация
sudo tee /etc/nginx/sites-available/openclaw << 'EOF'
server {
    listen 80;
    server_name openclaw.your-domain.com;
    
    # Редирект на HTTPS (после настройки SSL)
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name openclaw.your-domain.com;
    
    # SSL-сертификаты (Let's Encrypt)
    ssl_certificate /etc/letsencrypt/live/openclaw.your-domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/openclaw.your-domain.com/privkey.pem;
    
    # Безопасные SSL-настройки
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    
    # Ограничение доступа к вебхукам
    location /webhook/ {
        proxy_pass http://127.0.0.1:18789;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # Лимит запросов
        limit_req zone=webhooks burst=10 nodelay;
    }
    
    # Блокируем всё остальное
    location / {
        return 403;
    }
}
EOF

# Активация
sudo ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

SSL/TLS с Let's Encrypt

Бесплатные SSL-сертификаты от Let's Encrypt -- стандарт для серверов:

# Установка Certbot
sudo apt install -y certbot python3-certbot-nginx

# Получение сертификата
sudo certbot --nginx -d openclaw.your-domain.com

# Автообновление (certbot добавляет cron автоматически)
sudo certbot renew --dry-run  # проверка

Настройка файрвола

# Базовая настройка ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Разрешить SSH
sudo ufw allow 22/tcp

# Разрешить HTTP и HTTPS (для nginx)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# НЕ открывать порт 18789 -- OpenClaw доступен только через nginx

# Активация
sudo ufw enable
sudo ufw status verbose

Дополнительно настройте fail2ban для защиты от брутфорс-атак на SSH:

# fail2ban уже установлен, настроим jail для SSH
sudo tee /etc/fail2ban/jail.local << 'EOF'
[sshd]
enabled = true
port = 22
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
findtime = 600
EOF

sudo systemctl restart fail2ban

Мониторинг и логи

Просмотр логов

# Логи systemd
sudo journalctl -u openclaw -f  # в реальном времени
sudo journalctl -u openclaw --since "1 hour ago"  # за последний час

# Логи приложения
tail -f /home/openclaw/openclaw-agent/logs/agent.log

# Логи nginx
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

Мониторинг ресурсов

Настройте простой мониторинг, который уведомит вас в Telegram, если сервер перегружен:

# /home/openclaw/scripts/health-check.sh
#!/bin/bash

CPU=$(top -bn1 | grep 'Cpu(s)' | awk '{print $2}')
MEM=$(free | awk '/Mem:/ {printf "%.1f", $3/$2 * 100}')
DISK=$(df -h / | awk 'NR==2 {print $5}' | tr -d '%')

ALERT=""

if (( $(echo "$CPU > 80" | bc -l) )); then
  ALERT+="CPU: ${CPU}%\n"
fi

if (( $(echo "$MEM > 85" | bc -l) )); then
  ALERT+="RAM: ${MEM}%\n"
fi

if [ "$DISK" -gt 90 ]; then
  ALERT+="Disk: ${DISK}%\n"
fi

# Проверка, что OpenClaw запущен
if ! systemctl is-active --quiet openclaw; then
  ALERT+="OpenClaw is DOWN!\n"
fi

if [ -n "$ALERT" ]; then
  curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
    -d chat_id="YOUR_CHAT_ID" \
    -d text="Server Alert:\n${ALERT}"
fi
# Добавление в cron (каждые 5 минут)
crontab -e
# Добавить строку:
*/5 * * * * /home/openclaw/scripts/health-check.sh

Автоматический перезапуск при падении

Systemd уже настроен на автоматический перезапуск (Restart=always в unit-файле). Если процесс OpenClaw падает, systemd перезапустит его через 10 секунд (RestartSec=10). Но стоит добавить watchdog-проверку:

# /home/openclaw/scripts/watchdog.sh
#!/bin/bash

# Проверяем, что OpenClaw отвечает
HTTP_CODE=$(curl -s -o /dev/null -w '%{http_code}' http://127.0.0.1:18789/health)

if [ "$HTTP_CODE" != "200" ]; then
  echo "$(date): OpenClaw health check failed (HTTP $HTTP_CODE), restarting..." \
    >> /home/openclaw/openclaw-agent/logs/watchdog.log
  sudo systemctl restart openclaw
fi

# Cron: каждые 2 минуты
# */2 * * * * /home/openclaw/scripts/watchdog.sh

Стратегия бэкапов

Критически важно бэкапить память агента и конфигурации. Без бэкапов потеря сервера означает потерю всей истории взаимодействий и настроек.

# /home/openclaw/scripts/backup.sh
#!/bin/bash

DATE=$(date +%Y%m%d)
BACKUP_DIR="/home/openclaw/backups"

mkdir -p $BACKUP_DIR

# Бэкап памяти, конфигов и SOUL.md
tar -czf $BACKUP_DIR/openclaw-$DATE.tar.gz \
  /home/openclaw/openclaw-agent/memory/ \
  /home/openclaw/openclaw-agent/config.yaml \
  /home/openclaw/openclaw-agent/SOUL.md \
  /home/openclaw/openclaw-agent/USER.md \
  /home/openclaw/openclaw-agent/skills/

# Удаление бэкапов старше 30 дней
find $BACKUP_DIR -name '*.tar.gz' -mtime +30 -delete

# Опционально: копирование на внешнее хранилище
# rclone copy $BACKUP_DIR/openclaw-$DATE.tar.gz remote:backups/openclaw/

echo "$(date): Backup completed" >> $BACKUP_DIR/backup.log

# Cron: ежедневно в 3:00
# 0 3 * * * /home/openclaw/scripts/backup.sh

Оценка стоимости

Итоговая стоимость работы OpenClaw на VPS складывается из двух компонентов: аренда сервера и расходы на LLM API.

Аренда VPS: $4-12 в месяц в зависимости от провайдера и конфигурации. Для одного агента достаточно самого дешёвого тарифа. Для мультиагентной системы (4-5 агентов) -- средний тариф.

LLM API: стоимость зависит от интенсивности использования и выбранной модели. Актуальные тарифы на токены смотрите на странице провайдера на момент использования: console.anthropic.com (Anthropic), platform.openai.com (OpenAI). Стоимость меняется - не полагайтесь на устаревшие числа.

Домен и SSL: домен -- $10-15 в год. SSL от Let's Encrypt -- бесплатно.

Итого: минимальная конфигурация (VPS + умеренное использование API) -- $35-50 в месяц. Продвинутая (мощный VPS + интенсивное использование) -- $100-350 в месяц.

Усиление безопасности для продакшена

# Дополнительные меры безопасности

# 1. Автоматические обновления безопасности
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

# 2. Смена порта SSH (опционально)
sudo sed -i 's/#Port 22/Port 2222/' /etc/ssh/sshd_config
sudo ufw allow 2222/tcp
sudo ufw delete allow 22/tcp
sudo systemctl restart sshd

# 3. Ограничение sudo
echo 'openclaw ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart openclaw, /usr/bin/systemctl status openclaw' \
  | sudo tee /etc/sudoers.d/openclaw

# 4. Аудит-лог всех команд
sudo apt install -y auditd
sudo auditctl -a always,exit -F arch=b64 -S execve -F uid=1001 -k openclaw-commands

Чеклист перед запуском

Перед тем как считать деплой завершённым, пройдите по контрольному списку:

Безопасность: SSH только по ключам. Пароль отключён. fail2ban настроен. ufw активен. OpenClaw привязан к 127.0.0.1. Порт 18789 закрыт снаружи. Секреты в .env с правами 600. OpenClaw запущен от непривилегированного пользователя.

Надёжность: systemd с автоперезапуском. Watchdog-скрипт. Бэкапы по расписанию. Мониторинг с алертами в Telegram.

Доступность: nginx настроен. SSL-сертификат получен. Вебхуки принимаются. Telegram-бот отвечает.

Итоги

Развёртывание OpenClaw на VPS -- это одноразовая процедура, которая занимает 1-2 часа. После настройки сервер работает автономно: агент отвечает на сообщения, выполняет автоматизации и обрабатывает вебхуки 24/7. Стоимость -- от $35 в месяц. Главное -- не пренебрегать безопасностью: закрыть порты, настроить файрвол, использовать непривилегированного пользователя и хранить секреты в переменных окружения.

СРОЧНО: любая версия OpenClaw до v2026.6.10, развёрнутая на VPS с публичным доступом, является критически уязвимой. CVE-2026-22172 (CVSS 9.9) позволяет получить admin-доступ через публичный IP без авторизации. Версия v2026.6.10 исправила CVE-2026-22172. Рекомендуемая версия: v2026.7.1. Обновление: 'openclaw update --to 2026.7.1'.

Обязательная настройка DOCKER-USER firewall после обновления. Добавьте правила iptables через DOCKER-USER цепочку (не INPUT - Docker её обходит). Пример: 'iptables -I DOCKER-USER -i ext_if ! -s trusted_ip -j DROP'. Без этого правила любой внешний хост может взаимодействовать с агентом.

Команды обновления для VPS-развёртывания: 1) 'openclaw update --check' проверяет наличие обновлений, 2) 'openclaw update --to 2026.4.5' устанавливает конкретную версию, 3) 'openclaw security status' подтверждает, что eBPF-защита активна. После обновления перезапустите агента: 'systemctl restart openclaw'.

Важно: Node.js 24

Инструкция по установке обновлена для Node.js 24. Используйте setup_24.x (а не setup_22.x или setup_20.x) при настройке репозитория NodeSource. Проверьте версию после установки: node --version должен показать v24.x.x. Если на VPS уже установлен Node.js 20, выполните обновление перед установкой OpenClaw.

Не используйте тег :latest. В продакшн всегда указывайте конкретную версию: openclaw:v2026.7.1. Минимально безопасная версия (CVE-2026-22172 исправлена): v2026.6.10. Рекомендуемая stable-версия: v2026.7.1. Добавьте eBPF-мониторинг и DOCKER-USER правила брандмауэра.

Обновления для VPS-развёртывания (v2026.6.x)

v2026.6.5 -- CLI runtime recovery: значительно улучшена устойчивость CLI к сбоям сети и нестабильным соединениям. При потере соединения с LLM-провайдером OpenClaw теперь автоматически восстанавливается без перезапуска systemd-сервиса. Это особенно важно для круглосуточного VPS-развёртывания.

Windows VPS (v2026.6.1): если ваш VPS работает под управлением Windows Server, OpenClaw теперь поддерживает Microsoft Execution Containers для изоляции агентов. Это обеспечивает тот же уровень безопасности, что Docker-контейнеры на Linux, без необходимости устанавливать дополнительный runtime.

Минимальные требования для VPS:

  • Node.js 22.19 или выше (рекомендуется Node.js 24)
  • OpenClaw v2026.6.8 -- минимальная безопасная версия
  • Ubuntu 24.04 LTS рекомендуется как ОС для Linux VPS

Команда обновления: npm install -g openclaw@2026.6.8 или для Docker: docker pull ghcr.io/openclaw/openclaw:2026.6.8

CLI runtime recovery (v2026.6.5+)

CLI runtime recovery - функция, добавленная в v2026.6.5 и улучшенная в v2026.6.8. При потере соединения с LLM-провайдером (сетевые ошибки, таймауты, временная недоступность API) OpenClaw автоматически восстанавливает соединение без необходимости перезапуска systemd-сервиса. Это особенно важно для VPS-развёртываний с нестабильным интернет-соединением или при использовании провайдеров с периодическими перегрузками.

CLI runtime recovery работает автоматически - дополнительная настройка не требуется начиная с v2026.6.5. Для мониторинга попыток восстановления проверяйте логи: sudo journalctl -u openclaw -f | grep 'runtime recovery'

Рекомендуемая версия для VPS: v2026.7.1 (июль 2026)

Рекомендованная версия для production-развёртывания на VPS -- v2026.7.1. Версия v2026.7.1 устраняет регрессии, присутствовавшие в v2026.6.11 (пустой tool output, сбои memory_search, отсутствующий reentrancy guard), а также нестабильности дистрибуции плагинов из v2026.6.10. Обновление: npm install -g openclaw@2026.7.1. Версия v2026.7.1 включает все исправления безопасности CVE-2026-22172.

Этот материал подготовлен командой AI-агентов AravanaAI и проверен главным редактором.

Стабильная версия для VPS-развёртывания: v2026.7.1

Для production-развёртывания на VPS используйте v2026.7.1. Зафиксируйте версию в вашем docker-compose.yml или systemd-конфигурации, указав тег `openclaw/openclaw:v2026.7.1` вместо `latest`. Это защитит от случайного обновления через `docker pull`. Версия v2026.7.1 исправляет все критические регрессии предыдущих релизов и является рекомендованной для production на момент написания.

Настройте мониторинг доступности: healthcheck-эндпоинт OpenClaw доступен по `/api/health`. Если сервис не отвечает в течение 30 секунд, настройте автоматический перезапуск через `docker-compose restart` или systemd `Restart=on-failure`. Логи агентных сессий храните в отдельном volume для упрощения диагностики.

Перед обновлением до любой новой версии: создайте снапшот конфигурации (`~/.openclaw/`), проверьте changelog на наличие breaking changes и протестируйте на staging-сервере. Обновления в production рекомендуется проводить в нерабочее время.

История версий v2026.6.x: Версия v2026.6.10 содержала регрессии в механизме дистрибуции плагинов. Версия v2026.6.11, выпущенная для их устранения, содержала более серьёзные проблемы в core: пустой tool output после первого вызова, сбои memory_search, отсутствующий reentrancy guard. Версия v2026.7.1 устраняет все перечисленные проблемы и является текущей рекомендуемой версией для production-развёртывания.

Этот материал подготовлен командой AI-агентов AravanaAI и проверен главным редактором.

Тип материала: research

Поделиться:TelegramXLinkedIn
Как вам материал?

Читайте также

Хотите получать подобные материалы раньше?

Aravana Intelligence — авторская аналитика и закрытый круг для тех, кто думает на шаг вперёд.

Узнать про Intelligence

Не пропускайте важное

Еженедельный дайджест Aravana — ключевые события в AI, робототехнике и longevity.

Похожие материалы

GPT-Live-1: как пользоваться новым голосовым AI от OpenAI

GPT-Live-1 вышел 8 июля 2026 года. Это принципиально новая full-duplex голосовая модель, которая слышит и говорит одновременно. Полный гайд: подключение, сценарии, цены.

·7 мин

MAI-Voice-2: как использовать новую голосовую модель Microsoft

MAI-Voice-2 вышел в июне 2026 года в составе Build 2026. TTS с клонированием голоса за 5 секунд, 17 языков включая русский. Полный гайд по подключению и использованию.

·7 мин

Llama 5: как запустить флагман Meta локально

Meta Llama 5 вышел в апреле 2026 года -- новый флагман open-weight AI от Meta, 600B+ параметров, контекст 5 миллионов токенов. Полный гайд по локальному запуску через Ollama и требованиям к железу.

·7 мин