socat SOCKS সেতু: সাইটের TLS হোস্টনেম সংরক্ষণ করুন
একটি SOCKS গন্তব্যের জন্য loopback TCP শ্রোতা ব্যবহার করুন এবং অ্যাপ্লিকেশনটিতে HTTP ও TLS পরিচয় সংরক্ষণ করুন।
অ্যাপ্লিকেশনটির SOCKS বিকল্প নেই, তবে এটি নির্বাচিত TCP ঠিকানায় সংযোগ করতে পারে। স্থির-লক্ষ্যের অ্যাডাপ্টার একটি গন্তব্যের জন্য SOCKS কথোপকথন সরবরাহ করতে পারে। এটিকে আরেকটি সাধারণ ফরওয়ার্ড প্রক্সি হতে হবে না।
SOCKS4A সমর্থনকারী socat বিল্ডের জন্য একটি উদাহরণস্বরূপ বিন্যাস:
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
SOCKS এন্ডপয়েন্টটি স্থানীয় পোর্ট 1080। অ্যাডাপ্টারটি স্থানীয় পোর্ট 9443-এ শোনে এবং সেই এন্ডপয়েন্টের কাছে service.example.net:443 চায়। এগুলি উদাহরণ মান, সম্পূর্ণ পরিষেবা স্থাপনা নয়।
অ্যাডাপ্টারের একটি নির্দিষ্ট লক্ষ্য আছে
প্রতিটি গৃহীত TCP সংযোগ একই পরিষেবা চায়। 9443-এ সংযোগকারী অ্যাপ্লিকেশন তার স্বাভাবিক প্রোটোকল বাইট সরবরাহ করে; socat SOCKS4A আলোচনা সরবরাহ করে। 9443-এ নতুন HTTP CONNECT অনুরোধ পাঠালে অন্য গন্তব্য নির্বাচিত হবে না—এটি সেই বাইটগুলি স্থির পরিষেবার দিকে পাঠাবে।
SOCKS4A দূরবর্তী রেজোলিউশনের জন্য SOCKS এন্ডপয়েন্টকে একটি হোস্টনেম দেয়। এটি ক্লায়েন্ট-নির্বাচিত ঠিকানা ব্যবহারকারী SOCKS4 রূপ থেকে আলাদা। নির্বাচিত আপস্ট্রিম—SOCKS4 প্রক্সি তালিকা থেকে একটি সর্বজনীন প্রার্থী সহ—SOCKS4A হোস্টনেম হ্যান্ডলিং এবং প্রয়োজনীয় প্রমাণীকরণ সমর্থন করতেই হবে; এই উদাহরণটি SOCKS5 পাসওয়ার্ড-লগইন রেসিপি নয়।
স্থানীয়ভাবে সংযোগ করুন, আসল পরিষেবা চিহ্নিত করুন
একটি HTTPS URL-কে https://127.0.0.1:9443/ তে বদলালে ক্লায়েন্ট TLS ও HTTP-এর জন্য যে হোস্টনেম ব্যবহার করতে পারে তা বদলে যায়। service.example.net-এর একটি সার্টিফিকেট loopback-এর জন্য বৈধ সার্টিফিকেট হবে না।
যেখানে ক্লায়েন্ট পৃথক সংযোগ রাউটিং সমর্থন করে, সেখানে মূল URL পরিচয় রাখুন। Curl সেই পার্থক্য দেখাতে পারে:
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
সকেটটি স্থানীয় অ্যাডাপ্টারে যায়, অথচ TLS যাচাই ও HTTP গন্তব্য service.example.net থাকে। অন্য অ্যাপ্লিকেশনগুলির নিজস্ব সমতুল্য সমর্থিত নিয়ন্ত্রণ দরকার; প্রতিটি ক্লায়েন্ট তা দেয় না।
loopback বাইন্ড নেটওয়ার্ক এক্সপোজার সীমিত করে, তবে অন্য যোগ্য স্থানীয় প্রক্রিয়া এখনও এটিতে পৌঁছাতে পারে। পরিষেবার আয়ু ও ব্যবহারকারীদের উপযুক্ত রাখুন। loopback URL-এর কারণে হওয়া পরিচয় ত্রুটি চেপে না রেখে TLS যাচাই রাখুন।