লিনাক্সে কীভাবে এসএসএইচ টানেলিং বা পোর্ট ফরওয়ার্ডিং তৈরি করবেন


এসএসএইচ টানেলিং (এসএসএইচ পোর্ট ফরওয়ার্ডিং হিসাবেও পরিচিত) কেবল স্থানীয় নেটওয়ার্ক ট্র্যাফিককে এসএসএইচ দিয়ে দূরবর্তী হোস্টগুলিতে রুট করছে। এটি বোঝায় যে আপনার সমস্ত সংযোগগুলি এনক্রিপশন ব্যবহার করে সুরক্ষিত। এটি একটি বেসিক ভিপিএন (ভার্চুয়াল প্রাইভেট নেটওয়ার্ক) স্থাপনের একটি সহজ উপায় সরবরাহ করে, যা ইন্টারনেটের মতো অনিরাপদ পাবলিক নেটওয়ার্কগুলিতে ব্যক্তিগত নেটওয়ার্কগুলিতে সংযোগ স্থাপনের জন্য দরকারী।

এনগ্রোক হিসাবে কার্যকর হিসাবে সুরক্ষিত টানেলের উপরে ইন্টারনেটে নেট ও ফায়ারওয়ালের পিছনে স্থানীয় সার্ভারগুলি উন্মোচিত করতেও আপনি ব্যবহার করতে পারেন।

[আপনি এটি পছন্দ করতে পারেন: ওপেনএসএসএইচ সার্ভারকে কীভাবে সুরক্ষা এবং শক্ত করতে পারেন]

এসএসএইচ সেশনগুলি ডিফল্টরূপে টানেলিং নেটওয়ার্ক সংযোগের অনুমতি দেয় এবং সেখানে তিন ধরণের এসএসএইচ পোর্ট ফরওয়ার্ডিং রয়েছে: স্থানীয়, দূরবর্তী এবং গতিশীল পোর্ট ফরওয়ার্ডিং।

এই নিবন্ধে, আমরা কীভাবে দ্রুত এবং সহজেই এসএসএইচ টানেলিং বা লিনাক্সে বিভিন্ন ধরণের পোর্ট ফরওয়ার্ডিং সেটআপ করব তা প্রদর্শন করব।

এই নিবন্ধটির উদ্দেশ্যে, আমরা নিম্নলিখিত সেটআপটি ব্যবহার করছি:

  1. স্থানীয় হোস্ট: 192.168.43.31
  2. রিমোট হোস্ট: হোস্টনাম সার্ভার 1.example.com সহ লিনোড সেন্টোস 7 ভিপিএস

সাধারণত, আপনি নীচে এসএসএইচ ব্যবহার করে সুরক্ষিতভাবে কোনও রিমোট সার্ভারের সাথে সংযোগ স্থাপন করতে পারেন। এই উদাহরণে, আমি আমার স্থানীয় এবং দূরবর্তী হোস্টগুলির মধ্যে পাসওয়ার্ডবিহীন এসএসএইচ লগইনটি কনফিগার করেছি, সুতরাং এটি ব্যবহারকারীর প্রশাসকের পাসওয়ার্ড চাইবে না।

