SSD Nodes Learn
गाइड Matt Connorलेखक: Matt Connor · अपडेट किया गया: 2026-07-24

OpenClaw को VPS पर सुरक्षित कैसे चलाएं

OpenClaw को VPS पर सुरक्षित करने के लिए unprivileged user, firewall और systemd का उपयोग करें। CVE-2026-32922 जैसे जोखिमों से बचने के लिए इसे harden करें।

OpenClaw क्या है, और इसे सबसे पहले harden करना क्यों ज़रूरी है

OpenClaw एक self-hosted AI agent है। आप इसे अपने स्वयं के server पर चलाते हैं, इसे एक large language model से जोड़ते हैं, और यह shell commands चला सकता है, browser को control कर सकता है, आपकी files को पढ़ और लिख सकता है, और chat apps से भेजे गए messages पर कार्य कर सकता है। यह व्यापक पहुँच ही इस tool का मुख्य उद्देश्य है, और यही सबसे बड़ा जोखिम भी है। एक agent जो कोई भी command चला सकता है, वह उतना ही सुरक्षित है जितना कि वह box जिस पर वह चल रहा है और वे limits जो आप उसके चारों ओर लगाते हैं।

दो तथ्य इस guide का आधार निर्धारित करते हैं। पहला, OpenClaw को आपके द्वारा harden करने के लिए डिज़ाइन किया गया है। इसका security model सख्त tool policies, sandboxing, और सावधानीपूर्वक permissions की ज़िम्मेदारी operator पर डालता है, न कि किसी safe default पर। दूसरा, इस project में पहले ही एक गंभीर security event हो चुका है: March 2026 में, चार दिनों के भीतर नौ security issues का खुलासा किया गया था, जिसमें एक critical privilege-escalation flaw, CVE-2026-32922 शामिल था, जिसकी rating 10 में से 9.9 थी। इन दोनों तथ्यों का मतलब यह नहीं है कि आपको OpenClaw से बचना चाहिए। इनका मतलब यह है कि आपको इसे lazy तरीके से नहीं चलाना चाहिए, और यह guide सावधानीपूर्वक चलाने का तरीका है।

अच्छी खबर भी है। OpenClaw पहले से ही आपके लिए एक सुरक्षित विकल्प चुनता है: इसका gateway, जो वह single process है जो सब कुछ control करता है, default रूप से loopback address पर listen करता है, इसलिए जब तक आप इसे expose करने का प्रयास नहीं करते, यह internet से reachable नहीं है। नीचे दिया गया अधिकांश कार्य इसे इसी स्थिति में रखना है और यदि कुछ गलत हो जाता है, तो blast radius को सीमित करना है।

OpenClaw को अपना स्वयं का unprivileged user दें

Agent को कभी भी root के रूप में न चलाएं। यदि OpenClaw root के रूप में चलता है और कुछ भी गलत होता है—चाहे वह कोई bug हो, गलत instruction हो, या ऊपर बताए गए CVE जैसा कुछ—तो नुकसान की कोई सीमा नहीं होगी। बिना login shell और बिना sudo वाला एक dedicated system user बनाएं, और agent को उसी user के रूप में चलाएं:

sudo useradd --system --home /opt/openclaw --shell /usr/sbin/nologin openclaw

OpenClaw की सभी files /opt/openclaw के अंतर्गत रहती हैं, जो उसी account के स्वामित्व में हैं। यह सबसे महत्वपूर्ण कदम है, और यही वही principle है जिसका वर्णन running services as an unprivileged user में किया गया है: एक agent जिस account के रूप में चलता है, वही उसकी क्षति (break) करने की सीमा तय करता है।

OpenClaw install करें

OpenClaw एक npm package के रूप में वितरित किया जाता है, इसलिए यदि server में Node.js नहीं है, तो पहले उसे install करें। package को globally install करें, जो हर user के लिए PATH में openclaw binary जोड़ देता है, फिर एक बार के लिए onboarding step चलाएं:

sudo npm install -g openclaw@latest
sudo -u openclaw openclaw onboard

openclaw user के रूप में onboarding चलाने का अर्थ है कि agent का configuration उसके home directory, /opt/openclaw में जाएगा, न कि root के। Project एक curl -fsSL https://openclaw.ai/install.sh | bash installer भी प्रदान करता है जो एक ही line में यही installation करता है। Onboarding के दौरान --install-daemon flag को skip करें: यह OpenClaw की अपनी service को register कर देगा, जबकि नीचे बनाया गया hardened systemd unit अधिक सख्त है।

Gateway को loopback पर और firewall के पीछे रखें

Gateway default रूप से 127.0.0.1 पर bind होता है। इसे वहीं रहने दें। उस port को internet पर publish करने की आवश्यकता लगभग कभी नहीं होती है, और ऐसा करने से कोई भी जो इसे ढूंढ लेता है, उसे उस process में remote foothold मिल जाता है जो commands चलाने का काम करता है।

Box के सामने एक default-deny firewall लगाएं ताकि गलती से कुछ भी expose न हो:

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

यहाँ दो traps (जाल) हैं जिनसे बचना है। एक firewall जो केवल IPv4 को cover करता है, वह IPv6 पर उसी service को पूरी तरह खुला छोड़ सकता है, जो वही IPv6 firewall gap है जो कई लोगों को पकड़ लेता है। और यदि आपको अपने laptop से gateway तक पहुँचना है, तो port न खोलें। इसे VPN या SSH tunnel के माध्यम से एक्सेस करें, ताकि agent कभी भी open internet को listen न कर रहा हो।

इसके secrets को isolate करें

