पोर्ट फ़ॉरवर्डिंग
Mobile SSH Android और iOS दोनों पर लोकल SSH पोर्ट फ़ॉरवर्डिंग का समर्थन करता है। डिवाइस पर एक लोकल पोर्ट 127.0.0.1 पर सुनता है और SSH कनेक्शन के माध्यम से ट्रैफ़िक को रिमोट होस्ट और पोर्ट पर फ़ॉरवर्ड करता है।
सहेजे गए टनल का सिंटैक्स
पोर्ट-फ़ॉरवर्डिंग नियम अल्पविराम-पृथक होते हैं। प्रत्येक प्रविष्टि दो रूपों में से एक उपयोग करती है:
PORT
LOCAL:REMOTEHOST:REMOTE
संक्षिप्त रूप:
8080
यह डिवाइस पर 127.0.0.1:8080 बाइंड करता है और सर्वर के दृष्टिकोण से इसे localhost:8080 पर फ़ॉरवर्ड करता है।
पूर्ण रूप:
3000:localhost:3000
यह डिवाइस पर 127.0.0.1:3000 बाइंड करता है और SSH के माध्यम से इसे रिमोट साइड पर localhost:3000 पर फ़ॉरवर्ड करता है।
कई फ़ॉरवर्ड:
8080, 3000:localhost:3000, 15432:db.internal:5432
सहेजे गए सर्वर में टनल जोड़ें
- Saved Servers खोलें।
- सर्वर प्रोफ़ाइल जोड़ें या संपादित करें।
- Port forwards में फ़ॉरवर्डिंग नियम दर्ज करें।
- सर्वर सहेजें।
- सर्वर से कनेक्ट करें।
SSH सेशन के कनेक्ट होने के बाद ऐप सहेजे गए फ़ॉरवर्ड लागू करता है।
टनल सर्वर प्रोफ़ाइल की होती हैं
फ़ॉरवर्ड सहेजे गए सर्वर पर घोषित किए जाते हैं और उस सर्वर के कनेक्ट होने पर उठा दिए जाते हैं। किसी भी प्लेटफ़ॉर्म पर सेशन के बीच में टनल जोड़ने या हटाने की अलग स्क्रीन नहीं है: अपने फ़ॉरवर्ड बदलने के लिए सर्वर प्रोफ़ाइल संपादित करें और फिर से कनेक्ट करें।
यह एक सोचा-समझा समझौता है — प्रोफ़ाइल में रहने वाली टनल हर बार कनेक्ट होने पर लौट आती है, यहाँ तक कि किसी नए नेटवर्क पर फिर से जुड़ने के बाद भी, और आपको उसे हाथ से दोबारा बनाना नहीं पड़ता।
IPv6 गंतव्य
IPv6 गंतव्य को ब्रैकेट में लिखना ज़रूरी है, ताकि उसके कोलन पोर्ट-विभाजक से न उलझ जाएँ:
8080:[2001:db8::1]:80
बिना ब्रैकेट वाला नंगा IPv6 पता चुपचाप ग़लत पढ़े जाने के बजाय अस्पष्ट मानकर अस्वीकार कर दिया जाता है। यही ब्रैकेट वाला रूप सर्वर के पता फ़ील्ड में भी काम करता है, और उसके बाद वैकल्पिक पोर्ट भी लिखा जा सकता है ([fe80::1]:22)।
पता बाइंडिंग
Mobile SSH लोकल फ़ॉरवर्ड को डिवाइस पर 127.0.0.1 से बाइंड करता है। यह जानबूझकर है: यह टनल को डिवाइस-लोकल रखता है और केवल-IPv6 लूपबैक की अप्रत्याशित समस्याओं से बचाता है। यदि ऑपरेटिंग सिस्टम उनकी नेटवर्क पहुँच की अनुमति देता है तो उसी डिवाइस पर अन्य ऐप्स फ़ॉरवर्ड किए गए लोकल पोर्ट से कनेक्ट कर सकते हैं।
सामान्य उदाहरण
रिमोट सर्वर पर चल रही वेब सेवा तक पहुँचें:
8080
फिर उसी डिवाइस पर ब्राउज़र से http://127.0.0.1:8080 खोलें।
डेवलपमेंट सर्वर तक पहुँचें:
3000:localhost:3000
SSH सर्वर से पहुँच योग्य आंतरिक डेटाबेस तक पहुँचें:
15432:db.internal:5432
टनल समस्या निवारण
- सुनिश्चित करें कि SSH सेशन कनेक्ट है — फ़ॉरवर्ड सेशन के जुड़ने के बाद ही उठते हैं।
- जाँचें कि लोकल पोर्ट पहले से उपयोग में नहीं है।
- जाँचें कि रिमोट होस्ट और पोर्ट SSH सर्वर से पहुँच योग्य हैं।
- जब गंतव्य सेवा स्वयं SSH सर्वर पर हो तो
localhostउपयोग करें। - SSH सर्वर के पीछे किसी अन्य होस्ट पर फ़ॉरवर्ड करते समय सर्वर का आंतरिक DNS नाम या IP उपयोग करें।