Ansible
Рекомендуемый способ развертывания OpenClaw на production-серверах — с помощью openclaw-ansible — автоматического установщика с архитектурой, ориентированной на безопасность.
Быстрый старт
Установка одной командой:
curl -fsSL https://raw.githubusercontent.com/openclaw/openclaw-ansible/main/install.sh | bash
📦 Полное руководство: github.com/openclaw/openclaw-ansible Репозиторий openclaw-ansible является основным источником информации по развертыванию с помощью Ansible. Эта страница — краткий обзор.
Что вы получаете
- 🔒 Безопасность на основе фаервола: UFW + изоляция Docker (доступны только SSH + Tailscale)
- 🔐 Tailscale VPN: Безопасный удаленный доступ без публичного открытия сервисов
- 🐳 Docker: Изолированные контейнеры-песочницы, привязка только к localhost
- 🛡️ Защита в глубину: 4-уровневая архитектура безопасности
- 🚀 Настройка одной командой: Полное развертывание за минуты
- 🔧 Интеграция с Systemd: Автозапуск при загрузке с усилением безопасности
Требования
- ОС: Debian 11+ или Ubuntu 20.04+
- Доступ: Привилегии root или sudo
- Сеть: Подключение к интернету для установки пакетов
- Ansible: 2.14+ (устанавливается автоматически скриптом быстрого старта)
Что устанавливается
Плейбук Ansible устанавливает и настраивает:
- Tailscale (mesh VPN для безопасного удаленного доступа)
- Фаервол UFW (только порты SSH + Tailscale)
- Docker CE + Compose V2 (для песочниц агентов)
- Node.js 22.x + pnpm (зависимости среды выполнения)
- OpenClaw (работает на хосте, не в контейнере)
- Сервис Systemd (автозапуск с усилением безопасности)
Примечание: Шлюз работает напрямую на хосте (не в Docker), но песочницы агентов используют Docker для изоляции. Подробности см. в разделе Песочницы.
Настройка после установки
После завершения установки переключитесь на пользователя openclaw:
sudo -i -u openclaw
Скрипт пост-установки проведет вас через:
- Мастер настройки: Конфигурация параметров OpenClaw
- Вход в провайдер: Подключение WhatsApp/Telegram/Discord/Signal
- Тестирование шлюза: Проверка установки
- Настройка Tailscale: Подключение к вашей VPN-сети
Быстрые команды
# Проверить статус сервиса
sudo systemctl status openclaw
# Просмотр логов в реальном времени
sudo journalctl -u openclaw -f
# Перезапустить шлюз
sudo systemctl restart openclaw
# Вход в провайдер (запускать от пользователя openclaw)
sudo -i -u openclaw
openclaw channels login
Архитектура безопасности
4-уровневая защита
- Фаервол (UFW): Публично открыты только SSH (22) + Tailscale (41641/udp)
- VPN (Tailscale): Шлюз доступен только через VPN-сеть
- Изоляция Docker: Цепочка iptables DOCKER-USER предотвращает открытие портов наружу
- Усиление Systemd: NoNewPrivileges, PrivateTmp, непривилегированный пользователь
Проверка
Протестируйте внешнюю поверхность атаки:
nmap -p- YOUR_SERVER_IP
Должен показывать только порт 22 (SSH) открытым. Все остальные сервисы (шлюз, Docker) заблокированы.
Доступность Docker
Docker установлен для песочниц агентов (изолированное выполнение инструментов), а не для запуска самого шлюза. Шлюз привязывается только к localhost и доступен через VPN Tailscale. См. Песочница для мульти-агентов и инструменты для конфигурации песочницы.
Ручная установка
Если вы предпочитаете ручной контроль над автоматизацией:
# 1. Установите необходимые компоненты
sudo apt update && sudo apt install -y ansible git
# 2. Клонируйте репозиторий
git clone https://github.com/openclaw/openclaw-ansible.git
cd openclaw-ansible
# 3. Установите коллекции Ansible
ansible-galaxy collection install -r requirements.yml
# 4. Запустите плейбук
./run-playbook.sh
# Или запустите напрямую (затем вручную выполните /tmp/openclaw-setup.sh)
# ansible-playbook playbook.yml --ask-become-pass
Обновление OpenClaw
Установщик Ansible настраивает OpenClaw для ручного обновления. См. Обновление для стандартного процесса обновления. Чтобы повторно запустить плейбук Ansible (например, для изменения конфигурации):
cd openclaw-ansible
./run-playbook.sh
Примечание: Это идемпотентная операция, её можно безопасно запускать многократно.
Устранение неполадок
Фаервол блокирует подключение
Если вы заблокированы:
- Убедитесь, что сначала у вас есть доступ через VPN Tailscale
- Доступ по SSH (порт 22) всегда разрешен
- Шлюз только доступен через Tailscale по замыслу
Сервис не запускается
# Проверить логи
sudo journalctl -u openclaw -n 100
# Проверить права доступа
sudo ls -la /opt/openclaw
# Протестировать ручной запуск
sudo -i -u openclaw
cd ~/openclaw
pnpm start
Проблемы с песочницей Docker
# Проверить, что Docker запущен
sudo systemctl status docker
# Проверить образ песочницы
sudo docker images | grep openclaw-sandbox
# Собрать образ песочницы, если отсутствует
cd /opt/openclaw/openclaw
sudo -u openclaw ./scripts/sandbox-setup.sh
Не удается войти в провайдер
Убедитесь, что вы работаете от пользователя openclaw:
sudo -i -u openclaw
openclaw channels login
Расширенная конфигурация
Подробная архитектура безопасности и устранение неполадок:
Связанное
- openclaw-ansible — полное руководство по развертыванию
- Docker — настройка шлюза в контейнере
- Песочницы — конфигурация песочниц агентов
- Песочница для мульти-агентов и инструменты — изоляция для каждого агента