OpenVPN বলছে ncp-disable অজানা: এটির বদলে কী এসেছে?
ncp-disable কখনোই এনক্রিপশন বন্ধ করা বোঝায়নি, আর 2.6 সেই অপশনটি সরিয়ে দিয়েছে। কোন বাইনারি ত্রুটিটি তৈরি করেছে তা খুঁজে বের করুন এবং দুই পিয়ারে data-cipher নীতি ঠিক করুন।
ক্লায়েন্ট ncp-disable-এর নাম উল্লেখ করা একটি অপশন ত্রুটি নিয়ে চালু হতে অস্বীকার করছে, অথচ প্রোফাইলটি আগের মেশিনে কাজ করছিল। সেই বার্তার অর্থ অপশনটি ভুল বানানে লেখা বা এনক্রিপশন নষ্ট—এমন কিছু নয়। এর অর্থ হলো আপনার সামনের বাইনারিটি এই নির্দেশটিই জানে না, এবং এর পিছনে দুটি সম্পূর্ণ ভিন্ন কারণ রয়েছে। কোনটি প্রযোজ্য তা ঠিক করে আপনি প্রোফাইল সম্পাদনা করবেন না ক্লায়েন্ট বদলাবেন।
ত্রুটি নতুন একটি বাইনারি থেকেও আসতে পারে
অ-স্বীকৃত অপশন ত্রুটি টানেল নয়, পার্সার নিয়ে। OpenVPN 2.4-এ আলোচনাযোগ্য সাইফার প্যারামিটার যোগ হলো, 2.5 সেগুলো বন্ধ করা সুইচটিকে বাতিল ঘোষণা করল, আর 2.6 সেটি পুরোপুরি সরিয়ে দিল। তাই 2.3 বা 2.4-এর জন্য লেখা প্রোফাইল বর্তমান ক্লায়েন্টে ব্যর্থ হয়, যদিও ফাইলে কিছুই বদলায়নি। যে সংস্করণটি অভিযোগ করছে সেটি নতুন, পুরোনো নয়।
যেকোনো কিছু সম্পাদনার আগে কোন এক্সিকিউটেবল বার্তাটি তৈরি করেছে তা জেনে নিন। ডেস্কটপ ক্লায়েন্ট নিজের ইঞ্জিন বহন করে, আর আলাদাভাবে ইনস্টল করা কমান্ড-লাইন বাইনারির নিজের সংস্করণ থাকে। একই মেশিনে দুটি ভিন্ন হতে পারে।
openvpn --version আপনি যে বাইনারি পরীক্ষা করছেন তার জন্য এটি নিষ্পত্তি করে। GUI ক্লায়েন্ট হয়তো সেই কমান্ড দেখায় না, সেক্ষেত্রে তার about স্ক্রিন বা বান্ডল করা লাইব্রেরির সংস্করণ পড়ুন।
অপশনটি আসলে কী নিয়ন্ত্রণ করত
নির্দেশটি ক্রিপ্টোগ্রাফিক প্যারামিটারের আলোচনা বন্ধ করত, তাই দুই প্রান্ত cipher সেটিং দ্বারা চালিত পুরোনো নির্বাচন আচরণে ফিরে যেত। এটি কখনো এনক্রিপশন বন্ধ করেনি, আর কখনো টানেলকে প্লেইনটেক্সটে পরিণত করেনি। এটিকে নিরাপত্তা সুইচ হিসেবে পড়া প্রথম ভুল মোড়, আর তা এমন পরিবর্তনের দিকে নিয়ে যায় যা সংযোগকে ভালোর বদলে খারাপ করে।
আলোচনা থাকলে সমতুল্য প্রশ্ন হলো কোন সাইফারগুলো প্রতিটি পক্ষ ব্যবহার করতে রাজি। এটি একটি নীতি প্রশ্ন, আর নীতি 2.5 ও পরের সংস্করণে data-ciphers-এ থাকে।
পুরোনো নাম ncp-ciphers 2.4-এর। দুই পক্ষের মধ্যে দুটি নাম মেশানো একমুখী আলোচনা ব্যর্থতার সাধারণ উৎস। দুটিই বহন করা প্রোফাইল হলো দুইজন মানুষ ভিন্ন সময়ে সম্পাদনা করা প্রোফাইল।
বানান নয়, নীতি বদলান
উভয় পিয়ারে একটি অভিপ্রেত সাধারণ পছন্দ দিয়ে data-ciphers সেট করুন, আর তালিকাটি এত ছোট রাখুন যাতে একজন পর্যালোচক তা নিয়ে যুক্তি করতে পারেন। একটি ইচ্ছেমতো লাইন বদলালে কিছুই প্রমাণ হয় না; ফলাফল নির্ভর করে দুই তালিকার ছেদ এবং TLS স্ট্যাক কী সমর্থন করে তার উপর। কনফিগারেশনের বদলে আলোচিত ফলাফল পড়ে পিয়ারগুলো একমত কি না নিশ্চিত করুন। তারপর দুই তালিকা ডিপ্লয়মেন্ট রেকর্ডে লিখে রাখুন যাতে পরের পরিবর্তনটি জানা অবস্থা থেকে শুরু হয়।
প্রোফাইলটি যার মালিক তার মাধ্যমে হালনাগাদ করুন। অচল নির্দেশ লুকাতে একটি ignore অপশন যোগ করলে নীতির প্রশ্নটি উত্তরহীন থেকে যায়।
কোনো পুরোনো পিয়ারের সত্যিই সামঞ্জস্য পরিচালনা দরকার হলে তা সেই ডিপ্লয়মেন্টেই সীমাবদ্ধ রাখুন। আধুনিক পিয়ার সংযুক্ত করার পূর্বশর্ত নয় বাতিল আচরণ বিশ্বব্যাপী ফিরিয়ে আনা। ব্যতিক্রমটি কোন পিয়ারের জন্য তা নাম উল্লেখ করা উচিত।
সাইফার তালিকার মতো দেখতে দুটি লাইন, যা তালিকা নয়
দুটি সাইফার লাইন স্তূপ করলেও আলোচনা ফেরে না, আর ফলাফল এমন প্রোফাইল যা তালিকার মতো দেখায় কিন্তু একক মানের মতো আচরণ করে। একটি লাইনে AES-256-CBC আর পরেরটিতে CBC লেখা সাধারণ চেষ্টা। CBC একা একটি মোডের নাম দেয়, অ্যালগরিদমের নয়, তাই পার্সার এটিকে এক স্লটে নিতে পারে আর পরেরটিতে প্রত্যাখ্যান করতে পারে। পুনরাবৃত্ত cipher নির্দেশ একই অপশন দুইবার সেট করে, প্রার্থী জমায় না।
অন্য ব্র্যাঞ্চের জন্য লেখা গাইড থেকে তালিকা কপি না করে লক্ষ্য বাইনারিতে openvpn --show-ciphers দিয়ে স্বীকৃত নাম যাচাই করুন। রিলিজের মধ্যে তালিকা বদলায়। এক ব্র্যাঞ্চে বৈধ নাম অন্য ব্র্যাঞ্চে বৈধ নাও হতে পারে।
লক্ষ্য পারফরম্যান্স তুলনা হলে অ্যালগরিদম ও কাজের ভার লিপিবদ্ধ করুন। CBC-তে যাওয়া এনক্রিপশন অনুপস্থিত থাকার পরিমাপ নয়।
সংযোগটি আসলে কী আলোচনা করেছে তা যাচাই করুন
একটি নতুন সংযোগ চালু করুন এবং লগের ডেটা-চ্যানেল লাইনটি পড়ুন, যা ব্যবহৃত সাইফারের নাম বলে। কন্ট্রোল-চ্যানেল স্যুট আলাদাভাবে নির্ধারিত হয়, তাই ফাইলের অনুমোদিত তালিকা কেবল যা প্রস্তাব করা হয়েছিল তা দেখায়। দুই পিয়ার যখন অপ্রত্যাশিত কিছু বেছে নেয়, তখন টানেল ইন্টারফেসের বদলে তালিকাগুলোতেই দেখুন। যেকোনো পরিবর্তনের পর দ্বিতীয় সংযোগে ফলাফল নিশ্চিত করুন, কারণ একবার রিস্টার্ট ক্যাশে করা সেশন পুনরায় ব্যবহার করতে পারে।
আলোচিত ফলাফলটি প্রোফাইল সংস্করণের পাশে ডিপ্লয়মেন্ট রেকর্ডে রাখুন। কোন সাইফার সত্যিই ট্র্যাফিক সুরক্ষিত রাখছে—পরের প্রশ্নের উত্তর দেয় এই তথ্যটিই।