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

প্রোফাইলে হাত দেওয়ার আগে লগের লাইনটি পড়ুন

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

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

সেই কনফিগারেশন কোন ইঞ্জিন চালায় তা নিশ্চিত করুন

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

এই পার্থক্যটি গুরুত্বপূর্ণ, কারণ একটি মেশিনে PATH-এ আধুনিক বাইনারি থাকতে পারে আর ব্যর্থ সংযোগের পিছনে বান্ডল করা 2.4 ইঞ্জিন থাকতে পারে। প্রোফাইলটি মূল্যায়ন করে দ্বিতীয়টি।

openvpn --version
ls /Applications/Tunnelblick.app/Contents/Resources/openvpn/

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

কেন নির্দেশিকার নাম বদলাল

OpenVPN 2.5-এ দর-কষাকষির তালিকা হিসেবে data-ciphers চালু করেছে, যা সেই সংস্করণে অপ্রচলিত হয়ে যাওয়া আগের ncp-ciphers বানানটি প্রতিস্থাপন করে। 2.4 ইঞ্জিনে এমন কোনো অপশন নেই, তাই যে টোকেনটি সে জানে না সেখানেই থেমে যায়। একক cipher অপশনটিও তালিকার পুরনো উপনাম নয়; এটি দর-কষাকষির সেট নয়, একটি সাইফারের নাম দেয়।

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

উপসর্গ নয়, ইঞ্জিন বা প্রোফাইল ঠিক করুন

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

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

আবার চেষ্টা করুন এবং পরের ধাপটি পড়ুন

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

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

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