OpenClaw को उस language model के लिए एक API key की आवश्यकता होती है जिससे आप इसे जोड़ते हैं। वह key आपके पैसे खर्च कर सकती है और, agent के माध्यम से, आपकी ओर से कार्य कर सकती है, इसलिए इसे password की तरह मानें। इसे unit file और किसी भी repository से दूर रखें। इसे एक ऐसी file में रखें जिसे केवल OpenClaw user ही पढ़ सके:

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 key

systemd unit उस file को EnvironmentFile के साथ load करता है, जिससे key बिना command line, log, या shell history में रहे, सीधे process तक पहुँच जाती है।

इसे एक hardened systemd service के रूप में चलाएं

Agent को systemd के तहत चलाने से आपको automatic restarts, journalctl के माध्यम से clean logs, और सबसे महत्वपूर्ण, kernel-level sandboxing options मिलते हैं, जो उस process के touch करने की क्षमता को कम कर देते हैं भले ही वह compromise हो जाए। एक agent के लिए सबसे महत्वपूर्ण options हैं: NoNewPrivileges ताकि वह कभी नई powers प्राप्त न कर सके, ProtectSystem=strict ताकि filesystem केवल वहीं writable हो जहाँ आप अनुमति देते हैं, PrivateTmp इसके अपने isolated temporary directory के लिए, और ProtectHome ताकि यह home directories को न पढ़ सके।

यहाँ एक complete, hardened unit generate करें, फिर इसे /etc/systemd/system/openclaw.service में copy करें:

ToolGenerate a hardened systemd unit for the agent

Unit openclaw gateway शुरू करता है, जो वह long-running process है जो agent को control करता है; यदि which openclaw आपके server पर एक अलग path दिखाता है, तो ExecStart को उसके अनुसार adjust करें। इन directives का, और daemon-reload तथा enable --now का पूरा walkthrough, running a program as a systemd service में दिया गया है। unit paste करने के बाद संक्षिप्त version:

sudo systemctl daemon-reload
sudo systemctl enable --now openclaw

Front door को भी harden करें

एक agent box उतना ही सुरक्षित है जितना कि उसके आस-पास का server। दो और layers इस काम को पूरा करती हैं। SSH को key-only authentication पर ले जाएं और root login को हटा दें, जैसा कि SSH hardening on a VPS में बताया गया है, ताकि वह account जिससे आप box को administer करते हैं, उसे brute-force न किया जा सके। फिर Fail2ban जोड़ें ताकि उन scanners को हटाया जा सके जो हर public port पर हमला करते हैं। इनमें से कोई भी सीधे OpenClaw को प्रभावित नहीं करता है, लेकिन दोनों उन रास्तों को काट देते हैं जिनका उपयोग एक attacker उसे एक्सेस करने के लिए करेगा।

इसे जानबूझकर updated रखें

March 2026 के disclosures current रहने के लिए सबसे स्पष्ट तर्क हैं। एक agent में privilege-escalation bug एक साधारण web app की तुलना में कहीं अधिक गंभीर होता है, क्योंकि agent पहले से ही commands चलाता है। Project के releases पर नज़र रखें, security updates को जल्दी लागू करें, और OpenClaw upgrade को टालने वाली चीज़ के बजाय routine maintenance के रूप में मानें।

यह समझने के लिए कि आप वास्तव में क्या harden कर रहे हैं, the architecture of an OpenClaw-style agent इसके moving parts के बारे में बताता है, और building your own AI agent on a VPS किसी भी agent के सामान्य स्वरूप को कवर करता है।

FAQ

क्या एक public VPS पर OpenClaw चलाना सुरक्षित है?

यह हो सकता है, यदि आप इसे harden करते हैं। OpenClaw design से शक्तिशाली है: यह shell commands चलाता है और browser को control करता है, इसलिए एक लापरवाह setup वास्तव में खतरनाक है, और project में पहले ही एक critical CVE (March 2026 में CVE-2026-32922) हो चुका है। इसका security model आपसे, यानी operator से, limits जोड़ने की अपेक्षा करता है। इसे एक unprivileged user के रूप में चलाएं, इसके gateway को loopback पर और default-deny firewall के पीछे रखें, इसकी API keys को isolate करें, और इसे एक hardened systemd service के रूप में चलाएं।

क्या मुझे OpenClaw gateway को internet पर expose करना चाहिए?

नहीं। Gateway default रूप से loopback पर bind होता है, और आपको इसे वहीं रहने देना चाहिए। यह वह single process है जो agent को control करता है, इसलिए एक exposed gateway commands चलाने वाले process में एक remote path है। यदि आपको इसे रिमोटली एक्सेस करने की आवश्यकता है, तो port खोलने के बजाय VPN या SSH tunnel का उपयोग करें।

OpenClaw को किस user के रूप में चलना चाहिए?

बिना login shell और बिना sudo वाला एक dedicated system user, कभी भी root नहीं। यदि agent compromise हो जाता है, तो उसका user account क्षति की सीमा (ceiling) होता है, इसलिए उस account के पास /opt/openclaw जैसे directory के अंतर्गत केवल अपनी files होनी चाहिए और कुछ नहीं।

मैं OpenClaw की API keys को secure कैसे रखूँ?

उन्हें एक ऐसी file में store करें जिसे केवल OpenClaw user पढ़ सके (mode 600) और systemd के EnvironmentFile के साथ उसे service में load करें। Key को unit file, अपनी shell history, और किसी भी git repository से दूर रखें। यदि आपको कभी संदेह हो कि यह लीक हो गई है, तो इसे rotate करें।