Agent Zero को VPS पर सुरक्षित रूप से कैसे सेटअप करें
Agent Zero का Web UI बिना प्रमाणीकरण के पोर्ट 50001 पर खुला रहता है। इस गाइड में जानें कि कैसे Docker कंटेनर को सुरक्षित रखें और VPS पर इसे सही तरीके से कैसे कॉन्फ़िगर करें।
Agent Zero क्या है और खतरा कहाँ है
Agent Zero एक ओपन-सोर्स, Docker-फर्स्ट एजेंट फ्रेमवर्क है। एक प्राथमिक एजेंट अधीनस्थ एजेंटों को उत्पन्न कर सकता है, जिनमें से प्रत्येक अपने स्वयं के अलग Docker कंटेनर में चलता है, और प्रत्येक कोड निष्पादित कर सकता है, ब्राउज़र चला सकता है, और शेल कमांड चला सकता है। आप पूरी प्रणाली को एक Web UI से नियंत्रित करते हैं। यह सक्षम है और उपयोग करने में वास्तव में मजेदार है, और यह छह डॉलर के VPS जैसे छोटे हार्डवेयर पर भी चल सकता है। यदि आप फ्रेमवर्क के बजाय मल्टी-एजेंट स्वरूप चाहते हैं, तो एक ही बॉक्स पर दो Claude Code सत्र सीधे एक-दूसरे को संदेश भेज सकते हैं, जिसे चलाना और सुरक्षित करना बहुत आसान है।
खतरा Web UI है। यह एक ऐसी प्रणाली के लिए कंट्रोल पैनल है जो कमांड चलाती है और फाइलें लिखती है, इसलिए एक एक्सपोज़्ड, बिना प्रमाणीकरण वाला Web UI सीधे उस तक पहुँचने का एक रिमोट जरिया है। और यहाँ वह जाल है जिसमें अधिकांश सेटअप गाइड आपको सीधे ले जाती हैं: मानक docker run इंटरफ़ेस को हर नेटवर्क इंटरफ़ेस पर पोर्ट 50001 पर प्रकाशित करता है, जिसका अर्थ है कि एक सार्वजनिक VPS पर, कंटेनर शुरू होते ही यह पूरे इंटरनेट से पहुँच योग्य हो जाता है। इसे ठीक करना सबसे पहला काम होना चाहिए, न कि आखिरी।
आपको क्या चाहिए
आपको Docker इंस्टॉल किए हुए एक VPS, एक language model के लिए API key या उसे पॉइंट करने के लिए एक local model, और शुरुआत करने के लिए कुछ gigabytes RAM की आवश्यकता होगी। Agent Zero वहां चलता है जहां Docker चलता है, एक छोटे VPS से लेकर GPU सर्वर तक। यदि आप Docker के लिए नए हैं, तो Docker basics guide में उन बातों को शामिल किया गया है जिन्हें नीचे दिए गए commands मानकर चलते हैं।
Docker के साथ इंस्टॉलेशन, loopback पर बाइंडिंग
दस्तावेजीकृत quick start केवल एक docker run है। अन्य जगहों पर मिलने वाले copy-paste संस्करण से इसमें महत्वपूर्ण बदलाव वह पता है जिस पर आप इसे publish करते हैं। इसे port 50001 पर हर interface पर publish न करें। इसे loopback पर publish करें:
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 tunnel के माध्यम से एक्सेस करें:
ssh -L 5080:127.0.0.1:5080 you@your-vpsइसके बाद स्थानीय रूप से http://127.0.0.1:5080 खोलें, और UI में अपने model provider को कॉन्फ़िगर करें। स्थायी multi-user सेटअप के लिए, इसे VPN या authentication करने वाले reverse proxy के पीछे रखें, लेकिन raw UI को कभी भी खुले इंटरनेट पर publish न करें। यह आदत बॉक्स पर मौजूद हर उस अन्य टूल के लिए अपनानी चाहिए जिसका इंटरफ़ेस संवेदनशील चीजों को नियंत्रित करता है, और इसी तरह self-hosted open-kritt scanner तक भी पहुँचा जाना चाहिए, यानी एक published port के बजाय इसके UI के लिए tunnel का उपयोग करके।
जहाँ अन्य गाइड समाप्त होती हैं, और आपको ऐसा क्यों नहीं करना चाहिए
Agent Zero को इंस्टॉल करने का तरीका खोजें और आपको बहुत सारी गाइड मिलेंगी, जिनमें होस्टिंग कंपनियों की गाइड भी शामिल हैं, जो आपको port 50001 पर एक रनिंग Web UI तक ले जाती हैं और वहीं समाप्त हो जाती हैं। जोखिम वास्तव में वहीं से शुरू होता है, न कि वहां समाप्त होता है। दो चीजें इस काम को पूरा करती हैं। पहला, UI को ऊपर बताए अनुसार private रखें। दूसरा, बॉक्स के सामने एक default-deny firewall लगाएँ ताकि कोई stray container या भविष्य की कोई गलती उस port को expose न कर सके जिसे आप भूल गए हैं:
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enableपूरी जानकारी के लिए firewall की बुनियादी बातें का पालन करें, और IPv6 gap का ध्यान रखें, क्योंकि :: पर मौजूद कोई service IPv6 के माध्यम से तब भी पहुंच योग्य होती है जब आपके IPv4 नियम पूरी तरह सुरक्षित दिख रहे हों।
Container isolation agents की सुरक्षा करता है, आपके सर्वर की नहीं
Agent Zero का डिज़ाइन एक प्रकार के isolation के मामले में वास्तव में अच्छा है: subordinate agents अलग-अलग containers में चलते हैं, इसलिए वे एक-दूसरे से अलग-थलग रहते हैं। यह एक उपयोगी सुविधा है। लेकिन इसे यह समझ लेना कि "यह sandboxed है, इसलिए मैं सुरक्षित हूँ" और यहीं रुक जाना एक भूल है। Container isolation agents को एक-दूसरे से सुरक्षित रखता है। यह आपके सर्वर को इंटरनेट से बचाने या किसी exposed Web UI को किसी अनजान व्यक्ति के नियंत्रण में जाने से रोकने के लिए कुछ नहीं करता है। ये जिम्मेदारियाँ host पर आपकी हैं। पहले से तय करें कि जब कोई उसे देख न रहा हो, तो एक agent को कितनी छूट मिलनी चाहिए। यही वह निर्णय है जो Claude Code's permission modes के पीछे काम करता है, जहाँ एक unattended सर्वर के लिए आपके सामने रखे laptop की तुलना में अधिक सख्त setting की आवश्यकता होती है।
Secrets, users, और host
Agent Zero की config या किसी environment file में model API key और अन्य credentials रखें, जिसे केवल सही account ही पढ़ सके। इन्हें shell history और किसी भी repository से बाहर रखें। यही सिद्धांत box पर मौजूद अन्य secret-guarding tools पर भी लागू होता है, क्योंकि Vaultwarden की hardening का मुख्य आधार उसका admin token और backup file है, न कि वह encryption जो app पहले से ही बेहतर तरीके से करती है। least-privilege users के सिद्धांत का पालन करते हुए, root के बजाय एक unprivileged user के रूप में box को administer करें, और SSH hardening के अनुसार SSH को केवल key-based authentication पर सेट करें। फिर नीचे दी गई checklist को पूरा करें ताकि कुछ भी छूट न जाए।
यदि आप agents की तुलना कर रहे हैं, तो यह वही security posture है जिसे OpenClaw hardening guide और OpenHands guide अपनाते हैं: control surface को private रखें, unprivileged user के रूप में चलाएं, डिफ़ॉल्ट रूप से firewall का उपयोग करें, और host को ऐसा मानें जो ऐसा code चलाता है जिसे उसने खुद नहीं लिखा है। सभी पांच agents के तुलनात्मक दृश्य के लिए, 2026 के सर्वश्रेष्ठ self-hosted AI agents देखें।
इनमें से किसी भी tool के पीछे के सिद्धांत VPS पर अपना AI agent बनाना में दिए गए हैं, और Dify एक अन्य self-hostable platform है जिसकी तुलना करना सार्थक है।
FAQ
क्या Agent Zero को self-host करना सुरक्षित है?
यह सुरक्षित है, यदि आप इसके Web UI को private रखें और host को सुरक्षित (harden) करें। Agent Zero कोड, ब्राउज़र और शेल चलाता है, और इसे एक Web UI से नियंत्रित किया जाता है जो डिफ़ॉल्ट रूप से port 50001 पर पब्लिश होता है। इसलिए खतरा exposed interface से है, न कि स्वयं framework से। UI को loopback पर bind करें और इसे SSH या VPN के माध्यम से एक्सेस करें, इसके आगे एक default-deny firewall लगाएँ, और इसे एक unprivileged user के रूप में चलाएँ।
क्या Agent Zero डिफ़ॉल्ट रूप से इंटरनेट पर Web UI expose करता है?
मानक docker run इंटरफ़ेस को हर network interface पर port 50001 पर पब्लिश करता है, जिसका अर्थ है कि एक public VPS पर container शुरू होते ही यह इंटरनेट से एक्सेस किया जा सकता है। पब्लिश किए गए पते को 127.0.0.1 में बदलें ताकि UI केवल loopback पर listen करे, फिर इसे SSH tunnel या VPN के माध्यम से एक्सेस करें।
क्या Agent Zero एक छोटे VPS पर चल सकता है?
हाँ। Agent Zero वहाँ चलता है जहाँ Docker चलता है, जिसमें एक छोटा, सस्ता VPS भी शामिल है, हालाँकि भारी कार्यों और बड़े local models के लिए अधिक memory की आवश्यकता होती है। यदि आप इसे किसी hosted API के बजाय self-hosted model से जोड़ते हैं, तो सर्वर का आकार model के अनुसार रखें, न कि केवल Agent Zero के लिए।
Agent Zero, OpenClaw या Hermes से कैसे अलग है?
इनमें समानताएँ हैं लेकिन इनके उद्देश्य अलग हैं। Agent Zero एक Docker-first framework है जो एक प्राथमिक agent के इर्द-गिर्द बना है, जो Web UI से संचालित होकर अलग-अलग containers में subordinate agents बनाता है। OpenClaw और Hermes व्यक्तिगत सहायक (personal assistants) हैं जिन्हें आप chat apps के माध्यम से एक्सेस करते हैं। सभी के लिए सुरक्षा का दृष्टिकोण समान है: control surface को private रखें और host को सुरक्षित (harden) करें।