Security - Neotask by Neotask Documentation | Neotask

Безопасность

Обзор

Open Claw разработан с архитектурой, ориентированной на безопасность. Gateway по умолчанию привязывается к localhost, все чувствительные данные шифруются в состоянии покоя, а выполнение команд агентов может быть изолировано в контейнерах-sandbox.

Сетевая безопасность

Только loopback по умолчанию

Gateway прослушивает только 127.0.0.1 (localhost), если только вы явно не измените режим привязки. По умолчанию нет внешнего сетевого доступа.

Аутентификация

Все WebSocket-соединения требуют аутентификации:

  • Аутентификация по токену — Bearer-токен (UUID или пользовательская строка)
  • Аутентификация по паролю — пароль, хешированный bcrypt
  • Доверенный прокси — предварительно аутентифицированные заголовки от обратных прокси
  • Локальное доверие — loopback-соединения неявно доверенные
  • Безопасность удалённого доступа

    Для удалённого доступа рекомендуемый подход — Tailscale VPN или SSH-туннелирование — никогда не открывайте Gateway напрямую в интернет.

    Сопряжение устройств

    Как работает сопряжение

    Каждый клиент, подключающийся к Gateway, должен быть сопряжён:

  • Устройство представляет свою идентичность (отпечаток + публичный ключ)
  • Gateway выдаёт запрос сопряжения (nonce)
  • Устройство подписывает nonce своим приватным ключом
  • Вы подтверждаете устройство через UI
  • Gateway выдаёт токен устройства для будущих соединений
  • Модель доверия

  • Локальные устройства (loopback) автоматически одобряются для удобства
  • Нелокальные устройства требуют явного подтверждения
  • Токены устройств хранятся локально и повторно используются при переподключении
  • Устройства можно отозвать в любое время
  • Шифрование

    Данные в состоянии покоя

  • AES-256-GCM — все токены, секреты и ключи API шифруются в состоянии покоя
  • Ключи, производные от машины — ключи шифрования производятся через scrypt из идентичности устройства
  • Нет хранения в открытом виде — токены никогда не хранятся в открытом виде
  • Данные в транзите

  • TLS — HTTPS для API-коммуникации
  • WSS — безопасный WebSocket для подключений к Gateway (при использовании Tailscale Serve или обратного прокси)
  • HMAC-подписание — целостность запросов с nonce и меткой времени
  • Изоляция в sandbox

    Изоляция на основе Docker

    Выполнение команд агентов может быть изолировано в Docker-контейнерах:

  • Профили на уровне агента — каждый агент может иметь собственную конфигурацию sandbox
  • Ограничения ресурсов — настраиваемые лимиты CPU, памяти и таймаутов
  • Сетевая изоляция — контейнеры могут быть изолированы от сети
  • Ограничение файловой системы — агенты получают доступ только к своему рабочему пространству
  • Пользовательские образы — использование предсобранных образов с установленными конкретными инструментами
  • Области действия sandbox

    | Область | Описание | |-------|-------------| | На сессию | Новый контейнер для каждой сессии | | На агента | Постоянный контейнер для каждого агента | | Общий | Общий контейнер для всех агентов |

    Доступ к рабочему пространству

    Агенты в sandbox могут получать доступ к своей директории рабочего пространства (смонтированной в контейнер), но не могут получать доступ к файловой системе хоста за пределами своего рабочего пространства.

    Подтверждение выполнения команд

    Управляйте тем, какие команды агенты могут выполнять на узлах и хосте Gateway:

    Режимы

    | Режим | Описание | |------|-------------| | Allowlist | Выполняются только предварительно одобренные команды | | Ask | Неизвестные команды запрашивают подтверждение пользователя | | Full | Без ограничений (используйте с осторожностью) |

    Конфигурация на уровне узла

    Каждый узел (macOS, безголовой хост) имеет собственную конфигурацию подтверждения exec, хранящуюся локально. Вы можете разрешить конкретные бинарные файлы (например, /usr/bin/docker, /usr/local/bin/terraform), заблокировав всё остальное.

    Расширенный режим

    Некоторые операции требуют выполнения непосредственно на хосте Gateway (не в sandbox). Расширенный режим:

  • Ограничен явным разрешением в конфигурации агента
  • Доступен только на хосте Gateway
  • Отключён по умолчанию
  • Подлежит аудиту через логирование
  • Аудит безопасности

    Встроенный аудит безопасности проверяет:

  • Права доступа к файлам конфигурации (должны быть 600)
  • Права доступа к файлам сессий
  • Версию Node.js (патчи безопасности)
  • Обнаружение секретов в открытом виде
  • Валидацию белого списка плагинов
  • Аудит открытых сетевых интерфейсов
  • Полноту конфигурации аутентификации
  • Аудит может автоматически исправить многие проблемы, если ему дать разрешение.

    Лучшие практики

  • Держите Gateway на loopback — используйте Tailscale или SSH для удалённого доступа
  • Включите изоляцию в sandbox — запускайте команды агентов в Docker-контейнерах
  • Используйте белые списки exec — ограничивайте команды, которые агенты могут запускать на узлах
  • Задайте токены аутентификации — всегда настраивайте аутентификацию по токену, даже для loopback
  • Проверяйте разрешения агентов — там, где возможно, используйте минимальные профили инструментов
  • Обновляйте Open Claw — обновления включают патчи безопасности
  • Регулярно проводите аудит — запускайте аудиты безопасности для выявления неправильных настроек
  • Ограничивайте загрузку плагинов — устанавливайте только доверенные плагины
  • View full documentation