مسائل کا حل

یہ صفحہ Mobile SSH کے عام مسائل اور سرور-سائیڈ SSH ترتیبات بدلنے سے پہلے چلائی جانے والی پہلی جانچوں کا احاطہ کرتا ہے۔

جُڑ نہیں سکتے

جانچیں:

اگر وہی ہوسٹ کسی اور آلے سے کام کرے تو بالکل ہوسٹ، پورٹ، صارف نام، کلید اور نیٹ ورک راستہ موازنہ کریں۔

سرور شناخت پر توجہ درکار ہے

دونوں پلیٹ فارم اسناد بھیجنے سے پہلے SSH سرور شناخت جانچتے ہیں۔ iOS میں نئی ہوسٹ کلید کا فنگرپرنٹ منظور کر کے اعتماد اور دوبارہ رابطہ چنیں۔ Android کی ترتیبات ← عمومی ← حفاظت ← نئی SSH شناخت خود قبول کریں پہلے سے فعال ہے؛ پہلی خام کلید محفوظ ہوتی ہے، بعد کے رابطے اسی سے ملنے چاہییں۔ نئی شناخت خود جانچنے کے لیے اسے بند کریں۔

نئی یا بدلی کلید کا SHA-256 فنگرپرنٹ معتبر ذریعے سے منتظم کے ساتھ ملائیں۔ تبدیلی سرور بدلنے یا غیر متوقع سرور کی علامت ہو سکتی ہے؛ تصدیق سے پہلے پرانی شناخت حذف نہ کریں۔ محفوظ شناخت ترتیبات میں دیکھیں۔ متبادل پتے اور جمپ ہوسٹ تصدیق نہیں چھوڑتے۔

Android محدود ہوسٹ سرٹیفکیٹ حکام اور منسوخیاں بھی دیتا ہے۔ نامعلوم حکام، زائدالمیعاد یا غلط سرٹیفکیٹ اور منسوخ کلید پہلی خودکار منظوری کے باوجود رکتے ہیں۔ iOS میں ترتیبات ← سرور شناخت ← منسوخ کلید درآمد کریں محدود OpenSSH @revoked Ed25519/ECDSA قبول کرتا ہے۔ چسپاں متن میں غیر معاون اندراج ہو تو مکمل متن رد ہوتا ہے؛ CA، سرٹیفکیٹ، RSA اور ہیش شدہ ہوسٹ نام معاون نہیں۔ منسوخی نئے و دوبارہ رابطے میں سابق اعتماد سے مقدم ہے مگر موجودہ رابطہ بند نہیں کرتی۔ شناخت و منسوخیاں بیک اپ سے خارج ہیں۔ iOS شیئر توسیع سے پہلے نامعلوم سرور مرکزی ایپ میں جانچیں۔

جمپ ہوسٹ سے رابطہ نہیں ہوتا

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

حذف یا ناقابل حل درمیانی سرور کی جگہ براہ راست اتصال نہیں کیا جاتا۔ راستہ درست کر کے دوبارہ جڑیں۔ Android رابطے کی حالت اور لاگ ان ریکارڈ ناکام مرحلہ آخری سرور سے الگ دکھاتے ہیں۔

توثیق ناکام

جانچیں:

خفیہ کردہ نجی کلیدوں کے لیے، پاس ورڈ/پاس فریز خانے میں پاس فریز درج کریں۔

Android ریموٹ ssh یا git کے لیے محفوظ سرور میں SSH ایجنٹ فارورڈ کریں اور سرور کی اجازت ضروری ہے۔ صرف محفوظ قابل استعمال کلیدی اسناد پیش ہوتی ہیں۔ زیر التوا اجازت/انکار یا حفاظتی کلید سوال اس رابطے کا ٹرمینل، فائلیں اور سرنگیں 30 سیکنڈ تک روک سکتا ہے؛ ایپ یا اطلاع سے جواب دیں۔

