SSD Nodes Learn Hosting plans →
Посібники Matt ConnorВід Matt Connor

Agent Zero на VPS: безпечне розгортання Web UI

Agent Zero запускає код, браузер і shell через Web UI. Дізнайтеся, як розгорнути його на VPS за $6 і захистити панель від віддаленого доступу.

Що таке Agent Zero і де полягає небезпека

Agent Zero — це open-source агентський фреймворк, орієнтований на Docker. Головний агент може запускати підлеглих агентів, щоб розподіляти завдання на окремі спеціалізовані частини. Агенти можуть виконувати код, керувати браузером і запускати shell-команди — усе всередині Docker-контейнера Agent Zero. Усім цим можна керувати через Web UI. Фреймворк має широкі можливості й зручний у використанні. Він працює навіть на VPS вартістю шість доларів. Якщо вам потрібна саме multi-agent схема, а не цей фреймворк, два сеанси Claude Code на одному сервері можуть обмінюватися повідомленнями безпосередньо. Це значно простіше розгортати й захищати.

Небезпека полягає у Web UI. Це панель керування системою, яка виконує команди й записує файли. Тому відкритий і неавтентифікований Web UI надає віддалений доступ до цієї системи. Ось пастка, у яку вас заведуть більшість інструкцій із налаштування: приклади docker run публікують інтерфейс без явного зазначення адреси. Станом на 2026-10-12 пряма команда з README зіставляє порт 80 хоста (-p 80:80), launcher A0 Install використовує порт 5080, а інструкція з розгортання на VPS рекомендує порт 50080. Водночас інструкції для release до гілки v0.9.x використовують порт 50001. Незалежно від вибраного порту, зіставлення без адреси прослуховує всі мережеві інтерфейси. На публічному VPS це означає доступність із усього інтернету одразу після запуску контейнера. Виправити це потрібно насамперед, а не залишати на кінець.

Що потрібно

Вам потрібен VPS із встановленим Docker, API key для мовної моделі або локальна модель, до якої можна підключитися, а також на початку кілька гігабайтів RAM. Agent Zero працює всюди, де працює Docker: від невеликого VPS до GPU-сервера. Якщо ви раніше не працювали з Docker, ознайомтеся з посібником з основ Docker, де описано припущення щодо команд нижче.

Установлення за допомогою Docker з прив’язкою до loopback

Задокументований швидкий запуск виконується однією командою docker run. Важлива відмінність від версії для копіювання та вставлення, яку можна знайти в інших джерелах, — адреса, на якій публікується сервіс. Не публікуйте його на всіх інтерфейсах, як це робить -p 80:80. Публікуйте його на loopback:

docker run -d --name agent-zero \
  -p 127.0.0.1:5080:80 \
  -v a0_usr:/a0/usr \
  agent0ai/agent-zero

-p 127.0.0.1:5080:80 прив’язує Web UI лише до loopback-адреси сервера, тому він недоступний з інтернету. Підключайтеся до нього зі свого комп’ютера через SSH-тунель:

ssh -L 5080:127.0.0.1:5080 you@your-vps

Потім відкрийте http://127.0.0.1:5080 локально, налаштуйте постачальника моделі у Web UI та встановіть логін і пароль для входу до Web UI в розділі Settings, Authentication. В офіційній документації зазначено, що це потрібно зробити до того, як відкрити інстанс для інших користувачів. Для постійного середовища з кількома користувачами використовуйте VPN або reverse proxy з автентифікацією, але ніколи не публікуйте необроблений Web UI у відкритому інтернеті. Цей принцип варто застосовувати до кожного іншого інструмента на сервері, інтерфейс якого керує чутливими функціями. Саме так слід отримувати доступ і до self-hosted сканера open-kritt — через тунель до його Web UI, а не через опублікований порт.

Де завершуються інші посібники і чому вам не слід зупинятися там

Пошук способу встановити Agent Zero приведе вас до багатьох посібників, зокрема від хостинг-провайдерів. У них зазвичай описано запуск Web UI на опублікованому порту: 50001 у старіших посібниках, 80, 5080 або 50080 у новіших. На цьому вони завершуються. Саме тут починається ризик, а не завершується налаштування. Для повного захисту потрібні дві речі. По-перше, залиште UI приватним, як описано вище. По-друге, встановіть перед сервером firewall із політикою default-deny, щоб забутий сервіс не відповідав на запити з інтернету:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enable

Однак пам’ятайте про обмеження: Docker маршрутизує трафік до опублікованих портів контейнерів до застосування правил UFW. Тому firewall не захищає порт контейнера, опублікований на всіх інтерфейсах. Саме тому важливо прив’язати порт до loopback, як описано вище. Докладніше про це див. у матеріалі як порти Docker обходять UFW. Повний опис наведено в розділі основи firewall. Також врахуйте проблему з IPv6, оскільки сервіс на :: доступний через IPv6, навіть якщо правила IPv4 налаштовано жорстко.

