समस्या निवारण
यह पृष्ठ Mobile SSH की सामान्य समस्याओं और सर्वर-साइड SSH सेटिंग्स बदलने से पहले चलाई जाने वाली पहली जाँचों को कवर करता है।
कनेक्ट नहीं हो पा रहा
जाँचें:
- डिवाइस के पास नेटवर्क पहुँच है।
- सर्वर का होस्टनाम या IP पता सही है।
- SSH पोर्ट सही है, आमतौर पर
22। - कोई फ़ायरवॉल, VPN, कैरियर नेटवर्क या Wi-Fi नेटवर्क पोर्ट को ब्लॉक नहीं कर रहा।
- SSH सर्वर चल रहा है और आपके उपयोग किए जा रहे नेटवर्क से कनेक्शन स्वीकार करता है।
यदि वही होस्ट किसी अन्य डिवाइस से काम करता है, तो सटीक होस्ट, पोर्ट, उपयोगकर्ता नाम, कुंजी और नेटवर्क पथ की तुलना करें।
प्रमाणीकरण विफल
जाँचें:
- उपयोगकर्ता नाम की वर्तनी।
- पासवर्ड या कुंजी पासफ़्रेज़।
- सर्वर पासवर्ड लॉगिन, कुंजी लॉगिन, या दोनों की अनुमति देता है या नहीं।
- निजी कुंजी सर्वर उपयोगकर्ता के
authorized_keysमें किसी सार्वजनिक कुंजी से मेल खाती है या नहीं। - कुंजी फ़ाइल पूरी तरह आयात हुई या नहीं, हेडर और फ़ुटर लाइनों सहित।
एन्क्रिप्टेड निजी कुंजियों के लिए, पासवर्ड/पासफ़्रेज़ फ़ील्ड में पासफ़्रेज़ दर्ज करें।
निजी कुंजी आयात विफल
निजी कुंजी आयात सिस्टम फ़ाइल चयनकर्ता का उपयोग करता है। यदि आयात विफल होता है:
- पुष्टि करें कि चयनित फ़ाइल निजी कुंजी है, सार्वजनिक
.pubफ़ाइल नहीं। - फ़ाइल को किसी विश्वसनीय टेक्स्ट संपादक में खोलें और सत्यापित करें कि उसमें पूर्ण कुंजी ब्लॉक है।
- कुंजी को निजी कुंजी फ़ील्ड में मैन्युअल रूप से चिपकाने का प्रयास करें।
- पुष्टि करें कि कुंजी प्रकार समर्थित है: Android पर Ed25519, ECDSA (P-256/384/521) या RSA; iOS पर Ed25519 या ECDSA। DSA (
ssh-dss) किसी पर भी काम नहीं करता, और iOS RSA का समर्थन नहीं करता — उसके बजाय Ed25519 कुंजी बनाएँ।
कीबोर्ड इनपुट विलंबित या बदला हुआ है
Mobile SSH कीस्ट्रोक सीधे शेल को भेजता है, जिसमें स्वतः-सुधार और भविष्यसूचक सुझाव बंद रहते हैं, इसलिए कीबोर्ड को रिमोट तरफ़ पहुँचने से पहले टेक्स्ट दोबारा नहीं लिखना चाहिए। यदि आपका कीबोर्ड फिर भी इनपुट बदलता है, तो पुष्टि करें कि कोई सिस्टम-स्तरीय रिप्लेसमेंट या क्लिपबोर्ड टूल इसे बीच में नहीं पकड़ रहा, और ESC, TAB, CTRL, तीर, HOME, END, PGUP और PGDN जैसी टर्मिनल कुंजियों के लिए अतिरिक्त कुंजी पंक्ति का उपयोग करें।
tmux स्क्रॉलिंग अपेक्षा के अनुरूप नहीं
Mobile SSH टर्मिनल स्थिति के आधार पर स्क्रॉल व्यवहार बदलता है। tmux या अन्य वैकल्पिक-स्क्रीन प्रोग्रामों में, स्क्रॉल इशारे लोकल इतिहास स्क्रॉल करने के बजाय tmux कॉपी-मोड कमांड भेज सकते हैं। यदि tmux माउस मोड सक्षम है, तो ऐप माउस-व्हील एस्केप अनुक्रम भेजता है।
यदि स्क्रॉलिंग गलत लगती है:
- रिमोट सर्वर पर tmux माउस मोड सक्षम या अक्षम करने का प्रयास करें।
- अतिरिक्त कुंजी पंक्ति से
PGUPऔरPGDNउपयोग करें। - घने आउटपुट को स्क्रॉल करने से पहले फ़ुलस्क्रीन के लिए पैन पर डबल-टैप करें।
- यदि रिमोट टर्मिनल आकार पुराना दिखे तो tmux से डिटैच करके पुनः अटैच करें।
स्क्रीन लॉक के बाद सेशन टूट गया
Android पर, Mobile SSH डिस्कनेक्ट कम करने के लिए keepalive, फ़ोरग्राउंड सेवा, वेक लॉक, Wi-Fi लॉक और पुनः कनेक्ट प्रयासों का उपयोग करता है। फिर भी Android बैटरी नीतियाँ बैकग्राउंड कार्य रोक सकती हैं।
जाँचें:
- यदि आपका डिवाइस बैकग्राउंड ऐप्स को आक्रामक रूप से रोकता है तो Mobile SSH के लिए बैटरी अनुकूलन अक्षम करें।
- लंबे सेशन के दौरान Wi-Fi या मोबाइल डेटा स्थिर रखें।
- अनलॉक के बाद Mobile SSH फिर से खोलें और Active Sessions टैप करें।
- यदि आप चाहते हैं कि ऐप को स्वाइप कर हटा देने पर भी शेल चलते रहें, तो जाँचें कि Settings में Keep sessions running in background चालू है।
- यदि सर्वर ने SSH सेशन डिस्कनेक्ट किया, तो होम स्क्रीन से पुनः कनेक्ट करें — Continue बताता है कि क्या अब भी चालू है, और Tmux sessions बताता है कि सर्वर पर क्या प्रतीक्षा कर रहा है।
iOS पर, सिस्टम बैकग्राउंड में ऐप्स को निलंबित कर देता है, इसलिए ऐप से हटने या स्क्रीन लॉक होने के बाद कच्चा SSH कनेक्शन अनिश्चित काल तक खुला नहीं रखा जा सकता। एक छोटी छूट अवधि त्वरित ऐप स्विच को कवर करती है; इससे अधिक समय के लिए, सर्वर प्रोफ़ाइल पर Auto-attach tmux session सक्षम करें (या Eternal Terminal ट्रांसपोर्ट का उपयोग करें) ताकि पुनः कनेक्ट करने पर आप उसी शेल में वापस पहुँचें जहाँ आपने छोड़ा था।
फ़ाइल ट्रांसफ़र फ़ोन फ़ाइलें ब्राउज़ नहीं कर पा रहा
Mobile SSH, Android पर कोई स्टोरेज अनुमति नहीं माँगता। इसके बजाय लोकल पैन वही एक फ़ोल्डर दिखाता है जिसकी अनुमति आप सिस्टम फ़ोल्डर चयनकर्ता से देते हैं — यदि वह खाली है, तो Pick folder से कोई फ़ोल्डर चुनें। यह अनुमति बनी रहती है, इसलिए यह एक ही बार का काम है।
यदि रिमोट फ़ाइलें लोड होती हैं लेकिन लोकल नहीं, तो SSH कनेक्शन ठीक है और बात बस इतनी है कि आपने अभी तक कोई फ़ोल्डर नहीं दिया।
iOS पर लोकल पैन ऐप का दस्तावेज़ क्षेत्र दिखाता है, और आप सिस्टम के दस्तावेज़ और फ़ोटो चयनकर्ताओं के माध्यम से फ़ाइलें जोड़ते हैं। वहाँ के डाउनलोड Files ऐप में On My iPhone के नीचे भी दिखते हैं।
अपलोड या डाउनलोड विफल
जाँचें:
- SSH सेशन अभी भी कनेक्ट है।
- रिमोट निर्देशिका मौजूद है।
- रिमोट उपयोगकर्ता को पथ पढ़ने या लिखने की अनुमति है।
- लोकल गंतव्य लिखने योग्य है।
- डिवाइस पर पर्याप्त खाली स्थान है।
- बड़े ट्रांसफ़र के लिए नेटवर्क स्थिर है।
पोर्ट फ़ॉरवर्ड विफल
जाँचें:
- लोकल पोर्ट
1और65535के बीच है। - लोकल पोर्ट पहले से उपयोग में नहीं है।
- टनल स्ट्रिंग
PORTयाLOCAL:REMOTEHOST:REMOTEहै। - रिमोट होस्ट और रिमोट पोर्ट SSH सर्वर से पहुँच योग्य हैं।
- SSH सर्वर TCP फ़ॉरवर्डिंग की अनुमति देता है।
डीबग लॉग
दोनों प्लेटफ़ॉर्म अलग-अलग चीज़ें रिकॉर्ड करते हैं, इसलिए वही चुनें जो आपकी समस्या से मेल खाता हो।
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 पर, वह सब जो आपने टाइप किया।