অপরিচিত OVPN ফাইল: স্থানীয় ঝুঁকি ও দূরের ভরসা
একটি প্রোফাইল আপনার মেশিনের ক্লায়েন্টকে প্রভাবিত করতে পারে এবং আপনার ট্রাফিক যে অপারেটর দেখবে তাকে বেছে নিতে পারে। ফাইলটি আমদানি করার আগে দুই সিদ্ধান্তই পর্যালোচনা করুন।
OVPN ফাইলকে একটি প্রোগ্রামের ইনপুট হিসেবে দেখুন, এর বিষয়বস্তু নিরীহ — এমন সনদ হিসেবে নয়। সার্ভারের ঠিকানা যাচাই শুধু বলে প্রোফাইলটি কোথায় সংযুক্ত হতে চায়, এর বেশি কিছু নয়। ওই ফাইলের ভেতরে দুটি আলাদা ভরসার সিদ্ধান্ত আছে: ক্লায়েন্ট আপনার মেশিনে কী করতে পারে, আর কোন অপারেটর ট্রাফিক পায়। পরিচিত প্রোটোকলের নাম এদের কোনোটিই মিটিয়ে দেয় না।
একটি ফাইলে দুটি সিদ্ধান্ত লুকিয়ে আছে
প্রথম সিদ্ধান্তটি স্থানীয়। প্রোফাইল একটি কনফিগারেশন ভাষা, আর যে ক্লায়েন্ট এটি পড়ে সে এমন নির্দেশ সমর্থন করতে পারে যা প্লাগ-ইন লোড করে, স্ক্রিপ্ট চালায় বা রাউটিং ও DNS কীভাবে প্রয়োগ হবে তা বদলে দেয়। দ্বিতীয় সিদ্ধান্তটি দূরের। ফাইলে যা-ই থাকুক, এক্সিট অপারেটর তার কাছে পৌঁছানো ট্রাফিক দেখে।
দুটিকে গুলিয়ে ফেললে দুই দিকেই খারাপ পরামর্শ আসে: অচেনা অপারেটরের পরিচ্ছন্ন দেখতে প্রোফাইল, বা পরিচিত অপারেটরের প্রোফাইলে এমন হুক যা কেউ পড়েনি। স্থানীয়ভাবে নিরাপদ প্রোফাইলও আপনার ট্রাফিক এমন কারও হাতে দিতে পারে যাকে আপনি বাছতেন না।
যেকোনো ক্লায়েন্টের আগে প্রোফাইলটি পড়ুন
যেকোনো ক্লায়েন্ট প্রক্রিয়া করার আগে ফাইলটি লেখা হিসেবে পড়ুন। এমন নির্দেশ খুঁজুন যা ফাইলের বাইরে নির্দেশ করে, এক্সিকিউটেবল উল্লেখ করে বা বিশেষাধিকার বদলায়, এবং সেই তালিকা ক্লায়েন্টের নথিভুক্ত সমর্থনের সঙ্গে মিলিয়ে দেখুন। ছোট একটি খোঁজ নিরাপত্তা পর্যালোচনা নয়, তবে এটি বলে দেয় প্রোফাইলটি সার্ভারের তালিকা না আরও কিছু।
grep -nE '^(script-security|up|down|plugin|route-up|ipchange)' untrusted.ovpn
খালি ফলাফল স্বস্তিদায়ক, তবে চূড়ান্ত নয়, কারণ অপশনগুলো পরস্পরে মিলে যেতে পারে বা অন্তর্ভুক্ত ফাইল থেকে আসতে পারে। ছাঁকা তালিকাটিকে আরও পড়ার কারণ হিসেবে নিন, রায় হিসেবে নয়।
প্রোফাইলের সঙ্গে আসা নির্দেশনাগুলোও প্রোফাইলের মতোই যাচাই দাবি করে। চারটি অনুরোধ আপনাকে থামানো উচিত: স্ক্রিপ্ট চালু করা, একটি হেল্পার বা লাইব্রেরি ইনস্টল করা, ক্লায়েন্টকে প্রশাসক হিসেবে চালানো, বা আমদানির বিধিনিষেধ দুর্বল করা। প্রতিটি ভরসার সীমা বাইরের দিকে সরায়, এবং এর কোনোটিই সার্ভার তালিকা আমদানির সাধারণ অংশ নয়।
পুরো ফাইলটিও একবার পড়ুন, কারণ একটি অপরিচিত লাইন ছাঁকা তালিকার চেয়ে প্রসঙ্গে বিচার করা সহজ। লাইনটি অপরিচিত হলে অনুমান না করে আপনার ক্লায়েন্টের ম্যানুয়ালে তা দেখুন।
ক্লায়েন্ট আসলে কী চালাবে
Community OpenVPN-এর 2.6 ম্যানুয়াল script-security-র ধাপগুলো নথিভুক্ত করে: স্তর 1 ডিফল্ট এবং ব্যবহারকারী-নির্ধারিত স্ক্রিপ্ট আটকায়, আর স্তর 2 সেগুলো অনুমোদন করে। প্লাগ-ইন লোড করা নিজস্ব নির্দেশসহ আলাদা একটি ব্যবস্থা। তাই একই ফাইল ভিন্ন ক্লায়েন্টে ভিন্ন কিছু বোঝাতে পারে। মোবাইল ও প্রস্তুতকারকের ক্লায়েন্ট হয়তো আরও সংকীর্ণ নির্দেশ গ্রহণ করে, নয়তো কোনো হুকই নয়।
চালুর পদ্ধতি ক্লায়েন্টের মতোই গুরুত্বপূর্ণ। বিশেষাধিকারপ্রাপ্ত হেল্পার দিয়ে চালু করা প্রোফাইল ব্যবহারকারী-স্পেসে চালু করা প্রোফাইলের চেয়ে বেশি কিছু করতে পারে, আর এই পার্থক্যই আমদানির প্রম্পট উপেক্ষা না করে পড়ার কারণ।
সংস্করণও গুরুত্বপূর্ণ, কারণ এই স্তরগুলো প্রতি রিলিজে নির্ধারিত হয় এবং কয়েক সংস্করণ পিছিয়ে থাকা ক্লায়েন্ট একই নীতি প্রয়োগ না-ও করতে পারে। আপনার চালানো বিল্ডের সঙ্গে মেলে এমন ম্যানুয়াল পড়ুন, হাতের সবচেয়ে নতুনটি নয়। ক্লায়েন্ট কোথাও সংস্করণের স্ট্রিং না দেখালে সেটাই ধীর হওয়ার কারণ।
ঠিকানা নয়, অপারেটরকে তুলনা করুন
অন্য যেকোনো মধ্যস্থতাকারীর মতোই অপারেটরদের তুলনা করুন। জিজ্ঞাসা করুন এক্সিট কে চালায়, তারা কী লগ করে, আর প্রোফাইল আপনার কাছে কীভাবে পৌঁছাল। যাচাই করা ডাউনলোড পাতা ও মিলে যাওয়া ফিঙ্গারপ্রিন্ট পরিচিত হোস্টনামের চেয়ে বেশি বলে। পৌঁছানো যায় এমন সার্ভার শুধু প্রমাণ করে যে কিছু একটা উত্তর দিয়েছে।
চাপের মধ্যে মানুষ যা ভুল করে তা হলো পরিচয়পত্র। সার্ভারের নাম পরিচিত লাগে বলে ডাউনলোড করা প্রোফাইলে অসম্পর্কিত অ্যাকাউন্টের পাসওয়ার্ড টাইপ করবেন না। প্রোফাইলে খোলাখুলি ব্যক্তিগত কী-ও থাকতে পারে, তাই পুরো ফাইল কোনো পর্যালোচনা থ্রেডে পোস্ট করা সেই কী-টি থ্রেডের হাতে দিয়ে দেয়।
সঠিকভাবে বৈধতা দেওয়া HTTPS সেশন শুধু প্যাকেট এগিয়ে দেওয়া যে কারও কাছ থেকে পাতার বিষয়বস্তু লুকায়, তাই এক্সিট স্বয়ংক্রিয়ভাবে প্রতিটি পাসওয়ার্ড দেখে না। তবে আপনি কোন কোন সাইটে পৌঁছান তা দেখে, আর সেই সীমাটি বাড়িয়ে বলা নয়, নিখুঁতভাবে বলা উচিত।
যেখানে ফাইলের উৎস অস্পষ্ট থাকে, বা এটি যে বিশেষাধিকার চায় তার এমন ব্যাখ্যা নেই যা আপনি মেনে নিতে পারেন, সেখানে প্রোফাইলটি এমন উৎসের একটি দিয়ে বদলান যাকে জবাবদিহি করা যায়। পরিচালিত কর্মসংস্থানে প্রশাসকের উচিত ক্লায়েন্ট ও কনফিগারেশনকে দুটি নয়, একটি সিদ্ধান্ত হিসেবে অনুমোদন করা। এখানে কিছুই আগে দুষ্টতা প্রমাণ করতে বলে না; প্রবেশাধিকার না দেওয়াও বৈধ উত্তর।