SSD Nodes Learn
تعلیمی Matt Connorتحریر: Matt Connor · اپ ڈیٹ شدہ 2026-07-25

VPS پر OpenClaw محفوظ طریقے سے چلائیں

OpenClaw شیل کمانڈز چلاتا ہے اور ویب براؤز کرتا ہے، اس لیے بغیر احتیاط سیٹ اپ خطرناک ہے۔ unprivileged user، firewall، secrets اور systemd سے اسے VPS پر ہارڈن کریں۔

OpenClaw کیا ہے، اور آپ اسے پہلے ہارڈن کیوں کرتے ہیں

OpenClaw ایک سیلف ہوسٹڈ AI ایجنٹ ہے۔ آپ اسے اپنے سرور پر چلاتے ہیں، اسے ایک بڑے لینگویج ماڈل سے جوڑتے ہیں، اور یہ شیل کمانڈز چلا سکتا ہے، براؤزر کو کنٹرول کر سکتا ہے، آپ کی فائلوں کو پڑھ اور لکھ سکتا ہے، اور چیٹ ایپس سے آپ کی بھیجی گئی پیغامات پر عمل کر سکتا ہے۔ یہ رسائی ٹول کا بنیادی مقصد ہے، اور یہی پورا خطرہ بھی ہے۔ جو ایجنٹ کوئی بھی کمانڈ چلا سکتا ہے وہ صرف اتنا ہی محفوظ ہوتا ہے جتنا کہ وہ باکس جس پر وہ چلتا ہے اور آپ کے اس کے گرد لگائے گئے حدود۔

دو باتیں اس گائیڈ کا رنگ طے کرتی ہیں۔ پہلا، OpenClaw کو آپ کی طرف سے ہارڈن کرنے کے لیے ڈیزائن کیا گیا ہے۔ اس کی سیکیورٹی ماڈل سخت ٹول پالیسیاں، سینڈباکسنگ، اور احتیاطی اجازتوں کی ذمہ داری آپریٹر پر ڈالتی ہے، کسی محفوظ ڈیفالٹ پر نہیں۔ دوسرا، پروجیکٹ میں پہلے ہی ایک سنگین سیکیورٹی واقعہ پیش آ چکا ہے: مارچ 2026 میں، چار دن کے اندر نو سیکیورٹی مسائل ظاہر کیے گئے، جن میں ایک تنقیدی پرائیویلیج ایسکلیشن خامی، CVE-2026-32922، جسے 10 میں سے 9.9 کی درجہ بندی دی گئی، شامل ہے۔ ان میں سے کوئی بات بھی یہ نہیں کہتی کہ آپ OpenClaw سے پرہیز کریں۔ ان کا مطلب ہے کہ آپ اسے سستی طریقے سے نہ چلائیں، اور یہ گائیڈ احتیاطی طریقہ ہے۔

ایک اچھی خبر بھی ہے۔ OpenClaw پہلے ہی آپ کے لیے ایک محفوظ انتخاب کرتا ہے: اس کا گیٹ وے، وہ واحد پروسیس جو ہر چیز کو کنٹرول کرتا ہے، ڈیفالٹ طور پر لوپ بیک ایڈریس پر سنتی ہے، لہذا یہ انٹرنیٹ سے اس وقت تک نہیں پہنچا جا سکتا جب تک آپ اسے ظاہر کرنے کی خاص کوشش نہ کریں۔ نیچے دی گئی زیادہ تر کام یہی ہے کہ اسے اس طرح رکھا جائے اور اگر کچھ غلط ہو جائے تو اس کے اثرات کو محدود کیا جائے۔

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 موجود نہیں ہے تو پہلے اسے انسٹال کریں۔ پیکیج کو گلوبلی انسٹال کریں، جو ہر یوزر کے لیے PATH پر openclaw بائنری ڈال دیتا ہے، پھر ون ٹائم آن بورڈنگ اسٹپ چلائیں:

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

openclaw یوزر کے طور پر آن بورڈنگ چلانے کا مطلب ہے کہ ایجنٹ کی کنفیگریشن اس کی ہوم ڈائرکٹری، /opt/openclaw، میں جاتی ہے، نہ کہ root کی ہوم ڈائرکٹری میں۔ پروجیکٹ ایک curl -fsSL https://openclaw.ai/install.sh | bash انسٹالر بھی پیش کرتا ہے جو اسی انسٹالیشن کو ایک لائن میں کرتا ہے۔ آن بورڈنگ کے دوران --install-daemon flag کو نظر انداز کریں: یہ OpenClaw کی اپنی سروس رجسٹر کر دے گا، اور آپ کا بنایا ہوا ہارڈنڈ systemd یونٹ اس سے زیادہ سخت ہے۔

گیٹ وے کو لوپ بیک پر رکھیں، فائر وال کے پیچھے