$ ssh [email   

স্থানীয় এসএসএইচ পোর্ট ফরওয়ার্ডিং

এই ধরণের পোর্ট ফরওয়ার্ডিং আপনাকে স্থানীয় কম্পিউটার থেকে একটি দূরবর্তী সার্ভারে সংযোগ করতে দেয়। ধরে নিই যে আপনি একটি সীমাবদ্ধ ফায়ারওয়ালের পিছনে রয়েছেন বা বহির্গামী ফায়ারওয়াল দ্বারা আপনার রিমোট সার্ভারের 3000 পোর্টে চলমান কোনও অ্যাপ্লিকেশন অ্যাক্সেস করা থেকে ব্লক করা হয়েছে।

আপনি একটি স্থানীয় পোর্ট ফরওয়ার্ড করতে পারেন (উদাঃ 8080) যা আপনি নিম্নলিখিতভাবে স্থানীয়ভাবে অ্যাপ্লিকেশন অ্যাক্সেস করতে ব্যবহার করতে পারেন। -L পতাকা দূরবর্তী হোস্ট এবং দূরবর্তী পোর্টে ফরোয়ার্ড করা পোর্টটিকে সংজ্ঞায়িত করে।

$ ssh [email  -L 8080:server1.example.com:3000

-N পতাকা যুক্ত করা মানে রিমোট কমান্ড চালাবেন না, আপনি এই ক্ষেত্রে শেল পাবেন না।

$ ssh -N [email  -L 8080:server1.example.com:3000

-f স্যুইচটি পটভূমিতে চালানোর জন্য এসএসএসকে নির্দেশ দেয়।

$ ssh -f -N [email  -L 8080:server1.example.com:3000

এখন, আপনার স্থানীয় মেশিনে, সার্ভার1.example.com:3000 ঠিকানা ব্যবহার করে দূরবর্তী অ্যাপ্লিকেশন অ্যাক্সেস না করে একটি ব্রাউজার খুলুন, আপনি কেবল লোকালহোস্ট: 8080 বা 192.168.43.31 ব্যবহার করতে পারেন: 8080 , নীচের স্ক্রিনশটে প্রদর্শিত আছে।

রিমোট এসএসএইচ পোর্ট ফরওয়ার্ডিং

রিমোট পোর্ট ফরওয়ার্ডিং আপনাকে আপনার দূরবর্তী মেশিন থেকে স্থানীয় কম্পিউটারে সংযোগ করার অনুমতি দেয়। ডিফল্টরূপে, এসএসএইচ দূরবর্তী পোর্ট ফরওয়ার্ডিংয়ের অনুমতি দেয় না। আপনি এটিকে আপনার এসএসএইচডি প্রধান কনফিগারেশন ফাইল/etc/ssh/sshd_config দূরবর্তী হোস্টে গেটওয়েপোর্টস নির্দেশিকা ব্যবহার করে সক্ষম করতে পারেন।

আপনার প্রিয় কমান্ড-লাইন সম্পাদকটি ব্যবহার করে সম্পাদনা করার জন্য ফাইলটি খুলুন।

$ sudo vim /etc/ssh/sshd_config 

প্রয়োজনীয় নির্দেশিকাটি দেখুন, এটিকে বিশৃঙ্খল করুন এবং স্ক্রিনশটটিতে যেমন দেখানো হয়েছে তেমন এর মানটি হ্যা তে সেট করুন।

GatewayPorts yes

পরিবর্তনগুলি সংরক্ষণ করুন এবং প্রস্থান করুন। এর পরে, আপনার করা সাম্প্রতিক পরিবর্তনটি প্রয়োগ করতে আপনাকে sshd পুনঃসূচনা করতে হবে।

$ sudo systemctl restart sshd
OR
$ sudo service sshd restart 

এরপরে স্থানীয় মেশিনে রিমোট মেশিনে 5000 বন্দরে পোর্ট 5000 ফরওয়ার্ডের জন্য নিম্নলিখিত কমান্ডটি চালান।

$ ssh -f -N [email  -R 5000:localhost:3000

একবার আপনি টানেলিংয়ের এই পদ্ধতিটি বুঝতে পারলে আপনি সহজেই এবং সুরক্ষিতভাবে একটি স্থানীয় বিকাশ সার্ভারটি বিশেষত NAT টি এবং ফায়ারওয়ালের পিছনে সুরক্ষিত টানেলের উপরে ইন্টারনেটে প্রকাশ করতে পারেন। টানেল যেমন এনগ্রোক, পেজসাইট, লোকালটোনেল এবং আরও অনেকগুলি একইভাবে কাজ করে।

গতিশীল এসএসএইচ পোর্ট ফরওয়ার্ডিং

এটি তৃতীয় ধরণের পোর্ট ফরওয়ার্ডিং। স্থানীয় এবং দূরবর্তী পোর্ট ফরওয়ার্ডিংয়ের বিপরীতে যা একক পোর্টের সাথে যোগাযোগের সুযোগ করে দেয়, এটি সম্ভব করে তোলে, সম্পূর্ণ পোর্টের বিভিন্ন ধরণের টিসিপি যোগাযোগের ব্যবস্থা। ডায়নামিক পোর্ট ফরওয়ার্ডিং আপনার মেশিনটিকে একটি SOCKS প্রক্সি সার্ভার হিসাবে সেট আপ করে যা ডিফল্টরূপে পোর্ট 1080 এ শোনে।

প্রারম্ভিকদের জন্য, SOCKS একটি ইন্টারনেট প্রোটোকল যা কোনও ক্লায়েন্ট কীভাবে প্রক্সি সার্ভারের (কোনও ক্ষেত্রে এসএসএইচ) মাধ্যমে কোনও সার্ভারের সাথে সংযোগ করতে পারে তা নির্ধারণ করে। আপনি -D বিকল্পটি ব্যবহার করে গতিশীল পোর্ট ফরওয়ার্ডিং সক্ষম করতে পারেন।

নীচের কমান্ডটি আপনাকে পোর্ট 1080 এ একটি সোকস প্রক্সি শুরু করবে যা আপনাকে দূরবর্তী হোস্টের সাথে সংযোগ করার অনুমতি দেয়।

$ ssh -f -N -D 1080 [email 

এখন থেকে, আপনি আপনার মেশিনে অ্যাপ্লিকেশনগুলি এই এসএসএইচ প্রক্সি সার্ভারটি তাদের সেটিংস সম্পাদনা করে এবং এটিকে ব্যবহার করতে কনফিগার করে আপনার দূরবর্তী সার্ভারের সাথে সংযোগ স্থাপন করতে পারবেন। মনে রাখবেন যে আপনি এসএসএইচ সেশনটি বন্ধ করার পরে সোসকস প্রক্সি কাজ করা বন্ধ করবে।

এই নিবন্ধে, আমরা সুরক্ষিত এসএসএইচ সংযোগের মাধ্যমে ট্র্যাফিক টানেল করার জন্য এক মেশিন থেকে অন্য মেশিনে বিভিন্ন ধরণের পোর্ট ফরওয়ার্ডিংয়ের ব্যাখ্যা দিয়েছি। এটি এসএসএইচের খুব ব্যবহারগুলির মধ্যে একটি। আপনি নীচের প্রতিক্রিয়া ফর্মের মাধ্যমে এই গাইডটিতে আপনার ভয়েস যুক্ত করতে পারেন।

মনোযোগ দিন: এসএসএইচ পোর্ট ফরওয়ার্ডিংয়ের কিছু কিছু বড় অসুবিধা রয়েছে, এটি অপব্যবহার করা যেতে পারে: এটি নেটওয়ার্ক মনিটরিং এবং ট্র্যাফিক ফিল্টারিং প্রোগ্রামগুলি (বা ফায়ারওয়ালস) বাইপাস করতে ব্যবহার করা যেতে পারে। আক্রমণকারীরা এটি দূষিত ক্রিয়াকলাপগুলির জন্য ব্যবহার করতে পারে। আমাদের পরবর্তী নিবন্ধে, আমরা কীভাবে এসএসএইচ স্থানীয় পোর্ট ফরওয়ার্ডিং অক্ষম করবেন তা দেখাব। যোগাযোগ রেখো!