دو ڈیزائن 443 پورٹ پر TLS چلا سکتے ہیں اور اس سے بالکل مختلف باتیں مراد لے سکتے ہیں۔ ایک لپیٹ مقامی پورٹ اور دور دراز backend کے درمیان ایک تشکیل شدہ کنکشن کی حفاظت کرتی ہے۔ نیٹ ورک رسائی کا ڈیزائن منتخب ٹریفک لے کر چلتا ہے اور بدلتا ہے کہ کلائنٹ کہاں تک پہنچ سکتا ہے۔ نیچے دی گئی چار جانچیں ترتیب سے کریں اور آپ جان جائیں گے کہ آپ کون سا دیکھ رہے ہیں، جو عام طور پر یہ جاننے کے لیے کافی ہے کہ کون سی تہہ ناکام ہوئی۔

اس کنکشن سے شروع کریں جو آپ نے واقعی تشکیل دیا

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

نیٹ ورک ڈیزائن کا معاہدہ مختلف ہے، اور وہ پورٹ جوڑی میں نہیں، راستوں اور پالیسی میں ظاہر ہوتا ہے۔

غور کریں کہ ان دو وضاحتوں میں سے کون سی آپ کے خاکے سے میل کھاتی ہے۔ اگر جواب درمیان میں سرٹیفکیٹ کے ساتھ ایک پورٹ میپنگ ہے، تو مصنوعات کا نام VPN کہے تب بھی آپ کے پاس لپیٹ ہے۔ اگر جواب ٹنل انٹرفیس اور راستوں کی تبدیلیاں ہیں، تو 443 پر چلتا ہو تب بھی آپ کے پاس نیٹ ورک ڈیزائن ہے۔

جانچیں کہ لپیٹ کس سے جڑتی ہے

سننے اور جڑنے کی ترتیبات پڑھیں اور انھیں اصل backend تک لے جائیں۔ ڈیٹا بیس پورٹ پر بھیجنے والی لپیٹ کوئی ویب ایپلیکیشن نہیں کھولتی، اور پروگرام چلانے والی لپیٹ میزبان کی باقی ہر چیز شائع کرنے کے بجائے وہی پروگرام شروع کرتی ہے۔ backend ہی واحد چیز ہے جو لپیٹ جانتی ہے۔

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

openssl s_client -connect wrapper.lab.example:443 -servername wrapper.lab.example -verify_return_error
sudo ss -ltnp | grep 443

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

جانچیں کہ ڈیزائن کون سی ٹریفک لے کر چلتا ہے

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

مصنوعات کا لیبل نہیں بتاتا کہ آپ نے ان میں سے کون سا ماڈل خریدا، اور پورٹ نمبر اس سے بھی کم بتاتا ہے۔

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

ناکام حد کی جانچ کریں، لیبل کی نہیں

ایک ناکام کوشش کے حقائق لکھیں: آگے کا پتہ، سننے والا، وہ شناخت جو کلائنٹ نے تصدیق کی، backend کا ہدف اور مطلوبہ کارروائی۔ کامیاب مصافحہ ثابت کرتا ہے کہ بیرونی TLS مکمل ہوا اور backend کے بارے میں کچھ نہیں کہتا۔ backend کا انکار آگے کی شناخت کی ناکامی سے مختلف واقعہ ہے، اور کلائنٹ سے -verify_return_error ہٹانے سے دونوں میں سے کوئی بہتر نہیں ہوتا۔ ملتی جلتی چیز کا ملتی جلتی سے موازنہ کریں، کیونکہ کسی دوسرے میزبان نام یا پورٹ کے ذریعے کامیابی یہ نہیں دکھاتی کہ حالات یکساں تھے۔

پورٹ 443 ایک روایت ہے جو TLS کو درمیانی ڈبوں سے گزرنے دیتی ہے۔ یہ من مانی ٹریفک کو پالیسی آلے کے لیے ویب درخواست جیسا نہیں بناتی۔

ایک جملے پر ختم کریں جو آخری جوڑی، کیا منتقل ہوتا ہے، کون سی ایپلیکیشنز اسے استعمال کرتی ہیں اور منزل کون سی اجازت نافذ کرتی ہے، ان کے نام لے۔ جو ڈیزائن ان چار خالی جگہوں کو نہیں بھر سکتا وہ مکمل نہیں، چاہے اس کا لیبل کچھ بھی دعویٰ کرے۔ وہی جملہ فائر وال کے مالک کو ڈیزائن سمجھانے کا تیز ترین طریقہ بھی ہے۔

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