Як безпечно запустити OpenClaw на VPS
OpenClaw виконує shell-команди та працює з вебом. Налаштуйте VPS безпечніше: окремий користувач без прав root, firewall, secrets і служба systemd.
Що таке OpenClaw і чому його потрібно спочатку захистити
OpenClaw — це self-hosted AI-агент. Ви запускаєте його на власному сервері, підключаєте до великої мовної моделі, після чого він може виконувати shell-команди, керувати браузером, читати й записувати ваші файли та обробляти повідомлення, які ви надсилаєте йому з chat-застосунків. Саме ці можливості є основним призначенням інструмента і водночас основним ризиком. Безпека агента, який може виконати будь-яку команду, залежить від безпеки сервера, на якому він працює, і обмежень, які ви для нього встановили.
Цей посібник ґрунтується на двох фактах. По-перше, OpenClaw розрахований на те, що захистом займатиметеся ви. Його модель безпеки покладає відповідальність за жорсткі політики доступу до інструментів, sandboxing і правильні права на адміністратора, а не на безпечні параметри за замовчуванням. По-друге, у проєкті вже був серйозний інцидент із безпекою: National Vulnerability Database містить 199 CVE для OpenClaw, опублікованих лише в березні 2026 року; 46 із них опубліковано протягом чотирьох днів — з 4 до 7 March (кількість перевірено 13 October 2026). Серед вразливостей того місяця була критична вразливість підвищення привілеїв CVE-2026-32922 з оцінкою 9.9 із 10, яку виправлено у версії 2026.3.11. Жоден із цих фактів не означає, що OpenClaw слід уникати. Вони означають, що не варто запускати його недбало. Нижче описано обережний підхід. Його частина — заздалегідь визначити, що агент може робити без підтвердження. Claude Code явно визначає цей вибір за допомогою режимів дозволів, причому для сервера, перед яким ви не перебуваєте, потрібен суворіший режим, ніж для ноутбука, який ви контролюєте безпосередньо.
Є і добра новина. OpenClaw уже застосовує для вас одне безпечне рішення: його gateway, єдиний процес, який керує всім, за замовчуванням прослуховує loopback-адресу. Тому він недоступний з інтернету, якщо ви навмисно не відкриєте до нього доступ. Більшість описаних нижче дій зводиться до збереження цієї поведінки та обмеження наслідків, якщо щось піде не так.
Призначте OpenClaw окремого непривілейованого користувача
Ніколи не запускайте агента від імені root. Якщо OpenClaw працює від імені root і щось іде не так — через помилку, небезпечну інструкцію або CVE, подібну до описаної вище, — наслідки не мають обмежень. Створіть окремого системного користувача без оболонки входу та без sudo і запускайте агента від імені цього користувача:
sudo useradd --system --home /opt/openclaw --shell /usr/sbin/nologin openclawУсе, чим володіє OpenClaw, зберігається в /opt/openclaw і належить цьому обліковому запису. Це найважливіший крок. Той самий принцип описано в розділі запуск сервісів від імені непривілейованого користувача: обліковий запис, від імені якого працює агент, визначає максимальний обсяг шкоди, яку він може завдати.
Встановлення OpenClaw
OpenClaw розповсюджується як npm-пакет. Якщо на сервері немає Node.js, спочатку встановіть його. Проєкт вимагає Node 24.16 або новішої версії чи Node 26.1 або новішої версії. Встановіть пакет глобально. Це додасть двійковий файл openclaw до PATH для всіх користувачів. Потім виконайте одноразове початкове налаштування:
sudo npm install -g openclaw@latest --allow-scripts=openclaw
sudo -u openclaw openclaw onboardПрапорець --allow-scripts=openclaw потрібен тому, що npm 12 за замовчуванням блокує скрипти встановлення пакетів, а OpenClaw використовує власний скрипт. У npm 11.15 або старіших версіях такого параметра немає, тому не використовуйте цей прапорець. Запуск початкового налаштування від імені користувача openclaw розміщує конфігурацію агента в його домашньому каталозі /opt/openclaw, а не в домашньому каталозі root. Проєкт також пропонує інсталятор curl -fsSL https://openclaw.ai/install.sh | bash, який виконує таке саме встановлення одним рядком. Не використовуйте прапорець --install-daemon під час початкового налаштування: він зареєструє власний сервіс OpenClaw, а створений нижче захищений unit systemd має суворіші параметри.
Тримайте gateway на loopback за firewall
Gateway за замовчуванням прив’язаний до 127.0.0.1. Залиште його там. Майже ніколи немає причин відкривати цей порт в інтернет. Інакше будь-хто, хто його знайде, отримає віддалений доступ до процесу, який призначений для виконання команд.
Встановіть перед сервером firewall із політикою заборони за замовчуванням, щоб жоден сервіс не став доступним випадково:
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enableТут слід уникати двох типових помилок. Firewall, який охоплює лише IPv4, може залишити той самий сервіс повністю відкритим через IPv6. Саме цей пробіл у захисті IPv6 часто стає причиною проблем. Якщо потрібно підключатися до gateway із ноутбука, не відкривайте порт. Підключайтеся через VPN або SSH-тунель, щоб agent ніколи не слухав відкритий інтернет.
Ізолюйте секрети
OpenClaw потребує API key для мовної моделі, до якої ви його підключаєте. Цей ключ може витрачати ваші кошти, а через агента — виконувати дії від вашого імені, тому поводьтеся з ним як із паролем. Не зберігайте його у unit-файлі або в репозиторії. Помістіть його у файл, який може читати лише користувач OpenClaw:
sudo install -o openclaw -g openclaw -m 600 /dev/null /opt/openclaw/openclaw.env
sudoedit /opt/openclaw/openclaw.env # add ANTHROPIC_API_KEY=... or your model provider's keysystemd unit завантажує цей файл за допомогою EnvironmentFile. Тому ключ потрапляє до процесу, не з’являючись у командному рядку, журналі або історії shell. Цей підхід застосовується до кожного секрету на сервері: посилене захищення self-hosted Vaultwarden зводиться до захисту його admin token і backup-файлу, а не шифрування, оскільки саме права доступу до файлів фактично визначають, хто може читати секрет у стані спокою.
Запустіть його як захищену службу systemd
Запуск агента під керуванням systemd забезпечує автоматичний перезапуск, структуровані журнали через journalctl і, що найважливіше, набір параметрів ізоляції на рівні ядра. Вони обмежують доступ процесу навіть у разі його компрометації. Для агента найважливішими є NoNewPrivileges, щоб він не міг отримати нові повноваження, ProtectSystem=strict, щоб файлова система була доступною лише для читання, крім дозволених місць запису, PrivateTmp для окремого тимчасового каталогу агента та ProtectHome, щоб він не міг читати домашні каталоги.
Створіть тут повний захищений unit, а потім скопіюйте його до /etc/systemd/system/openclaw.service:
Unit запускає openclaw gateway — довготривалий процес, який керує агентом. Якщо which openclaw показує інший шлях на вашому сервері, змініть ExecStart відповідно. Повний опис цих директив, а також daemon-reload і enable --now, наведено в розділі запуск програми як служби systemd. Коротко, після вставлення unit:
sudo systemctl daemon-reload
sudo systemctl enable --now openclawПосильте також зовнішній периметр
Безпека agent box залежить від безпеки сервера, на якому він працює. Ще два рівні захисту завершують налаштування. Перейдіть у SSH на автентифікацію лише за ключами та забороніть вхід root, як описано в розділі Посилення безпеки SSH на VPS. Це не дасть зловмисникам підбирати пароль облікового запису, з якого ви адмініструєте сервер. Потім додайте Fail2ban, щоб блокувати сканери, які атакують усі відкриті порти. Жоден із цих заходів безпосередньо не змінює OpenClaw, але обидва перекривають шляхи, якими зловмисник міг би отримати до нього доступ.
Оновлюйте його навмисно
Розкриття інформації в березні 2026 року є найпереконливішим аргументом на користь своєчасного оновлення. Вразливість підвищення привілеїв в агенті значно серйозніша, ніж у звичайному вебзастосунку, оскільки агент уже виконує команди. Стежте за релізами проєкту, швидко встановлюйте оновлення безпеки та сприймайте оновлення OpenClaw як звичайне технічне обслуговування, а не як те, що можна відкладати.
Щоб зрозуміти, що саме ви захищаєте, у матеріалі архітектура агента на кшталт OpenClaw розглянуто основні компоненти, а матеріал створення власного AI-агента на VPS описує загальну структуру будь-якого агента. Якщо ви запустите поруч із ним другого агента, пам’ятайте, що два сеанси Claude Code на одному VPS можуть передавати роботу один одному, тому кожному з них потрібні власний обліковий запис і власні обмеження, а не успадковані від вас.
FAQ
Чи безпечно запускати OpenClaw на публічному VPS?
Так, якщо належно посилити його захист. OpenClaw за задумом має широкі можливості: він виконує команди оболонки та керує браузером, тому недбале налаштування справді небезпечне. Крім того, у проєкті вже виявляли критичну вразливість CVE (CVE-2026-32922 у березні 2026 року). Модель безпеки OpenClaw передбачає, що оператор сам встановлює необхідні обмеження. Запускайте його від непривілейованого користувача, залишайте його gateway на loopback за default-deny firewall, ізолюйте його API keys і запускайте як посилено захищену systemd service.
Чи слід відкривати OpenClaw gateway для доступу з інтернету?
Ні. За замовчуванням gateway прив’язаний до loopback, і його слід там залишити. Це єдиний процес, який керує агентом, тому відкритий gateway створює віддалений шлях до системи, що виконує команди. Якщо потрібен віддалений доступ, використовуйте VPN або SSH tunnel замість відкриття порту.
Від якого користувача має запускатися OpenClaw?
Від окремого системного користувача без login shell і без sudo; root використовувати не можна. Якщо агент буде скомпрометований, його обліковий запис обмежить можливий масштаб шкоди. Тому цей обліковий запис має володіти лише власними файлами в каталозі на кшталт /opt/openclaw і жодними іншими файлами.
Як захистити API keys OpenClaw?
Зберігайте їх у файлі, доступному для читання лише користувачу OpenClaw (mode 600), і завантажуйте його в service за допомогою EnvironmentFile systemd. Не зберігайте key у unit file, shell history або git repository. Змініть key, якщо підозрюєте, що його було розкрито.