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

পাসফ্রেজ ফাইলেরই অংশ

একটি SSH কী-এর পাসফ্রেজ বিশ্রামে থাকা প্রাইভেট কী উপাদান এনক্রিপ্ট করে। এটি সার্ভারে পাঠানো অ্যাকাউন্ট পাসওয়ার্ড নয়, এবং VPN-এ যোগ দেওয়ার জন্য ব্যবহৃত শংসাপত্রও নয়। এদের গুলিয়ে ফেললে এমন পরিবর্তন হয় যা প্রকাশকে সমাধান করে না।

OpenSSH-এর ssh-keygen ম্যানুয়াল পাসফ্রেজ পরিচালনা নিয়ে আলোচনা করে, যার মধ্যে আছে -p সুইচ, যা আগে থেকেই থাকা কী-তে নতুন পাসফ্রেজ নির্ধারণ করে।

বিদ্যমান কী-এর জন্য কমান্ডের রূপ সরল, এবং এটি ফাইলটি পুনর্লিখন করে:

ssh-keygen -p -f ~/.ssh/id_ed25519

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

অনুলিপি ল্যাপটপ ও টানেলের চেয়ে বেশি দিন টেকে

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

বর্তমান ফাইলে পাসফ্রেজ বদলালে অনুলিপিতে কিছু হয় না, এবং সার্ভারের authorized_keys থেকে একই পাবলিক কী সরেও না। বাতিলকরণ ও পুনঃএনক্রিপশন আলাদা কাজ।

তাই ফাঁস হওয়া প্রাইভেট কী-কে নেটওয়ার্ক ঘটনা নয়, পরিচয়ের ঘটনা হিসেবে ধরুন। যে সার্ভার ও তালিকাভুক্তি প্রক্রিয়া এটি ধারণ করে, তাদের মাধ্যমে গৃহীত কী সরান বা প্রতিস্থাপন করুন। VPN বন্ধ করা এক মুহূর্তে একটি পথ সীমিত করে; এটি বাতিলকরণ নয়।

আনলক করলে গোপন তথ্য এজেন্টে চলে যায়

এজেন্ট পরবর্তী প্রমাণীকরণের জন্য ডিক্রিপ্ট করা পরিচয় ধরে রাখে, যাতে ব্যবহারকারী প্রতিটি সংযোগে পাসফ্রেজ আবার না লেখেন। এটি নিজস্ব নিরাপত্তা সীমা-সহ একটি ব্যবহারযোগ্যতার সুবিধা।

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

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

পরিবর্তনের আগে ও পরে এজেন্ট এখন কী ধরে আছে তালিকা করুন:

ssh-add -l

তত্ত্বাবধানহীন কাজের নিজস্ব পরিকল্পনা দরকার

নির্ধারিত কাজ কোনো প্রম্পটের উত্তর দিতে পারে না। এর জন্য অনুমোদিত মেশিন-শংসাপত্র ব্যবস্থা দরকার, এবং কী-এর একই ডিরেক্টরিতে আনলকিং গোপন তথ্য রাখা, যা একই অ্যাকাউন্ট পড়তে পারে, দ্বিতীয় সীমা তৈরি করে না।

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

সার্ভারের হোস্ট-পরিচয় যাচাই এবং তার অ্যাকাউন্ট সীমাবদ্ধতাও রাখুন। VPN রুট আপনাকে একটি ব্যক্তিগত পথ দেয়; এটি প্রমাণ করে না যে আপনি যেসব SSH শ্রোতায় পৌঁছান সবই আপনার উদ্দিষ্ট হোস্ট। শ্রোতা ও হোস্ট কী-এর ফিঙ্গারপ্রিন্ট কী-এর মতো একই তালিকায় লিপিবদ্ধ করুন।

সীমাগুলো আলাদাভাবে যাচাই করুন

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

দুটি কমান্ড প্রথম ও তৃতীয়টির উত্তর দেয়:

ssh-keygen -y -f ~/.ssh/id_ed25519
ssh -v [email protected]

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

সম্পর্কিত নিবন্ধ