ٹنل کبھی نہ بننے کے باوجود پورٹ 443 پر TCP ہینڈ شیک مکمل ہونا ایک بات ثابت کرتا ہے، اور وہ چھوٹی بات ہے۔ اس پتے پر کچھ سن رہا ہے اور کنکشن قبول کرنے کو تیار ہے۔ یہ سروس، پیش ہونے والا سرٹیفکیٹ یا پہلے بائٹس کے بعد کیا ہوتا ہے، اس کی نشاندہی نہیں کرتا۔

اس ہینڈ شیک اور کام کرنے والی ٹنل کے درمیان چار مراحل ہیں، اور ہر ایک مختلف غلطی پیدا کرتا ہے۔

کھلا پورٹ صرف ایک تہہ بیان کرتا ہے

TCP کنکشن قبول کرنے کا مطلب ہے کہ ایک عمل ساکٹ کا مالک ہے اور راستہ ہینڈ شیک کی اجازت دیتا ہے۔ یہ اس بارے میں کچھ نہیں کہتا کہ وہ عمل SSTP سرور ہے، آپ کی پروفائل کے نام کے لیے درست سرٹیفکیٹ رکھتا ہے، یا آپ کے اکاؤنٹ کی اجازت دے گا۔ اسی پتے پر ویب سرور ہینڈ شیک کا بہترین جواب دیتا ہے اور پھر آپ کی SSTP درخواست کو HTTP غلطی سے جواب دیتا ہے۔ اس ہینڈ شیک کے اوپر سب کچھ جانچا نہیں جاتا۔

پورٹ ٹیسٹ کو سب سے سستا ممکن فلٹر سمجھیں، فیصلہ نہیں۔ اس کی قدر یہ ہے کہ یہ ناکامی کی پوری قسم ہٹا دیتا ہے، یہ نہیں کہ اوپر کے سب کی تصدیق کرتا ہے۔

دونوں کو ملانا ہی وجہ ہے کہ لوگ ایسے ٹیسٹ کے بعد کلائنٹ دوبارہ نصب کرتے ہیں جس نے کلائنٹ کا اصل مسئلہ کبھی نہیں جانچا۔

ثبوتوں کے ساتھ چار مراحل الگ کریں

مراحل ٹرانسپورٹ کی رسائی، TLS توثیق، HTTPS پر SSTP تبادلہ، اور ٹنل کے اندر PPP توثیق ہیں۔ پہلا عبور کر کے چوتھے پر ناکام ہونے والے راستے کو اسناد کی درستی چاہیے؛ دوسرے پر ناکام ہونے والے کو سرٹیفکیٹ یا نام کی درستی چاہیے۔ ان مرمتوں میں کچھ مشترک نہیں، اور غلط چننا رکاوٹ ضائع کرتا ہے۔

nc -vz vpn.example.net 443
openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief
curl -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/

تیسری ہدایت کو غور سے پڑھنا چاہیے۔ عام ویب صفحے سے آنے والا 200 بتاتا ہے کہ ویب سروس موجود ہے؛ یہ نہیں بتاتا کہ SSTP درخواست سمجھی جائے گی۔ اسی پتے سے آنے والا 404 بھی VPN کے بارے میں اتنا ہی بے معلومات ہے۔ صرف کلائنٹ لاگ بتاتا ہے کہ چار میں سے کس مرحلے تک پہنچا۔

دیکھیں ہر ہدایت نے کون سا نام استعمال کیا۔ سرٹیفکیٹ اسی نام سے چنا جاتا ہے جو آپ بھیجتے ہیں، اس لیے پروفائل اور ٹیسٹ کے درمیان فرق وہ فرق ہے جو آپ نے خود پیدا کیا۔ اس نام کو نتیجے کے ساتھ لکھنا بعد کی الجھن روکتا ہے۔

جزوی کامیابی کو درست سمت میں پڑھیں

ایک واسطہ عام براؤزنگ کی اجازت دے کر بعد کا تبادلہ رد کر سکتا ہے، اسی لیے ویب سائٹس کے لیے کام کرنے والا پراکسی ٹنل کے لیے ناکام ہو سکتا ہے۔ یہی نمونہ اس وقت ظاہر ہوتا ہے جب سرٹیفکیٹ براؤزر کے نام کے لیے درست ہو مگر پروفائل میں مقرر نام کے لیے نہ ہو: براؤزر مطمئن ہے اور کلائنٹ نہیں، اور دونوں اپنی جانچ کے بارے میں درست ہیں۔

اس کی تشخیص کے دوران سرور توثیق کو فعال رکھیں۔ اسے بند کرنا سرٹیفکیٹ کے فرق کو کامیاب ہینڈ شیک میں بدل دیتا ہے اور وہ واحد ثبوت چھپا دیتا ہے جو ناکامی کی وضاحت کرتا۔

اگر وہی پروفائل کسی اور نیٹ ورک سے کام کرے تو فرق راستے پر منحصر ہے۔ یہ تلاش کو واسطوں تک محدود کرتا ہے بغیر بتائے کہ کون، اور یہ پھر بھی مفید قدم ہے۔ آپ نے جو نیٹ ورک استعمال کیا اسے نوٹ کریں، کیونکہ اس کے بغیر موازنہ بے کار ہے۔

پھر صرف سیشن نہیں، ایپلیکیشن آزمائیں

سیشن موجود ہونے پر جس کلائنٹ کو ضرورت ہے اس سے مطلوبہ راستہ، نام کا حل اور سروس کی اجازت تصدیق کریں۔ جڑی ہوئی ٹنل میں دور جانب غائب فارورڈنگ یا ایسا واپسی راستہ ہو سکتا ہے جو کبھی نہیں تھا، اور وہ ناکامیاں منتظر شخص کو بالکل ایپلیکیشن مسئلہ جیسی لگتی ہیں۔

ہر نتیجہ اس مرحلے سے منسلک رکھیں جس نے اسے پیدا کیا۔ کھلے پورٹ کو کام کرنے والا VPN کہنا وہ طریقہ ہے جس سے پانچ منٹ کی سرٹیفکیٹ جانچ ایک دن کی سافٹ ویئر دوبارہ تنصیب بن جاتی ہے۔

متعلقہ مضامین