# اے آئی ایجنٹس کو محفوظ طریقے سے منسلک کریںWebshipکا/کی/کےMCP سرور
ایکMCP ویب سرور سے رابطہ ایک چیٹ ویجیٹ نہیں ہے۔ یہ ایک آپریشنز انٹرفیس ہے جو پروڈکشن کی حالت کا معائنہ کر سکتا ہے، راستہ اور سیکیورٹی پالیسی بدل سکتا ہے، سرٹیفکیٹس کو دوبارہ لوڈ کر سکتا ہے، اسٹاٹک ریلیزز کو فعال کر سکتا ہے، بیڑے کی تبدیلیوں کو مربوط کر سکتا ہے، اور ایک دستخط شدہ انسٹال کر سکتا ہے۔Webship اپ ڈیٹ۔
اس کے مطابق سلوک کریں: ایک مراعات یافتہ انتظامی API کے طور پر۔ سب سے محفوظWebship سیٹ اپ رکھتا ہےMCP پبلک ڈیٹا پلین سے سننے والے کو بند کرتا ہے، اسے لوپ بیک سے باندھتا ہے، اسے محفوظ کرتا ہےTLS 1.3 اور ایک مضبوط بیئرر ٹوکن، اور اسے ایک مصدقہ SSH ٹیونل کے ذریعے حاصل کرتا ہے۔
یہ رہنما وہ ترتیب بناتا ہے، وضاحت کرتا ہے کہ ہر حد کیوں موجود ہے، اور آپ کو ایک چیک لسٹ دیتا ہے تاکہ اسے چلانے میں آسانی کو خطرے میں ڈالے بغیر کام کیا جا سکے۔
اعتماد کی حد سے شروع کریں
Webshipکا عوامی ٹریفک اورMCP ٹریفک کے لیے الگ سامعین استعمال کریں۔MCP کنٹرول پلین ڈیفالٹ کے مطابق غیر فعال ہوتا ہے اور عام HTTP کبھی شیئر نہیں کرتا، HTTP/2, HTTP/3، یا WebTransport سننے والا۔ جب فعال ہوتا ہے، یہ کام دیتا ہےMCP ایک مخصوص کے اوپرTLS 1.3 HTTP/1.1 اختتام نقطہ۔
ایک محفوظ تعیناتی میں چار آزاد کنٹرول ہوتے ہیں:
- نیٹ ورک کی رسائی:MCP سننے والا جڑتا ہے
127.0.0.1، نہ تو عوامی ہے اور نہ ہی نجی LAN ایڈریس۔ - ٹرانسپورٹ شناخت: کلائنٹ ایک سرٹیفکیٹ کی تصدیق کرتا ہے جو ایک قابل اعتماد CA نے جاری کیا ہو۔
- ایپلیکیشن کی تصدیق: ہر درخواست ایک مضبوط بیئرر ٹوکن کے ساتھ آتی ہے۔
- انتظامی رسائی: آپریٹرز ایک مصدقہ SSH اکاؤنٹ اور ٹنل کے ذریعے لوپ بیک سننے والے تک پہنچتے ہیں۔
ان میں سے کوئی بھی کنٹرول دوسرے کی جگہ نہیں لیتا۔ خفیہ نیٹ ورک کے راستے کے بغیر TLS اب بھی ایک توثیقی سطح کو ظاہر کرتا ہے۔ سرٹیفکیٹ کی تصدیق کے بغیر ایک سرنگ آخری نقطے کی شناخت کو مبہم بناتی ہے۔ ایک عالمی طور پر قابلِ پڑھائی فائل میں موجود بیئرر ٹوکن کوئی راز نہیں ہے۔
سرٹیفیکیٹ اور ٹوکن تیار کریں
ایک مخصوص جاری کریںMCP اپنے داخلی CA سے سرٹیفیکیٹ۔ نیچے دکھائے گئے ٹنل کے لیے، شامل کریںlocalhost اور127.0.0.1 سرٹیفکیٹ کے سبجیکٹ متبادل ناموں میں، پھر جاری کرنے والے CA کو انسٹال کریںMCP کلائنٹ مشین کا ٹرسٹ اسٹور۔ غیر محفوظ TLS آپشن کے ساتھ ٹرسٹ ایرر کو حل نہ کریں۔
کم از کم 32 پرنٹ ہونے والے ASCII بائٹس اور بغیر کسی وقفے کے ایک منفرد ٹوکن بنائیں۔ ایک 32 بائٹ کا بے ترتیب قدر جو ہیکساڈیسیمل میں انکوڈ ہو، آپ کو 64 محفوظ حروف دیتا ہے:
umask 077
openssl rand -hex 32Webship فی الحال پڑھتا ہےMCP محفوظ شدہ سے براہِ راست ٹوکنTOML ترتیب;token_file کی حمایت نہیں کی جاتی۔ نتیجہ کو ایک ترتیب کے فائل میں محفوظ کریں جو صرف پڑھنے کے قابل ہو Webship سروس اکاؤنٹ اور اس کا انتظامی گروپ۔ ٹوکن کو سسٹمڈ یونٹ، شیل ہسٹری، ٹکٹ، چیٹ پیغام، یا AI ماڈل کو بھیجے گئے پرامپٹ میں نہ رکھیں۔
ایک عام ڈیبیان میزبان پر:
sudo chown root:webship /etc/webship/production.toml
sudo chmod 0640 /etc/webship/production.toml
sudo chown root:webship /etc/webship/mcp-cert.pem /etc/webship/mcp-key.pem
sudo chmod 0644 /etc/webship/mcp-cert.pem
sudo chmod 0640 /etc/webship/mcp-key.pemسروس صارف اور گروپ کو اپنی تنصیب کے مطابق ڈھالیں۔ نجی کلید اور ترتیب کو پڑھنے کے قابل ہونا چاہیے۔Webship، لیکن غیر متعلقہ کھاتوں سے نہیں۔
مستقل سننے والے کو فعال کریں
اس حصے کو فعال میں شامل کریںWebship ترتیب:
[security.mcp]
enabled = true
listen = "127.0.0.1:9443"
token = "replace-with-your-generated-64-character-token"
allowed_ips = []
expose_remote = false
[security.mcp.tls]
cert = "/etc/webship/mcp-cert.pem"
key = "/etc/webship/mcp-key.pem"خالیallowed_ips فہرست اینڈ پوائنٹ کو نہیں کھولتی۔ لوپ بیک کلائنٹس پہلے سے طے شدہ طور پر اجازت یافتہ رہتے ہیں۔expose_remote = false مقصود حد کو واضح کرتا ہے: اگر بعد میں کوئی اسے بدل دےlisten ایک غیر لوپ بیک ایڈریس پر، Webship کنٹرول پلیٹ کو خاموشی سے شائع کرنے کی بجائے کنفگریشن کو مسترد کرتا ہے۔
Webship ایک فعال کو بھی مسترد کرتا ہےMCP TLS کے بغیر، ٹوکن کے بغیر، مختصر یا خالی جگہ والا ٹوکن، یا خالی سرٹیفیکیٹ پاتھ کے ساتھ سننے والا۔ عوامی پلیس ہولڈر ٹوکنز کو ریموٹ ایکسپوزر سے پہلے مسترد کر دیا جاتا ہے۔
دوبارہ شروع کرنے سے پہلے تصدیق کریں
MCP سننے والا، TLS شناخت، اور ٹوکن میں تبدیلیاں کنٹرول پلین کو دوبارہ تعمیر کرتی ہیں، اس لیے انہیں عمل کی دوبارہ شروعات کی ضرورت ہوتی ہے۔ پہلے مکمل کنفیگریشن کی توثیق کریں:
/usr/local/bin/webship --check-config --config /etc/webship/production.toml
sudo systemctl restart webship
sudo systemctl status webship --no-pagerتصدیق کریں کہ سننے والا صرف لوپ بیک پر موجود ہے:
ss -ltn | grep '127.0.0.1:9443'پورٹ 9443 کو میزبان کے عوامی فائر وال کے قواعد میں شامل نہ کریں۔ اگلا مرحلہ اسے SSH کے ذریعے پہنچتا ہے۔
نجی سرنگ بنائیں
ایڈمنسٹریٹر ورک سٹیشن سے، ایک مقامی پورٹ کو آگے بڑھائیںWebshipلوپ بیک لسٹنر:
ssh -N \
-L 127.0.0.1:19443:127.0.0.1:9443 \
webship-admin@edge.example.comیہMCP کلائنٹ اب جڑتا ہےhttps://localhost:19443/mcp. ٹی سی پی ایس ایس ایچ سرور تک پہنچتا ہے، ایس ایس ایچ کنکشن کو ہوسٹ تک لے جاتا ہے، اور ہوسٹ آخری کنکشن کھولتا ہےWebship لوپ بیک پر۔ SSH سیشن بند کرنے سے وہ راستہ فوری طور پر ختم ہو جاتا ہے۔
کلیدی بنیاد پر ایس ایس ایچ تصدیق کا استعمال کریں، یہ محدود کریں کہ کون سے منتظمین سرنگ کھول سکتے ہیں، اور اپنے معمول کے ہوسٹ-رسائی کے کنٹرولز لاگو کریں۔ اگر جمپ ہوسٹ کی ضرورت ہو، تو اسے رکھیںMCP سننے والاWebship میزبان کے لوپ بیک انٹرفیس اور SSH راستے کو بڑھائیں بجائے اس کے کہ سننے والے کو وسیع کریں۔
ترتیب دیں MCP گاہک
کلائنٹ کی تشکیل کے فارمیٹس مختلف ہیں، لیکن ایک عام HTTPMCP داخلہ اس طرح نظر آتا ہے:
{
"mcpServers": {
"webship-production": {
"url": "https://localhost:19443/mcp",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}کلائنٹ کے محفوظ راز کے میکانزم کو استعمال کریں جب اس کے پاس ہو۔ بصورت دیگر، کلائنٹ کی ترتیب کو موجودہ آپریٹنگ سسٹم کے اکاؤنٹ تک محدود کریں۔ HTTP کلائنٹ—ماڈل نہیں—کو اجازت دہی ہیڈر منسلک کرنا چاہیے۔ کبھی بھی زندہ ٹوکن کو گفتگو میں نہ چسپاں کریں۔
سرٹیفیکیٹ کی تصدیق کو فعال رکھیں۔ اگر کلائنٹ سرٹیفیکیٹ کو نامنظور کرتا ہے تو سرٹیفیکیٹ کے سبجیکٹ آلٹرنیٹیو ناموں کو درست کریں یا صحیح داخلی CA انسٹال کریں۔ مستقل بائی پاس نہ ڈالیں۔
پہلے سیشن کو صرف پڑھنے کے لیے بنائیں
سرنگ اور کلائنٹ کے جڑنے کے بعد، کھوج اور معائنہ کے ساتھ آغاز کریں:
- پوچھیں
tools/list; اس کا جواب چل رہی ریلیز کے لیے معتبر دلائل کا خاکہ ہے۔ - کال کریں
webship.get_configاور موجودہ تشکیل کے ورژن کو ریکارڈ کریں۔ - معائنہ کریں
webship.reverse_proxy.get_status,webship.security.get_status,webship.ddos.get_status، اورwebship.tls.get_statusجیسا کہ موزوں ہو۔ - استعمال کریں
webship.policy.explainاورwebship.security.simulateپالیسی تبدیل کرنے سے پہلے۔ - تصدیق کریں کہ واپس کی گئی ترتیب بیئرر ٹوکنز کو پوشیدہ کرتی ہے۔
صرف تب ہی کسی غیر پیداواری ماحول میں کسی تغیر کی جانچ کریں۔Webshipکی ترتیب میں تبدیلیوں کے لیے موجودہ ورژن آئی ڈی کی ضرورت ہوتی ہے۔ ایک پرانی تحریر کو رد کر دیا جاتا ہے بجائے کے نئے تبدیلی کو اوور رائٹ کرنے کے۔ امیدوار پالیسی کو فعال کرنے سے پہلے شیڈو ویریفکیشن اور ٹریفک-لیب مناظر کے ساتھ چیک کیا جا سکتا ہے۔
Webship منتخب شدہ لائیو سیکیورٹی کی ڈاؤن گریڈز سے بھی انکار کرتا ہے۔ ایک MCP درخواست ایک فعال WAF، DDoS پرت، API شیلڈ، بوٹ چیلنج، ایج-اتھ پالیسی، یا رسپانس-ہیڈر پرت کو بند نہیں کر سکتی۔ پروسیس کے پابند سننے والا، پروٹوکول، ورکر، رن ٹائم، اورMCP-تصدیق کے تبدیلیوں کے لیے جان بوجھ کر دوبارہ آغاز کی ضرورت ہوتی ہے۔
وہ محافظ غلطیوں کو کم کرتے ہیں؛ وہ ہر مجاز کارروائی کو بے ضرر نہیں بناتے۔ ٹوکن ایک طاقتور کنٹرول سطح فراہم کرتا ہے، جس میں اپڈیٹ اور ریلیز کے آپریشن شامل ہیں۔ تجویز کردہ ٹول کالز کا جائزہ بالکل اسی طرح لیں جیسے آپ ایڈمنسٹریٹر کے شیل کمانڈ کا جائزہ لیتے ہیں۔
اگر ریموٹ بائنڈنگ ناگزیر ہو
لوپ بیک پلس SSH تجویز کردہ ڈیزائن ہے۔ اگر آپ کے ماحول کو پرائیویٹ نیٹ ورک لسنر کی ضرورت ہے، تو استثناء کو واضح کریں:
[security.mcp]
enabled = true
listen = "10.20.0.15:9443"
expose_remote = true
allowed_ips = ["10.20.10.0/24"]
token = "replace-with-your-generated-64-character-token"پہلے کے مثال سے TLS بلاک رکھیں، ایک سرٹیفکیٹ استعمال کریں جو پرائیویٹ DNS نام سے میل کھاتا ہو، اور میزبان اور نیٹ ورک فائر والز پر ایک ہی سورس رینج کو نافذ کریں۔ کبھی استعمال نہ کریں0.0.0.0/0 یا::/0 بطور سہولت ایپلی کیشن الاؤ لسٹ کی اجازت دیں۔ یاد رکھیں کہ ایک ایپلی کیشن الاؤ لسٹ اس ماخذ ایڈریس کو دیکھتی ہے جو حقیقت میں پہنچتا ہے۔Webship; جب اس کے سامنے لوڈ بیلنسر، NAT گیٹ وے، یا سروس میش موجود ہو تو رویے کی تصدیق کریں۔
ریموٹ ایکسپوژر مرکزی رسائی کے لاگز، مختصر عملیاتی ونڈوز، اور تیز گردش کی قدر بڑھاتا ہے۔ یہ صرف اس وجہ سے ضروری نہیں ہے کہMCP کلائنٹ کسی اور مشین پر چل رہا ہے؛ یہ بالکل وہی ہے جو SSH ٹنل حل کرتا ہے۔
کنٹرول پین کو جان بوجھ کر چلائیں
پیداوار کے لیے اس چیک لسٹ کا استعمال کریں:
- رکھیںMCP جہاں کسی ایجنٹ یا آپریٹر کو اس کی ضرورت نہ ہو وہاں غیر فعال کر دیا گیا۔
- ڈیفالٹ کے طور پر لوپ بیک سے منسلک کریں اور ایک SSH ٹنل استعمال کریں۔
- ایک مخصوص TLS شناخت استعمال کریں اور سرٹیفکیٹ کی تصدیق کو فعال رکھیں۔
- ہر کے لیے ایک منفرد بیئرر ٹوکن تیار کریںWebship ماحول۔
- تحفظ کریںTOML، کلائنٹ کی ترتیب، TLS کی کلید، اور SSH کیز کے ساتھ فائل سسٹم کی اجازتیں۔
- ترقی، جانچ، اور پیداوار کے اسناد کو الگ کریں۔
- تبدیلیوں سے پہلے حالت اور پالیسی-سمولیشن ٹولز کے ساتھ سیشنز شروع کریں۔
- محفوظ کریں اور جائزہ لیںWebshipسیکیورٹی آڈٹ کے واقعات۔
- ٹوکن کو گھمائیں اور دوبارہ شروع کریںWebship مشکوک نمائش کے بعد۔
- انتظامی سیشن ختم ہونے پر سرنگیں بند کریں۔
واقعے کے جواب کے لیے، فعال ٹنلز بند کریں، SSH اکاؤنٹ محدود کریں، تبدیل کریں MCP محفوظ شدہ میں ٹوکنTOMLدوبارہ شروع کریںWebshipاور حالیہ سیکیورٹی آڈٹ اور کنفیگریشن ورژن کے ریکارڈ کا جائزہ لیں۔ اگر TLS نجی کلید ظاہر ہو سکتی ہے تو، اسی ری اسٹارٹ کے حصے کے طور پر نیا سرٹیفیکیٹ اور کلید جاری کریں۔ اس کے بعد پرانا ٹوکن آزمائیں اور تصدیق کریں کہ اسے مسترد کیا گیا ہے۔
ایک کنٹرول پلین کو کنٹرول پلین ہی رہنا چاہیے
MCP یہ مفید ہے کیونکہ ایک ایجنٹ حقیقی حالت کا جائزہ لے سکتا ہے اور تصدیق شدہ تبدیلیاں لاگو کر سکتا ہے بغیر ان عملیات کو عوامی درخواست کے راستے سے گزارے۔ یہ فائدہ ختم ہو جاتا ہے اگر کنٹرول لسنر ایک اور انٹرنیٹ اینڈ پوائنٹ بن جائے۔
حد کو سادہ رکھیں: ایک علیحدہ سننے والا، لوپ بیک رسائی، تصدیق شدہ TLS، ایک محفوظ بیئرر سند، ایک مستند شدہ ٹنل، ورژن چیک شدہ تبدیلیاں، اور طاقتور آپریشنز کے لیے انسانی جائزہ کا عمل۔Webship پروٹوکول اور حفاظتی اقدامات فراہم کرتا ہے؛ آپریٹر فیصلہ کرتا ہے کہ کون ان تک پہنچ سکتا ہے۔
یہ رہنما اس پر مبنی ہے Webship 1.3.1 آپریٹر کی دستاویزات، فراہم کردہ کنفیگریشن کے مثالیں،MCP تصدیق اور ٹرانسپورٹ کوڈ، رن ٹائم کنفیگریشن گارڈز، اور ٹول کیٹلاگ۔ موجودہ کا جائزہ لیں Webship دستاویزات اور چل رہا سرور کا tools/list اسے کسی دوسرے ریلیز پر لاگو کرنے سے پہلے جواب۔