ایڈمن حقوق کے بغیر پورٹیبل VPN کلائنٹ: اب بھی کیا ٹوٹتا ہے
ایک پورٹیبل VPN کلائنٹ انسٹالر کو چھوڑ سکتا ہے اور پھر بھی ٹنل ڈیوائس، روٹ اور ریزولور میں تحریر کی ضرورت ہو سکتی ہے۔ اس پر بھروسہ کرنے سے پہلے یہ جانچیں چلائیں۔
پورٹیبل انسٹالر کی وضاحت کرتا ہے، کرنل کی نہیں۔ کلائنٹ USB پر ایک ہی ایگزیکیوٹیبل فائل کے طور پر آ سکتا ہے اور پہلا پیکٹ حرکت کرنے سے پہلے پھر بھی ٹنل ڈیوائس، روٹ ٹیبل میں اندراج اور ریزولور میں تحریر کی ضرورت ہو سکتی ہے۔ ان تینوں میں سے کون سی چیز ہدف مشین آپ کو چھونے دے گی یہ طے کرتا ہے کہ وہ بلڈ وہاں بالکل کام کرتا ہے یا نہیں۔ نیچے دی گئی جانچیں اسی ترتیب سے سوال کا جواب دیتی ہیں جس ترتیب سے کلائنٹ انہیں ملے گا۔
پورٹیبل تین مختلف وعدوں کا احاطہ کرتا ہے، اور صرف ایک مفت ہے
انسٹالر نہ ہونے کا مطلب ہے کہ وینڈر نے کوئی سروس رجسٹر نہیں کی، کوئی اَن انسٹالر نہیں بھیجا اور کوئی مینو اندراج شامل نہیں کیا۔ ایڈمن نہ ہونے کا مطلب ہے کہ ایک عام اکاؤنٹ کلائنٹ شروع کر سکتا ہے اور کنکشن مکمل کر سکتا ہے۔ ہوسٹ میں تبدیلی نہ ہونے کا مطلب ہے کہ آپ کے باہر نکلنے کے بعد مشین ویسی ہی دکھتی ہے۔ پورٹیبل کہنے والے ڈاؤن لوڈ صفحات عام طور پر ان میں سے صرف پہلے کا وعدہ کرتے ہیں، اور باقی دو وہ جگہ ہیں جہاں تعیناتیاں ناکام ہوتی ہیں۔ بلڈ تنگ معنی میں بھی پورٹیبل ہو سکتا ہے: یہ صرف پڑھنے والے میڈیا سے بغیر کسی ڈاٹ فائل تحریر کے چلتا ہے، جو نیٹ ورک اسٹیک کے بارے میں اب بھی کچھ نہیں کہتا۔
مہنگے وعدے دوسرا اور تیسرا ہیں۔ ایک ایگزیکیوٹیبل فائل جسے اڈاپٹر، روٹ یا ریزولور میں تحریر درکار ہے، آپریٹنگ سسٹم سے وہ اختیار مانگتی ہے جو پورٹیبل لیبل نے کبھی نہیں ڈھکا۔
وہ مراعات یافتہ معاون تلاش کریں جسے کلائنٹ بلائے گا
تقریباً کوئی VPN کلائنٹ خود پیکٹ نہیں ہلاتا۔ Windows پر ڈیٹا راستہ WFP فلٹرز اور Base Filtering Engine سے گزرتا ہے، macOS پر اس NetworkExtension فراہم کنندہ سے جسے صارف سسٹم سیٹنگز میں منظور کرتا ہے، اور Linux پر tun ڈیوائس اور روٹنگ اسٹیک سے۔ آپ کی کاپی کی گئی بائنری ان اجزاء کے لیے کنٹرول سطح ہے، ان کا متبادل نہیں۔ پوچھیں کہ کلائنٹ کس جزو کی توقع رکھتا ہے، پھر تصدیق کریں کہ وہ نصب ہے، چل رہا ہے اور آپ کے اکاؤنٹ سے قابل استعمال ہے۔
اس دعوے کو ثابت کرنے کے لیے Linux سب سے آسان جگہ ہے، کیونکہ جانچ ایک ہی سسٹم کال ہے۔ /dev/net/tun کھولنا اور کرنل سے ڈیوائس مانگنا CAP_NET_ADMIN کا تقاضا کرتا ہے، اور کرنل کی TUN/TAP دستاویز ملکیت کا قاعدہ اور صلاحیت دونوں بتاتی ہے۔ جانچ اس اکاؤنٹ سے چلائیں جو کلائنٹ شروع کرے گا، root کے طور پر نہیں۔
ls -l /dev/net/tun
ip tuntap add dev vpntest mode tun
ip link delete vpntest
درمیانی سطر پر اجازت کی غلطی وہی جواب ہے جو آپ تلاش کر رہے تھے: یہ اکاؤنٹ ٹنل انٹرفیس نہیں بنا سکتا، اس لیے جسے بھی اس کی ضرورت ہو وہ کوئی بھی صارف-خلائی کلائنٹ ڈاؤن لوڈ کے وقت نہیں بلکہ کنیکٹ کے وقت ناکام ہوتا ہے۔ آخری سطر ٹیسٹ ڈیوائس ہٹاتی ہے اور کام کرنے پر کچھ نہیں چھاپتی۔ اگر دونوں سطریں کامیاب ہوں، تو ہوسٹ نے کچھ بھی مستقل نہیں بدلا۔
پہلے کنکشن سے پہلے روٹ اور ریزولور تبدیلیاں جانچیں
تقسیم شدہ ٹنل کنکشن کو روٹنگ فیصلہ بنا دیتا ہے، جبکہ مکمل ٹنل اسے ڈیفالٹ روٹ کی جگہ لینے میں بدل دیتا ہے۔ دونوں ہوسٹ کے نیٹ ورک اسٹیک میں تحریریں ہیں، اور دونوں غیر مراعات یافتہ اکاؤنٹ کے لیے ناکام ہوتے ہیں، چاہے خود کلائنٹ صاف شروع ہو۔ ریزولور تیسری تحریر ہے، اور systemd ہوسٹس پر عام طور پر آخری ٹوٹنے والا وہی ہوتا ہے۔ یہ ترتیب اس وقت اہم ہے جب آپ طے کرتے ہیں کہ بلند انسٹال کہاں خرچ کرنا ہے۔
روٹ جانچ کو ایسی منزل درکار ہے جس کی آپ کو واقعی پرواہ ہو، اس لیے نیچے دیے گئے پلیس ہولڈر کی جگہ اپنی پروفائل سے سب نیٹ رکھیں۔ روٹ کو کسی چیز سے جڑنے کے لیے ڈیوائس کا نام موجود ہونا چاہیے۔
ip route add 10.20.0.0/16 dev vpntest
ip route del 10.20.0.0/16
resolvectl query intranet.example.internal
اگر پہلی سطر RTNETLINK answers: Operation not permitted واپس کرے تو اس کا مطلب ہے کہ اکاؤنٹ وہ نجی روٹ نصب نہیں کر سکتا جس کا پروفائل تقاضا کرتا ہے۔ دوسری سطر وہی حق الٹی صورت میں ثابت کرتی ہے، جو اہم ہے کیونکہ روٹیں شامل کرنے والا مگر ہٹانے سے قاصر کلائنٹ پیچھے ٹوٹا ہوا ٹیبل چھوڑ دیتا ہے۔ پھر ریزولور استفسار دکھاتا ہے کہ نجی نام ٹنل کے ذریعے حل ہوتے ہیں یا ہوسٹ کے پہلے سے قابل اعتماد ریزولور کی طرف رس کرتے ہیں۔
ٹیسٹ ڈیوائس کے موجود رہتے ہوئے تینوں چلائیں، پھر اسے حذف کریں۔ گمشدہ ڈیوائس کی طرف اشارہ کرنے والا روٹ ہی ناکام کنکشن کے بعد لیپ ٹاپ کے کنیکٹیویٹی کھونے کی سب سے عام وجہ ہے۔
طے کریں کہ سیشن سے کیا بچنا چاہیے
فولڈر حذف کرنا صفائی کا منصوبہ نہیں ہے۔ اڈاپٹر، روٹس، ریزولور سیٹنگز، قابل اعتماد سرٹیفکیٹ اور محفوظ شدہ اسناد میں سے ہر ایک عمل سے زیادہ زندہ رہ سکتا ہے، اور بوٹ کے وقت کی سروس ان میں سے کچھ کو بغیر پوچھے بحال کر سکتی ہے۔ لکھیں کہ کلائنٹ کو کیا پیچھے چھوڑنے کی اجازت ہے، اسے چلانے سے پہلے، نہ کہ پہلی ناکام منقطع کے بعد۔
عملی قاعدہ یہ ہے کہ جن تین سطحوں کو آپ تبدیل کرنے جا رہے ہیں ان کا سنیپ شاٹ لیں اور بعد میں ان کا موازنہ کریں۔ پہلے کنکشن سے پہلے انٹرفیس، مرکزی روٹنگ ٹیبل اور ریزولور کی حالت ریکارڈ کریں، پھر کلائنٹ کے باہر نکلنے کے بعد وہی تین ریڈنگز دہرائیں۔
ip -brief addr show
ip route show table main
resolvectl status
دوسری گرفت میں موجود اور پہلی میں غیر موجود ہر چیز کو مالک چاہیے۔ یا تو کلائنٹ باہر نکلتے وقت اسے ہٹا دیتا ہے، یا آپ اسے انہی کمانڈز سے ہٹاتے ہیں جنہوں نے اسے بنایا، اور وہ ہٹانا تعیناتی نوٹس میں جاتا ہے، کسی کی یاد میں نہیں کہ کیا ہوا۔ Windows پر مساوی ریڈنگز Get-NetAdapter، Get-NetRoute اور Get-DnsClientServerAddress ہیں، انہیں بلندی کی ضرورت نہیں لیکن وہی باقیات دکھاتے ہیں۔