نجی کلید درآمد ناکام

نجی کلید درآمد سسٹم فائل پکر استعمال کرتا ہے۔ اگر درآمد ناکام ہو:

Android حفاظتی کلید جواب نہیں دیتی

Android، USB یا NFC پر CTAP2/FIDO2 ed25519-sk اور ecdsa-sk کی حمایت کرتا ہے۔ وہی جسمانی کلید استعمال کریں جس نے درآمد شدہ سند بنائی تھی۔ USB ہوسٹ معاونت اور اجازت چاہیے؛ NFC فعال رکھیں اور عمل مکمل ہونے تک کلید فون سے لگائے رکھیں۔ مطالبے پر PIN درج کر کے کلید چھوئیں۔

سرور کو OpenSSH 8.2 یا بعد اور منتخب sk-* الگورتھم کی اجازت چاہیے۔ صرف U2F کلید اور رہائشی اسناد کی دریافت معاون نہیں۔ کلید ڈھونڈتے وقت لاگ ان کی مدت ختم ہو سکتی ہے، پہلے تیار رکھیں۔ پس منظر درخواست پر حفاظتی کلید اطلاع کھولیں یا ایپ پر لوٹیں۔ iOS ہارڈویئر حفاظتی کلید شناخت نہیں دیتا۔

کی بورڈ ان پٹ میں تاخیر یا تبدیلی

Android ان پٹ براہ راست بھیجتا ہے اور درستی و پیش گوئی بند رکھتا ہے۔ iOS میں املا اور تجاویز پہلے سے فعال ہے، صوتی ان پٹ اور موجودہ سطر کی درستی ملتی ہے۔ شیل متن غیر متوقع بدلے تو اسے بند اور کی بورڈ تجاویز دیکھیں، پھر نئی ترتیب کے لیے نیا پین کھولیں۔

ESC، TAB، CTRL، تیر، HOME، END، PGUP اور PGDN کے لیے اضافی کلیدی قطار استعمال کریں۔ رکا نیٹ ورک بھی تاخیر کرتا ہے۔ Android عنوان جواب نہیں یا نہیں بھیجا دکھاتا ہے؛ دوبارہ رابطے کی ٹائپنگ چھوڑ دی جاتی ہے، نئے شیل میں نہیں دہرائی جاتی۔ اتصال کا انتظار کر کے پرامپٹ دیکھیں اور صرف ضروری متن دوبارہ لکھیں۔

tmux اسکرولنگ توقع کے مطابق نہیں

Mobile SSH ٹرمینل کی حالت کی بنیاد پر اسکرول رویہ بدلتا ہے۔ tmux یا دیگر متبادل-اسکرین پروگراموں میں، اسکرول اشارے مقامی تاریخ اسکرول کرنے کے بجائے tmux کاپی-موڈ کمانڈز بھیج سکتے ہیں۔ اگر tmux ماؤس موڈ فعال ہو تو ایپ ماؤس-وہیل ایسکیپ سلسلے بھیجتی ہے۔

اگر اسکرولنگ غلط محسوس ہو:

Android میں معیاری کاپی موڈ نشان نظر آئے تو نیچے تک اسکرول ایپ کے tmux کاپی موڈ سے نکالتا ہے۔ کسٹم یا تقسیم شدہ ترتیب میں نشان نہ ہو تو دستی خروج چاہیے۔ سیشن بدلتے وقت مینیجر کے سرور اور tmux ساکٹ کے ساتھ نام بھی جانچیں۔

اسکرین لاک کے بعد سیشن منقطع

Android پر، Mobile SSH منقطع ہونے کم کرنے کے لیے keepalive، فورگراؤنڈ سروس، ویک لاک، Wi-Fi لاک اور دوبارہ کنکشن کی کوششیں استعمال کرتا ہے۔ Android کی بیٹری پالیسیاں پھر بھی پس منظر کا کام روک سکتی ہیں۔

