পোর্ট ফরওয়ার্ডিং
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 ব্যবহার করুন।