گیٹ وے ڈیفالٹ طور پر 127.0.0.1 سے بائنڈ ہوتا ہے۔ اسے وہیں رکھیں۔ اس پورٹ کو انٹرنیٹ پر شائع کرنے کی تقریباً کبھی ضرورت نہیں ہوتی، اور ایسا کرنا جسے بھی وہ ملتا ہے اسے ایک ایسی پروسیس میں ریموٹ فوٹ ہولڈ دے دیتا ہے جو کمانڈز چلانے کا کام کرتی ہے۔

باکس کے سامنے ایک ڈیفالٹ ڈینی فائر وال لگائیں تاکہ کچھ بھی حادثاتی طور پر ظاہر نہ ہو:

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

یہاں دو جالوں سے بچنا ہے۔ ایک فائر وال جو صرف IPv4 کو کور کرتا ہے وہی سروس IPv6 پر مکمل کھلا چھوڑ سکتا ہے، جو وہی IPv6 فائر وال گیپ ہے جو بہت سے لوگوں کو پھنساتی ہے۔ اور اگر آپ کو اپنے لیپ ٹاپ سے گیٹ وے تک پہنچنا ہے، تو پورٹ نہ کھولیں۔ اسے VPN یا SSH سرنگ کے ذریعے پہنچیں، تاکہ ایجنٹ کبھی بھی کھلے انٹرنیٹ پر نہ سنے۔

اس کے رازوں کو الگ تھلگ رکھیں

OpenClaw کو جس بھی لینگویج ماڈل سے آپ اسے جوڑتے ہیں اس کے لیے ایک API کلید کی ضرورت ہوتی ہے۔ وہ کلید آپ کا پیسہ خرچ کر سکتی ہے اور ایجنٹ کے ذریعے آپ کی طرف سے عمل کر سکتی ہے، لہذا اسے پاس ورڈ کی طرح سمجھیں۔ اسے یونٹ فائل اور کسی بھی ریپوزٹری سے باہر رکھیں۔ اسے ایک ایسی فائل میں رکھیں جو صرف 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 key

systemd یونٹ اس فائل کو EnvironmentFile کے ساتھ لوڈ کرتا ہے، لہذا کلید پروسیس تک پہنچتی ہے بغیر کمانڈ لائن، لاگ، یا آپ کی شیل ہسٹری میں کبھی ظاہر ہوئے۔

اسے ایک ہارڈنڈ systemd سروس کے طور پر چلائیں

ایجنٹ کو systemd کے تحت چلانا آپ کو آٹومیٹک ری اسٹارٹس دیتا ہے، journalctl کے ذریعے صاف لاگز، اور سب سے اہم، کرنیل لیول سینڈباکسنگ آپشنز کا ایک سیٹ جو پروسیس کے چھو سکنے کی حد کو کم کر دیتا ہے حتیٰ کہ اگر وہ سمجھوتہ بھی ہو جائے۔ ایک ایجنٹ کے لیے سب سے زیادہ اہم وہ ہیں جو NoNewPrivileges ہے تاکہ یہ کبھی نئی طاقتیں حاصل نہ کر سکے، ProtectSystem=strict تاکہ فائل سسٹم صرف پڑھنے کے لیے ہو سوائے جہاں آپ لکھنے کی اجازت دیں، PrivateTmp اس کی اپنی الگ تھلگ عارضی ڈائرکٹری کے لیے، اور ProtectHome تاکہ یہ ہوم ڈائرکٹریاں نہ پڑھ سکے۔

یہاں ایک مکمل، ہارڈنڈ یونٹ بنائیں، پھر اسے /etc/systemd/system/openclaw.service میں کاپی کریں:

ToolGenerate a hardened systemd unit for the agent

یہ یونٹ openclaw gateway کو اسٹارٹ کرتا ہے، وہ طویل چلنے والا پروسیس جو ایجنٹ کو کنٹرول کرتا ہے؛ اگر which openclaw آپ کے سرور پر کوئی مختلف پاتھ دکھاتا ہے، تو ExecStart کو مطابقت کے لیے ایڈجسٹ کریں۔ ان ہدایات کا مکمل تفصیلی جائزہ، اور daemon-reload اور enable --now کا، ایک پروگرام کو systemd سروس کے طور پر چلانے میں ہے۔ ایک بار جب آپ یونٹ پیسٹ کر لیں تو مختصر ورژن یہ ہے:

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

سامنے کے دروازے کو بھی ہارڈن کریں