جانچیں:

iOS پس منظر ایپ معطل کرتا ہے، اس لیے سوئچ یا اسکرین لاک کے بعد خام SSH ہمیشہ کھلا نہیں رہتا۔ مختصر مہلت تیز تبدیلی سنبھالتی ہے۔ رابطے پر منسلک ہوں میں tmux، Herdr یا Zellij چنیں، یا Eternal Terminal استعمال کریں تاکہ رابطے کے بعد کام جاری ہو۔ ملٹی پلیکسر سرور پر چلتا رہنا چاہیے؛ Eternal Terminal جمپ ہوسٹ راستہ نہیں لیتا۔

فائل منتقلی فون فائلیں براؤز نہیں کر سکتی

Mobile SSH، Android پر کوئی اسٹوریج اجازت نہیں مانگتی۔ اس کے بجائے مقامی پین صرف وہ ایک فولڈر دکھاتا ہے جس کی اجازت آپ سسٹم کے فولڈر پکر سے دیتے ہیں — اگر یہ خالی ہو تو Pick folder سے کوئی فولڈر چنیں۔ یہ اجازت برقرار رہتی ہے، اس لیے یہ ایک ہی بار کا مرحلہ ہے۔

اگر ریموٹ فائلیں لوڈ ہوں مگر مقامی نہ ہوں تو SSH کنکشن ٹھیک ہے اور بات صرف اتنی ہے کہ ابھی آپ نے کوئی فولڈر نہیں دیا۔

iOS مقامی پین ایپ دستاویزات سے شروع ہوتا ہے۔ میرا فون ← مقامی فولڈر منتخب کریں سے Files کا دوسرا فولڈر یاد رکھا جا سکتا ہے۔ فراہم کنندہ یا اجازت دستیاب نہ ہو تو دوبارہ چنیں یا ایپ فولڈر پر لوٹیں۔ ایپ ڈاؤن لوڈ میرے iPhone پر جبکہ بیرونی فائلیں اصل فراہم کنندہ کی جگہ رہتی ہیں۔ بیک اپ فولڈر اجازت منتقل نہیں کرتا۔

اپ لوڈ یا ڈاؤن لوڈ ناکام

جانچیں:

پورٹ فارورڈ ناکام

جانچیں:

Android VPN یا پراکسی ٹریفک نہیں لے جاتی

SSH VPN، Shadowsocks اور OpenVPN دوبارہ جڑتے وقت پکڑی ٹریفک بند رکھ سکتے ہیں تاکہ براہ راست اتصال نہ ہو۔ بند کرنے سے حفاظت ختم ہوتی ہے۔ VPN سرور کے فراہم کنندہ یا منتظم کی انٹرنیٹ پابندی نہیں ہٹاتا۔

بیک اپ نے سب کچھ بحال نہیں کیا

درآمد پیش منظر اور ضم یا بدلیں کا رویہ دیکھیں۔ پرانے یا جزوی بیک اپ میں غائب پورے حصے تبدیل نہیں ہوتے۔ مکمل بیک اپ معاون ترجیحات، اور Android میں VPN و پراکسی پروفائل بھی شامل کرتا ہے۔ ہر پلیٹ فارم مخصوص چیز iOS پر منتقل نہیں ہوتی؛ پرانی ایپس نئے مکمل بیک اپ کو رد کر سکتی ہیں۔

ہوسٹ شناخت، نظام اجازت اور منتخب فولڈر رسائی آلے تک محدود ہیں۔ نئے آلے پر ہوسٹ جانچیں اور فولڈر/VPN اجازت دیں۔ ہارڈویئر کلید کی اسناد کو جسمانی کلید اب بھی چاہیے۔ درآمد سے VPN شروع نہیں ہوتا؛ شروع کرنے سے پہلے بحال پروفائل دیکھیں۔

