Тема автономных агентов переживает бурный рост. Возможность делегировать AI не просто генерацию текста, а полноценное выполнение задач — от написания кода до управления сервером — выглядит заманчиво. OpenClaw (ранее известный как Moltbot) к началу 2026 года стал де-факто стандартом в этой индустрии, предоставляя мощный инструментарий для создания цифровых сотрудников.
Однако за удобством скрываются риски. Предоставляя модели доступ к консоли и файловой системе, мы фактически передаем управление “черному ящику”. В этой статье мы разберем подход к развертыванию OpenClaw, который минимизирует риски: использование изолированной среды, контейнеризация и контроль доступа.
Архитектура безопасности: Изоляция превыше всего
Запуск агента на локальной рабочей машине — это всегда риск. Ошибочная интерпретация команды или галлюцинация модели может привести к потере данных. Поэтому один из верных подходов для экспериментов и работы — вынос агента в изолированный контур (Sandbox).
Оптимальная схема развертывания выглядит так:
-
Среда: Выделенный VPS или виртуальная машина (Ubuntu 24.04/25.10).
-
Изоляция: Docker-контейнер с ограниченными правами.
-
Сеть: Strict Firewall (белый список адресов).
-
Мозг: Стабильный API провайдер (VseLLM).
Шаг 1: Подготовка инфраструктуры
Используем чистый образ Ubuntu. Первое действие — настройка сетевого экрана (UFW). Наша задача — закрыть все входящие соединения, которые не являются критически важными.
# Сначала разрешаем SSH, чтобы не потерять доступ!
sudo ufw allow ssh
# Запрещаем все входящие по умолчанию
sudo ufw default deny incoming
# Разрешаем исходящие (агенту нужно качать пакеты и ходить в API)
sudo ufw default allow outgoing
sudo ufw enable
Важное замечание: Web-интерфейс OpenClaw (порт 18789) не должен быть доступен из публичного интернета. Для доступа к нему используйте SSH-туннелирование с вашей локальной машины:
ssh -N -L 18789:127.0.0.1:18789 user@server-ip.
Шаг 2: Контейнеризация через Docker
Мы не будем ставить зависимости в систему. Это создает “dependency hell” и затрудняет обновление. Вместо этого опишем инфраструктуру как код (IaC) через docker-compose.
Создайте файл docker-compose.yml:
version: '3.8'
services:
openclaw:
# Используем последний стабильный образ.
# Если официальный Docker Hub недоступен, используйте ghcr.io/openclaw/openclaw:latest
image: openclaw/openclaw:latest
container_name: openclaw_runner
restart: unless-stopped
# Ограничение ресурсов предотвращает зависание хоста при memory leak
deploy:
resources:
limits:
memory: 4096M
cpus: '2.0'
environment:
- OPENCLAW_HOME=/app/workspace
# Конфигурация LLM
- LLM_PROVIDER=openai
- LLM_BASE_URL=https://api.vsellm.ru/v1
- LLM_API_KEY=${VSELLM_API_KEY}
volumes:
# Монтируем только необходимые директории
- ./workspace:/app/workspace
- ./config:/app/config
# Биндим порт только на loopback интерфейс (localhost)
ports:
- "127.0.0.1:18789:18789"
Такой подход гарантирует, что даже при компрометации агента злоумышленник (или сбойная нейросеть) останется запертым внутри контейнера.
Шаг 3: Подключение LLM через VseLLM
Качество работы агента напрямую зависит от используемой модели. Локальные модели (Llama, Mistral) хороши для простых задач, но для сложного планирования и написания кода требуются флагманы уровня GPT-5 или Claude 4.
Для доступа к этим моделям из России мы используем агрегатор VseLLM. Это решает сразу несколько проблем:
-
Единая точка входа: Один ключ дает доступ к моделям OpenAI, Anthropic и Google.
-
Отсутствие блокировок: Прямое подключение без необходимости настраивать VPN на сервере.
-
Прозрачная тарификация: Оплата ресурсов в рублях по факту использования.
Для читателей этой статьи VseLLM предоставляет стартовый бонус. Это позволит протестировать работу агента на топовых моделях с минимальными вложениями. Регистрация с бонусом (+10%).
Стратегия маршрутизации (Model Routing)
Экономическая эффективность агента достигается правильным подбором моделей. Нет смысла использовать дорогую Claude Opus 4.5 для проверки статуса сервера.
Рекомендуемая конфигурация openclaw.json на 2026 год:
{
"llm": {
"provider": "openai",
"base_url": "https://api.vsellm.ru/v1",
"api_key": "sk-...",
"model": "deepseek/deepseek-v3.2",
"fallback_models": ["openai/gpt-5-nano"]
}
}
Здесь DeepSeek V3.2 выступает в роли основной “рабочей лошадки”. При цене всего 18 ₽ за входной миллион токенов (в 12 раз дешевле Claude Sonnet!) она позволяет агенту работать часами, не разоряя баланс, сохраняя при этом качество кодинга на уровне топовых моделей и огромный контекст. В качестве сверхдешевой подстраховки используется GPT-5 Nano.
Бонус: Скрипт для быстрого старта
Чтобы сэкономить вам время на настройку окружения, файрвола и создание конфигурационных файлов, я подготовил bash-скрипт, который делает всё вышеописанное автоматически.
Создайте на сервере файл setup_openclaw.sh и вставьте в него следующее содержимое:
#!/bin/bash
# Цвета для вывода
GREEN='33[0;32m'
YELLOW='33[1;33m'
RED='33[0;31m'
NC='33[0m'
# Проверка прав root
if [ "$EUID" -ne 0 ]; then
echo -e "${RED}Запустите скрипт через sudo!${NC}"
exit 1
fi
echo -e "${GREEN}[1/6] Установка Docker...${NC}"
if ! command -v docker &> /dev/null; then
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh && rm get-docker.sh
else
echo "Docker уже установлен."
fi
echo -e "${GREEN}[2/6] Настройка UFW (Firewall)...${NC}"
ufw allow ssh
ufw default deny incoming
ufw default allow outgoing
echo "y" | ufw enable
echo -e "${GREEN}[3/6] Создание папок...${NC}"
mkdir -p openclaw/{workspace,config,data}
cd openclaw || exit
echo -e "${YELLOW}Введите API Key от VseLLM (sk-...):${NC}"
read -r API_KEY
echo -e "${GREEN}[4/6] Генерация конфигов...${NC}"
# Docker Compose с дублированием настроек в ENV
cat < docker-compose.yml
services:
openclaw:
image: openclaw/openclaw:latest
container_name: openclaw_runner
restart: unless-stopped
deploy:
resources:
limits:
memory: 4096M
cpus: '2.0'
environment:
- OPENCLAW_HOME=/app/workspace
- LLM_PROVIDER=openai
- LLM_BASE_URL=https://api.vsellm.ru/v1
- LLM_API_KEY=${API_KEY}
- LLM_MODEL=deepseek/deepseek-v3.2
volumes:
- ./config:/app/config
- ./config:/root/.openclaw
- ./workspace:/app/workspace
ports:
- "127.0.0.1:18789:18789"
EOF
# JSON Config (Primary: DeepSeek V3.2, Fallback: GPT-5 Nano)
cat < config/openclaw.json
{
"llm": {
"provider": "openai",
"base_url": "https://api.vsellm.ru/v1",
"api_key": "${API_KEY}",
"model": "deepseek/deepseek-v3.2",
"fallback_models": ["openai/gpt-5-nano"],
"temperature": 0.0
}
}
EOF
echo -e "${GREEN}[5/6] Запуск...${NC}"
docker compose up -d
echo -e "${YELLOW}Ждем инициализации (10 сек)...${NC}"
sleep 10
# Попытка найти токен
TOKEN=$(docker logs openclaw_runner 2>&1 | grep -iE "token|code|login" | tail -n 1)
IP=$(curl -s ifconfig.me || hostname -I | awk '{print $1}')
echo -e "n${GREEN}=== ГОТОВО! ===${NC}"
echo -e "Для входа пробросьте туннель (команда на ВАШЕМ ПК):"
echo -e "${YELLOW}ssh -N -L 18789:127.0.0.1:18789 root@${IP}${NC}"
echo -e "nАдрес в браузере: http://localhost:18789"
if [ -n "$TOKEN" ]; then
echo -e "Ваш токен/код: ${RED}${TOKEN}${NC}"
else
echo -e "Токен не найден. Посмотрите логи: docker logs openclaw_runner"
fi
Запустите установку двумя командами:
chmod +x setup_openclaw.sh
./setup_openclaw.sh
Для корректной работы скрипта не забудьте указать ключ для VseLLM Api, напомню, что по моей ссылке вы получите +10% на первое пополнение.
Развертывание автономного агента — это баланс между функциональностью и безопасностью. Использование облачной инфраструктуры с четким разделением прав, контейнеризацией и надежным API-провайдером позволяет создать мощный инструмент автоматизации, минимизируя риски для основной инфраструктуры.
Помните: агент — это инструмент, а ответственность за его действия всегда лежит на операторе.
Автор: kucev


