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

কিংবদন্তি: নেটওয়ার্ক বিশেষাধিকার মানেই মাউন্ট বিশেষাধিকার

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

একক-ব্যবহারকারীর ল্যাপটপে এগুলো একই অ্যাকাউন্ট হতে পারে, এবং এই কাকতালীয়তা কোনো নকশা নয়।

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

কেন মাউন্টটি লগইন করা ব্যবহারকারীর প্রাপ্য

একটি SSHFS মাউন্ট হল একটি FUSE মাউন্ট যা যে প্রক্রিয়া এটি তৈরি করেছে তার মালিকানাধীন, এবং প্রবেশাধিকার মূল ডিরেক্টরির মোড নয় বরং সেই মালিকানাকে অনুসরণ করে। রেফারেন্স একটি সাধারণ ব্যবহারকারী এবং সেই ব্যবহারকারীর মালিকানাধীন মাউন্টপয়েন্টের সুপারিশ করে, যার ফলে root প্রক্রিয়ায় তৈরি মাউন্ট অন্যদের জন্য অসুবিধাজনক। মাউন্টপয়েন্টে অনুমতি পরিবর্তন এটি ঠিক করে না, কারণ বাধা হল মাউন্টের নিজস্ব মালিক।

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

sshfs [email protected]:/exports/team "$HOME/mnt/team"

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

ট্রিগার সেশনকে কী করতে বলবে

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

সেশন-পক্ষের ক্রিয়াটি লক্ষ্যযুক্ত বিদ্যমান মাউন্টটি খুঁজে বের করে তারপর একটি সীমিত চেষ্টা করা উচিত।

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

সংযোগ বিচ্ছিন্ন হওয়া একটি ফাইল-সিস্টেম ইভেন্ট, হুক ইভেন্ট নয়

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

fusermount3 -u "$HOME/mnt/team"

অপ্রত্যাশিত ক্ষতি ভিন্ন একটি ঘটনা, এবং SSHFS নথিভুক্ত করে যে একটি বাধাগ্রস্ত অপারেশন ট্রান্সপোর্ট পুনরায় সংযুক্ত হওয়ার সময় আটকে যেতে পারে।

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

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