ریموٹ ڈیسک ٹاپ دستیاب نہیں یا سائز نہیں بدلتا

منسلک SSH سیشن سے ڈیسک ٹاپ کھولیں اور سرور کی مقامی TCP فارورڈ اجازت دیکھیں۔ Linux پر غائب پیکج پیغام کے مطابق ڈیسک ٹاپ/VNC نصب کریں۔ Android، Wayland کنسول کا عکس نہیں دکھا سکتا؛ معاون مجازی ڈیسک ٹاپ چنیں۔

macOS میں Mac کی ترتیبات سے اسکرین شیئرنگ فعال کریں۔ Android، Mac اکاؤنٹ شناخت دیتا ہے؛ iOS کو اسکرین شیئرنگ میں روایتی VNC پاس ورڈ رسائی چاہیے، اور Mac اکاؤنٹ کے بجائے اسکرین شیئرنگ پاس ورڈ استعمال ہوتا ہے۔ ناظر موجودہ Mac اسکرین دکھاتا ہے؛ ریزولیوشن شاید Mac پر بدلنا ہو۔ مجازی ڈیسک ٹاپ کا فوری سائز سرور معاونت مانگتا ہے؛ ایپ کے بنائے ڈیسک ٹاپ کو دوبارہ شروع کرنے کی تصدیق ضروری ہے اور اس کے پروگرام بند ہوں گے۔ ناظر چھوڑنے پر ریموٹ ڈیسک ٹاپ چلتا رہتا ہے۔

ڈیبگ لاگز

دونوں پلیٹ فارم مختلف چیزیں ریکارڈ کرتے ہیں، اس لیے وہی چنیں جو آپ کے مسئلے سے مطابقت رکھتا ہو۔

Android — ٹرمینل اور رینڈرنگ۔ Settings → Debugging → Show Debug and Logs buttons فعال کریں، پھر اسٹارٹ اسکرین پر ظاہر ہونے والا Debug بٹن استعمال کریں۔ یہ ٹرمینل واقعات، SSH ڈیٹا سائز، ٹچ ان پٹ، سائز تبدیلی کا رویہ اور ٹنل لائف سائیکل ریکارڈ کرتا ہے۔ ریکارڈنگ شروع کرنے پر یہ پہلے خبردار کرتا ہے کہ اس میں آپ کی ٹائپ کی ہوئی ہر کی محفوظ ہوتی ہے، پاس ورڈز سمیت۔ روکنے پر یہ ایک آرکائیو آپ کے Downloads فولڈر میں لکھ دیتا ہے۔

iOS — کنکشن اور دوبارہ جڑنا۔ Settings → Diagnostics → Record debug log آن کریں۔ یہ ہر ڈائل کیا گیا پتہ اور اس کی ناکامی کی وجہ، دوبارہ جڑنے کی کوششیں اور ان کا بیک آف، ٹوٹے ہوئے کنکشن، “peer stopped answering keepalives”، نیٹ ورک تبدیلیاں، اور tmux کمانڈز اور ان کی خرابیاں ریکارڈ کرتا ہے۔ Settings میں سطروں کی گنتی لائیو دکھائی جاتی ہے تاکہ آپ تصدیق کر سکیں کہ ریکارڈنگ چل رہی ہے، اور Export Debug Log اسے متنی فائل کے طور پر شیئر کرتا ہے۔ یہ میموری میں رکھا جاتا ہے اور صرف ایپ کے موجودہ سیشن کا احاطہ کرتا ہے۔

شیئر کرنے سے پہلے کسی بھی ڈیبگ لاگ یا آرکائیو کا جائزہ لیں۔ یہ مسائل کے حل کے لیے ہیں اور سرور کے نام، پتے، اوقات یا دیگر ماحول کی تفصیلات ظاہر کر سکتے ہیں — اور Android پر، وہ سب کچھ جو آپ نے ٹائپ کیا۔