VPN-এর উপর দিয়ে Tor: আপনার IP কে দেখে, আর Tor ব্যবহার কে দেখে?
VPN-এর উপর দিয়ে Tor-এ এন্ট্রি রিলে আপনার VPN এক্সিট দেখে, আর আপনার প্রদানকারী একটি গার্ড রিলে দেখে। ক্রম উল্টে দিলে দুই পর্যবেক্ষকই বদলে যায়।
আপনি VPN ক্লায়েন্ট সংযোগ করেন, টানেলের জন্য অপেক্ষা করেন, তারপর Tor Browser খুলে একটি সার্কিট তৈরি করতে দেন। এই সাধারণ ধারাবাহিকতাই ঠিক করে কে কী দেখবে। এই ক্রমে Tor-এর এন্ট্রি রিলে আপনার VPN এক্সিট ঠিকানাকে দেখে, আর আপনার VPN প্রদানকারী একটি পাবলিক গার্ড রিলেকে দেখে। উল্টো ক্রমে করলে দুই পর্যবেক্ষকই বদলে যায়। দুই ক্রমই ধরে ধরে দেখা দরকার, কারণ ক্লায়েন্ট সেটিংস চুপচাপ সেই ধারাবাহিকতা ভেঙে দেয় যা মানুষ ভেবেছিল কার্যকর, আর যা ধরার পরীক্ষা দুই ক্ষেত্রেই একই।
পণ্য নয়, ক্রম দিয়ে শুরু করুন
দুটি বিন্যাসকে “Tor সহ VPN” বলা হয়, এবং কেবল প্রথমটিই সাধারণ। VPN-এর উপর দিয়ে Tor-এ Tor শুরুর সময় টানেল আগেই চালু থাকে, তাই tor প্রসেস তার গার্ড সংযোগকে অন্য যেকোনো বহির্মুখী ট্রাফিকের মতো টানেলে পাঠায়। Tor-এর উপর দিয়ে VPN-এ আগে Tor চালু হয় এবং VPN সেশন নিজেই সার্কিটের মধ্য দিয়ে যায়, Tor এক্সিট থেকে প্রদানকারীর কাছে পৌঁছায়।
তাদের মধ্যে যা বদলায় তা হলো সবচেয়ে বাইরের লিংকের দূর প্রান্তে কোন ঠিকানা বসে। প্রতিটি পর্যবেক্ষক কেবল আগের হপ দেখে, পুরো পথ কখনও নয়: গার্ড দেখে কে তার সাথে সংযুক্ত হয়েছে, আর VPN সার্ভার দেখে কে তার সাথে সংযুক্ত হয়েছে। Tor আপনার স্থানীয় টানেল ঠিকানা বাইরে বহন করে না, আর প্রোটোকলে এমন কোনো ফিল্ড নেই যেখানে তা করতে পারত।
দুই ক্রমেই গন্তব্য ওয়েবসাইট এখনও একটি Tor এক্সিট দেখে, এবং কোনো ক্রমই সেই সাইট আপনার লগইন থেকে যা শেখে তা বদলায় না। পার্থক্য কেবল দুই প্রান্তে সীমাবদ্ধ।
Tor এন্ট্রি রিলে কী দেখে
এন্ট্রি, বা গার্ড, একটি রিলে পোর্টে সাধারণ TCP সংযোগ গ্রহণ করে এবং ক্লায়েন্টের সাথে TLS হ্যান্ডশেক শুরু করে। VPN-এর উপর দিয়ে Tor বিন্যাসে সেই সংযোগের উৎস আপনার VPN এক্সিট। আগে Tor বিন্যাসে উৎস হলো আপনার মেশিন Tor নেটওয়ার্কে পৌঁছাতে যে ঠিকানা ব্যবহার করেছে, সাধারণত আপনার বাড়ির সংযোগ।
এটি প্রশ্নের IP অর্ধেকের উত্তর দেয়, কিন্তু কেবল যদি টানেল সত্যিই সংযোগটি বহন করে থাকে। Tor প্রসেস নিজের সকেট দিয়ে গার্ডে পৌঁছায়, আর সেই সকেট Tor Browser-এর প্রক্সি সেটিংস দ্বারা নিয়ন্ত্রিত হয় না। ব্রাউজার 9150 পোর্টে SOCKS-এর মাধ্যমে বান্ডল করা tor প্রসেসের সাথে কথা বলে, তারপর tor কার্নেলের রাউটিং টেবিল ব্যবহার করে নিজের সংযোগ খোলে। torrc-এ Socks5Proxy লাইন, বা একটি ক্লায়েন্ট ট্রান্সপোর্ট, সেই পথ বদলায়। অন্য কিছু নয়।
Linux-এ আপনি মেশিন থেকেই উত্তরটি পড়তে পারেন। কার্নেলকে জিজ্ঞাসা করুন এটি একটি নির্বিচার পাবলিক ঠিকানার জন্য কোন ইন্টারফেস ব্যবহার করবে, তারপর প্রতিষ্ঠিত সংযোগের স্থানীয় ঠিকানাটি দেখুন:
ip route get 203.0.113.10
sudo ss -tnp | grep -i torরাউটে যদি dev wg0 বা dev tun0 লেখা থাকে, এবং প্রতিষ্ঠিত সংযোগের স্থানীয় ঠিকানা টানেল ঠিকানা হয়, তবে Tor VPN-এর ভেতরে। রাউট যদি আপনার ভৌত ইন্টারফেসের নাম বলে, তবে এটি বাইরে, ক্লায়েন্টের নিজের সূচক যা-ই দাবি করুক।
আপনার VPN প্রদানকারী কী দেখতে পারে
প্রদানকারী আপনার VPN সেশন সমাপ্ত করে, তাই আপনি যে ঠিকানায় সংযোগ করেন তা সে দেখে। গার্ড রিলে ঠিকানা পাবলিক কনসেনসাসে প্রকাশিত হয় এবং তাদের পোর্ট সুপরিচিত, তাই একটি মিলানো গভীর প্যাকেট পরিদর্শন নয়, তালিকা অনুসন্ধান। একটি সেশন Tor, তা জানতে প্রদানকারীকে Tor ভাঙতে হয় না।
যা সে দেখে না তা হলো সার্কিটের বাকি অংশ। মধ্য রিলে ও এক্সিট Tor-এর ভেতরে বাছাই হয়, আর প্রদানকারী কেবল গার্ড পর্যন্ত লিংক সামলায়। পৃষ্ঠার বিষয়বস্তু এক্সিটে শেষ হওয়া TLS-এর ভেতরে থাকে, আর Tor ট্রাফিকের নাম সমাধানও এক্সিটেই ঘটে, তাই প্রদানকারীর কাছে কোনো DNS কোয়েরি নেই যা কোনো গন্তব্যের সাথে মেলানো যায়।
obfs4 সহ ব্রিজ অনুসন্ধান বদলায়, টপোলজি নয়। একটি ব্রিজ ঠিকানা পাবলিক রিলে তালিকায় থাকে না এবং ট্রাফিককে Tor-এর মতো না দেখানোর জন্য আকার দেওয়া হয়, তাই কেবল ঠিকানা মেলানো অপারেটর এটি চিহ্নিত করবে না। সেশন এখনও আপনার VPN ক্লায়েন্ট থেকে আসে, আর প্রদানকারী এখনও একটি প্রান্তবিন্দু, একটি আয়তন ও একটি সময়সূচি দেখে।
সক্ষমতা কোনো ধারণ নীতি নয়
যে অপারেটর একটি সংযোগ পর্যবেক্ষণ করতে পারে সে তা রাখার প্রতিশ্রুতি দেয়নি। লগিং একটি আলাদা সিদ্ধান্ত, নীতিতে লিখিত, এখতিয়ার দ্বারা সীমিত, এবং কেবল সেই প্রমাণ দিয়েই যাচাইযোগ্য যা আপনি ইতিমধ্যে বিশ্বাস করেন। লগ নেই এমন লেবেল উপরে বর্ণিত নেটওয়ার্ক ভূমিকা বদলায় না।
অ্যাকাউন্ট পরিচয় সাধারণত এক্সিট ঠিকানার চেয়ে বেশি গুরুত্বপূর্ণ। যদি আপনি ইমেইল ঠিকানা দিয়ে সাইন ইন করেন, বা কার্ডে অর্থ দেন, তবে প্রদানকারী একটি গন্তব্যও লগ না করেই সেশনটি আপনার সাথে যুক্ত করতে পারে। এক্সিট IP ঘুরানো এতে কিছুই করে না।
যেকোনো উত্তর বিশ্বাস করার আগে কভারেজ যাচাই করুন
যারা মনে করেন তারা VPN-এর উপর দিয়ে Tor চালান, তাদের বেশিরভাগই এর একটি অংশ চালান। Tor Browser বাদ দেওয়া বিভক্ত টানেলিং, ব্রাউজার ঢাকে কিন্তু tor সার্ভিস ঢাকে না এমন কিল সুইচ, টানেল ওঠার আগে চালু হওয়া স্টার্টআপ ইউনিট, এবং টানেল এড়িয়ে যাওয়া IPv6 পথ—এই চারটিই সাধারণ।
ক্লায়েন্টের স্ট্যাটাস স্ক্রিন পড়া এগুলোর একটিও পরীক্ষা করে না। যে পরীক্ষা করে: Tor Browser চালু রেখে টানেল নামিয়ে দিন, আর দেখুন গার্ড সংযোগ ভৌত ইন্টারফেসে টিকে থাকে কি না।
যে ক্রমে আমি যাচাই করি, প্রথম ব্যর্থতায় থেমে যাই:
ip route get 203.0.113.10টানেল ডিভাইস ফেরত দেয়।ss -tnp | grep -i torটানেলের স্থানীয় ঠিকানা সহ গার্ড সংযোগ দেখায়।ip -6 routeটানেলের বাইরে কোনো ডিফল্ট রুট নেই, বা ক্লায়েন্টে IPv6 বন্ধ।- VPN বন্ধ করলে tor সংযোগ ভৌত লিংকে রেখে না দিয়ে শেষ হয় বা পথ বদলায়।
কোন ক্রম আপনার প্রতিরক্ষার সাথে মেলে
দুই ক্রমই কিছু লুকায় আর কিছু প্রকাশ করে, তাই উত্তর হলো আপনি কোন পর্যবেক্ষক নিয়ে চিন্তিত সেই বেছে নেওয়া।
| Observer | Tor over VPN | VPN over Tor |
|---|---|---|
| Your ISP or local network | Sees a VPN connection, not Tor | Sees a Tor guard connection |
| Your VPN provider | Sees Tor use, and your home address | Sees a Tor exit as the client, not your home address |
| Tor entry relay | Sees the VPN exit | Sees your home address |
| Destination website | Sees a Tor exit | Sees a Tor exit |
যা প্রতিরোধ করতে চান তার সাথে সারি মিলে যাওয়া পর্যন্ত কলাম ধরে পড়ুন। যদি দুশ্চিন্তা স্থানীয় নেটওয়ার্ক বা এমন ISP হয় যা Tor রেকর্ড করে বা ব্লক করে, VPN-এর উপর দিয়ে Tor তা সামলায়। যদি দুশ্চিন্তা হয় যে VPN অপারেটর আপনার বাড়ির ঠিকানা জানে, Tor-এর উপর দিয়ে VPN তা সামলায়, এবং এর দাম দেয় Tor ব্যবহার আপনার নিজের নেটওয়ার্ককে আর বাড়ির ঠিকানা গার্ডকে দেখিয়ে।
কোনো বিন্যাসই দুই প্রান্তকে অন্ধ রাখে না। একজন পর্যবেক্ষক যোগ করলে অন্যজন সরে যায় না। Tor Project-এর Tor-এর সাথে VPN চালানো নোটটি অন্য দিক থেকেই একই কথা বলে: টানেল বদলায় কাকে বিশ্বাস করা হয় এবং কোন ব্যর্থতার পথ থাকে, তাই কী লুকাতে চেয়েছিলেন তা ঠিক না করে এটি যোগ করার মতো উন্নতি নয়।
আগে পর্যবেক্ষক ঠিক করুন, পরে ক্রম বাছুন, এবং ক্লায়েন্টের সূচক নয়, ip route get ও ss দিয়ে যাচাই করুন। যদি পর্যবেক্ষক এমন কেউ হয় যে VPN প্রদানকারীকেই বাধ্য করতে পারে, কোনো ক্রম-পছন্দ তা ঠিক করে না।