ایک ایجنٹ باکس صرف اتنا ہی محفوظ ہوتا ہے جتنا کہ اس کے گرد کا سرور۔ دو مزید تہیں کام مکمل کرتی ہیں۔ SSH کو صرف کلید پر مبنی تصدیق پر منتقل کریں اور root لاگ ان کو ہٹا دیں، جیسا کہ VPS پر SSH ہارڈننگ میں ہے، تاکہ جس اکاؤنٹ سے آپ باکس ایڈمنسٹر کرتے ہیں اسے brute-force نہ کیا جا سکے۔ پھر ہر عوامی پورٹ پر ہتھوڑا مارنے والے سکینرز کو نکالنے کے لیے Fail2ban شامل کریں۔ ان میں سے کوئی بھی براہ راست OpenClaw کو نہیں چھوتا، لیکن دونوں وہ راستے کاٹ دیتے ہیں جنہیں ایک حملہ آور اس تک پہنچنے کے لیے استعمال کرتا۔

اسے جان بوجھ کر اپ ڈیٹ رکھیں

مارچ 2026 کے انکشافات موجودہ رہنے کے لیے سب سے واضح دلیل ہیں۔ ایک ایجنٹ میں پرائیویلیج ایسکلیشن بگ ایک عام ویب ایپ کی نسبت کہیں زیادہ سنگین ہوتا ہے، کیونکہ ایجنٹ پہلے ہی کمانڈز چلا رہا ہوتا ہے۔ پروجیکٹ کی ریلیزز دیکھیں، سیکیورٹی اپ ڈیٹس جلدی لگائیں، اور OpenClaw اپ گریڈ کو ٹالنے والی چیز کے بجائے معمول کے میینٹیننس کے طور پر لیں۔

یہ سمجھنے کے لیے کہ آپ دراصل کیا ہارڈن کر رہے ہیں، ایک OpenClaw طرز کے ایجنٹ کی آرکیٹیکچر اس کے کام کرنے والے حصوں سے گزرتی ہے، اور VPS پر اپنا AI ایجنٹ بنانا کسی بھی ایجنٹ کے عمومی ڈھانچے کو کور کرتا ہے۔

FAQ

کیا OpenClaw کو عوامی VPS پر چلانا محفوظ ہے؟

یہ ہو سکتا ہے، اگر آپ اسے ہارڈن کریں۔ OpenClaw ڈیزائن کے لحاظ سے طاقتور ہے: یہ شیل کمانڈز چلاتا ہے اور براؤزر کو کنٹرول کرتا ہے، لہذا ایک لاپرواہ سیٹ اپ واقعی خطرناک ہے، اور پروجیکٹ میں پہلے ہی ایک تنقیدی CVE (مارچ 2026 میں CVE-2026-32922) آ چکا ہے۔ اس کی سیکیورٹی ماڈل آپ سے، آپریٹر سے، حدود شامل کرنے کی توقع کرتی ہے۔ اسے ایک غیر مراعات یافتہ یوزر کے طور پر چلائیں، اس کے گیٹ وے کو ڈیفالٹ ڈینی فائر وال کے پیچھے لوپ بیک پر رکھیں، اس کی API کلیدز الگ تھلگ رکھیں، اور اسے ایک ہارڈنڈ systemd سروس کے طور پر چلائیں۔

کیا مجھے OpenClaw گیٹ وے کو انٹرنیٹ پر ظاہر کرنا چاہیے؟

نہیں۔ گیٹ وے ڈیفالٹ طور پر لوپ بیک سے بائنڈ ہوتا ہے، اور آپ کو اسے وہیں رکھنا چاہیے۔ یہ وہ واحد پروسیس ہے جو ایجنٹ کو کنٹرول کرتا ہے، لہذا ظاہر گیٹ وے کچھ اس چیز میں ریموٹ پاتھ ہے جو کمانڈز چلانے کا کام کرتی ہے۔ اگر آپ کو اس تک ریموٹلی پہنچنا ہے، تو پورٹ کھولنے کے بجائے VPN یا SSH سرنگ استعمال کریں۔

OpenClaw کس یوزر کے طور پر چلنا چاہیے؟

ایک مخصوص سسٹم یوزر جس میں کوئی لاگ ان شیل نہ ہو اور نہ ہی sudo، کبھی root نہیں۔ اگر ایجنٹ سمجھوتہ ہو جاتا ہے، تو اس کا یوزر اکاؤنٹ نقصان کی حد ہے، لہذا وہ اکاؤنٹ صرف /opt/openclaw جیسی ڈائرکٹری کے اندر اپنی فائلوں کا مالک ہونا چاہیے اور کچھ نہیں۔

میں OpenClaw کی API کلیدز کو کیسے محفوظ رکھوں؟

انہیں ایک ایسی فائل میں اسٹور کریں جو صرف OpenClaw یوزر پڑھ سکے (موڈ 600) اور اسے systemd کے EnvironmentFile کے ساتھ سروس میں لوڈ کریں۔ کلید کو یونٹ فائل سے، آپ کی شیل ہسٹری سے، اور کسی بھی git ریپوزٹری سے باہر رکھیں۔ اگر آپ کو کبھی شک ہو کہ یہ لیک ہو گئی ہے تو اسے روٹیٹ کریں۔