Ізоляція контейнера захищає агентів, але не сервер

Agent Zero справді добре реалізує один вид ізоляції: фреймворк і кожен агент, якого він запускає, працюють усередині свого Docker-контейнера, а не безпосередньо на host. Тому код, який вони пишуть і виконують, потрапляє в контейнер, а не у ваш home directory. Це важливо. Підлеглі агенти використовують той самий контейнер, що й основний агент. Отже, межа проходить між агентами та вашим host, а не між самими агентами. Легко сприйняти це як «усе ізольовано, тому я в безпеці» й зупинитися на цьому. Ізоляція контейнера не дає агентам змінювати файли на host. Але вона не захищає сервер від інтернету й не завадить відкритому Web UI передати керування сторонній особі. За це відповідаєте ви — на host. Заздалегідь визначте, що агент може робити без нагляду. Це той самий вибір, що й під час налаштування режимів дозволів Claude Code, але для сервера без нагляду потрібен суворіший режим, ніж для ноутбука перед вами.

Секрети, користувачі та хост

Зберігайте API key моделі та всі інші облікові дані в конфігурації Agent Zero або у файлі середовища, який може читати лише потрібний обліковий запис. Не зберігайте їх в історії shell і не додавайте до жодного репозиторію. Такий самий підхід застосовується до всього іншого на хості, що захищає секрети. Зокрема, посилення захисту Vaultwarden зводиться до захисту його admin token і backup-файлу, а не до шифрування, яке застосунок уже добре виконує. Адмініструйте хост від непривілейованого користувача, а не від root, відповідно до принципу мінімальних привілеїв користувачів, і перемкніть SSH на автентифікацію лише за ключами, як описано в матеріалі про посилення захисту SSH. Потім пройдіть наведений нижче контрольний список, щоб нічого не пропустити.

ToolVPS hardening checklist

Якщо ви порівнюєте агентів, саме таку модель безпеки використовують посібник із посилення захисту OpenClaw і посібник з OpenHands: тримайте площину керування приватною, запускайте процеси від непривілейованого користувача, за замовчуванням використовуйте firewall і вважайте хост таким, що запускає код, якого ви не писали. Порівняння всіх п’яти агентів наведено в матеріалі про найкращих self-hosted AI-агентів у 2026 році.

Основні поняття для всіх цих рішень описано в матеріалі як створити власного AI-агента на VPS, а Dify — ще одна self-hostable платформа, яку варто розглянути.

FAQ

Чи безпечно розгортати Agent Zero на власному сервері?

Так, якщо Web UI залишається приватним, а хост належно захищено. Agent Zero виконує код, використовує браузер і shell та керується через Web UI на порту хоста, який ви опублікували. Тому небезпеку становить відкритий інтерфейс, а не сам фреймворк. Прив’яжіть UI до loopback і підключайтеся до нього через SSH або VPN, налаштуйте логін і пароль для UI, встановіть перед ним firewall із політикою заборони за замовчуванням і запускайте його від непривілейованого користувача.

Чи відкриває Agent Zero Web UI в інтернет за замовчуванням?

Задокументовані команди docker run публікують інтерфейс без указання адреси (у README використовується -p 80:80), а таке зіставлення змушує сервіс слухати всі мережеві інтерфейси. На публічному VPS це означає, що інтерфейс стає доступним з інтернету одразу після запуску контейнера. UFW не блокує такий доступ, оскільки Docker маршрутизує опубліковані порти в обхід нього. Додайте 127.0.0.1 до опублікованої адреси, щоб UI слухав лише loopback, а потім підключайтеся до нього через SSH-тунель або VPN.

Чи може Agent Zero працювати на невеликому VPS?

Так. Agent Zero працює всюди, де працює Docker, зокрема на невеликому недорогому VPS, хоча складніші завдання та більші локальні моделі потребують більше пам’яті. Якщо ви використовуєте self-hosted модель замість hosted API, розраховуйте ресурси сервера на модель, а не лише на Agent Zero.

Чим Agent Zero відрізняється від OpenClaw або Hermes?

Вони мають спільні риси, але орієнтовані на різні сценарії. Agent Zero — це Docker-first фреймворк, побудований навколо головного агента, який запускає підлеглих агентів у своєму контейнері та керується через Web UI. OpenClaw і Hermes — це персональні асистенти, доступні через чат-застосунки. Підхід до безпеки для всіх однаковий: тримайте інтерфейс керування приватним і належно захищайте хост.