SSH3: HTTP/3 ব্যবহার করে দ্রুত, সমৃদ্ধ নিরাপদ শেল
সম্প্রতি পরিচিত হয়ে উঠেছে প্রথম পরীক্ষামূলক সংস্করণের আনুষ্ঠানিক প্রবর্তন সার্ভার এবং ক্লায়েন্ট এর জন্য HTTP3 প্রোটোকলের পরিপূরক হিসাবে ডিজাইন করা SSH3 প্রোটোকল এবং এটি QUIC (UDP-এর উপর ভিত্তি করে), TLS 1.3 ব্যবহার করে যা ব্যবহারকারীর প্রমাণীকরণের জন্য HTTP পদ্ধতির সুবিধা গ্রহণ করে, সেইসাথে একটি নিরাপদ যোগাযোগের চ্যানেল স্থাপন করে
SSH3 HTTP প্রোটোকলের উপর ভিত্তি করে অনুমোদন প্রক্রিয়া ব্যবহার করে, যা একটি পাসওয়ার্ড এবং একটি কী জোড়া ব্যবহার করে ক্লাসিক প্রমাণীকরণের পাশাপাশি নতুন প্রমাণীকরণ পদ্ধতির অনুমতি দেয়, এছাড়াও SSH3-এ আপনি একটি প্রতিষ্ঠানের পরিচয় প্রদানকারীর মাধ্যমে বা একটি Google অ্যাকাউন্ট বা GitHub এর মাধ্যমে একটি দূরবর্তী সার্ভারে অ্যাক্সেস কনফিগার করতে পারেন৷ SSH3 HTTP/3 এবং QUIC-এর উপর ভিত্তি করে এবং সাধারণ TCP ফরওয়ার্ডিং ছাড়াও, UDP পোর্ট ফরওয়ার্ডিং এবং দ্রুততর, আরও নিরাপদ সেশন প্রতিষ্ঠার অফার করে।
SSH3 সম্পর্কে
প্রকল্পের বিকাশকারীরা উল্লেখ করেছেন যে SSH3 সৃষ্টি SSH প্রোটোকলের সম্পূর্ণ পর্যালোচনার ফলে উদ্ভূত হয়েছে, ওপেনএসএসএইচ এবং ক্লাসিক এসএসএইচ প্রোটোকলের অন্যান্য বাস্তবায়নের মতো প্রকল্পগুলিতে কাজ করা দলগুলি থেকে পৃথক গবেষকদের একটি স্বতন্ত্র গোষ্ঠী দ্বারা পরিচালিত৷ ভিতরে SSH3, ক্লাসিক SSH প্রোটোকলের শব্দার্থবিদ্যা HTTP প্রক্রিয়ার মাধ্যমে বাস্তবায়িত হয়, যা শুধুমাত্র অতিরিক্ত ক্ষমতার জন্যই মঞ্জুরি দেয় না, বরং এটিও নিশ্চিত করে যে SSH-সংক্রান্ত ক্রিয়াকলাপগুলি অন্যান্য ট্রাফিকের মধ্যে লুকিয়ে আছে, অন্যান্য জিনিসগুলির মধ্যে, SSH3 SSH2 প্রোটোকলের উপর নিম্নলিখিত উন্নতির অনুমতি দেয় প্রদান করতে পারেনি, সেইসাথে অনেক জনপ্রিয় OpenSSH বৈশিষ্ট্য:
- উল্লেখযোগ্যভাবে দ্রুত সেশন প্রতিষ্ঠা
- নতুন HTTP প্রমাণীকরণ পদ্ধতি, যেমন OAuth 2.0 এবং OpenID Connect, ক্লাসিক SSH প্রমাণীকরণ ছাড়াও।
- সার্ভারে ~/.ssh/authorized_keys পার্স করা হচ্ছে।
ক্লায়েন্টে ~/.ssh/config পার্স করে এবং হোস্টনেম, ইউজার এবং পোর্টকনফিগ আইডেন্টিটিফাইল বিকল্পগুলি পরিচালনা করে (অন্যান্য বিকল্পগুলি বর্তমানে উপেক্ষা করা হয়েছে)
সার্টিফিকেট-ভিত্তিক সার্ভার প্রমাণীকরণ - পোর্ট স্ক্যানিং আক্রমণের বিরুদ্ধে দৃঢ়তা: আপনার SSH3 সার্ভার অন্যান্য ইন্টারনেট ব্যবহারকারীদের কাছে অদৃশ্য হয়ে যেতে পারে
- UDP পোর্ট ফরওয়ার্ডিং - আপনি এখন আপনার QUIC, DNS, RTP বা যেকোনো UDP ভিত্তিক সার্ভার অ্যাক্সেস করতে পারেন যা শুধুমাত্র আপনার SSH3 হোস্ট থেকে অ্যাক্সেস করা যেতে পারে।
- X.509 সার্টিফিকেট: আপনি এখন আপনার SSH3 সার্ভারকে প্রমাণীকরণ করতে আপনার ক্লাসিক HTTPS সার্টিফিকেট ব্যবহার করতে পারেন। এই মেকানিজমটি ক্লাসিক SSHv2 হোস্ট কী মেকানিজমের চেয়ে বেশি সুরক্ষিত।
- একটি গোপন লিঙ্কের পিছনে সার্ভার লুকানোর ক্ষমতা।
- আধুনিক QUIC প্রোটোকল দ্বারা সক্ষম সমস্ত বৈশিষ্ট্য: সংযোগ স্থানান্তর এবং মাল্টিপাথ সংযোগ সহ
- স্বয়ংক্রিয়ভাবে ssh-এজেন্ট পাবলিক কী প্রমাণীকরণ ব্যবহার করুন
- আপনার দূরবর্তী সার্ভারে আপনার স্থানীয় কীগুলি ব্যবহার করতে SSH এজেন্ট ফরওয়ার্ডিং৷
- OpenID কানেক্ট ব্যবহার করে সুরক্ষিত চাবিহীন ব্যবহারকারীর প্রমাণীকরণ।
যোগাযোগ চ্যানেল এনক্রিপ্ট করতে, SSH3 TLS 1.3 প্রোটোকল ব্যবহার করে এবং পাসওয়ার্ড এবং পাবলিক কী (RSA এবং EdDSA/ed25519) এর উপর ভিত্তি করে প্রচলিত পদ্ধতি ব্যবহার করা যেতে পারে। অতিরিক্তভাবে, SSH3 OAuth 2.0 প্রোটোকলের উপর ভিত্তি করে পদ্ধতিগুলি ব্যবহার করার বিকল্প অফার করে, যা প্রমাণীকরণকে বহিরাগত সরবরাহকারীদের কাছে স্থানান্তরিত করার অনুমতি দেয়।
অন্য একটি SSH3 এর শক্তি হল যে এটি SSH2 এর তুলনায় উল্লেখযোগ্যভাবে দ্রুত সেশন প্রতিষ্ঠার প্রস্তাব দেয়, উদাহরণস্বরূপ, SSH2 এর সাথে একটি নতুন সেশন প্রতিষ্ঠা করতে 5 থেকে 7 নেটওয়ার্ক পুনরাবৃত্তি (রাউন্ড ট্রিপ) নিতে পারে, যা ব্যবহারকারী সহজেই লক্ষ্য করতে পারে যেহেতু SSH3 এর জন্য শুধুমাত্র 3টি পুনরাবৃত্তি প্রয়োজন।
আপনি যদি এটি সম্পর্কে আরও জানতে আগ্রহী হন তবে আপনার জানা উচিত যে ক্লায়েন্ট এবং সার্ভার Go-তে লেখা এবং Apache 2.0 লাইসেন্সের অধীনে বিতরণ করা হয়েছে, আপনি বিশদ বিবরণের সাথে পরামর্শ করতে পারেন নীচের লিঙ্কে।
উপরন্তু, এটি উল্লেখ করার মতো যে SSH3 এখনও পরীক্ষামূলক এবং এটির ব্যবহার উত্পাদন বা সমালোচনামূলক পরিবেশের জন্য সুপারিশ করা হয় না এবং যেমন এটির ইনস্টলেশন শুধুমাত্র এর কার্যকারিতা সম্পর্কে জানতে বা পরীক্ষা করতে সক্ষম হওয়ার জন্য সুপারিশ করা হয়।
SSH3 ডাউনলোড এবং ইনস্টল করুন
জন্য পরীক্ষার জন্য একটি SSH3 সার্ভার বাস্তবায়ন করতে সক্ষম হতে আগ্রহী, আমরা নিচে শেয়ার করা নির্দেশাবলী অনুসরণ করে Go দিয়ে সোর্স কোড কম্পাইল করে এটি করতে পারেন।
git clone https://github.com/francoismichel/ssh3 cd ssh3 go build -o ssh3 cmd/ssh3/main.go CGO_ENABLED=1 go build -o ssh3-server cmd/ssh3-server/main.go
এটি হয়ে গেলে, আমরা এখন .bashrc-এ আমাদের এনভায়রনমেন্ট ভেরিয়েবল যোগ করতে এগিয়ে যাই:
export PATH=$PATH:/path/to/the/ssh3/directory
সার্ভার বাস্তবায়নের বিষয়ে, যেহেতু SSH3 HTTP3 এর উপর চলে, একটি শংসাপত্র প্রয়োজন এবং একটি স্ক্রিপ্ট দিয়ে তৈরি করা যেতে পারে:
sh ./generate_openssl_selfsigned_certificate.sh
পরিশেষে, আমি আপনাকে অতিরিক্ত ফাংশন ব্যবহার এবং বাস্তবায়নের ডকুমেন্টেশনের সাথে পরামর্শ করার জন্য আমন্ত্রণ জানাচ্ছি নিম্নলিখিত লিঙ্ক.