Privoxy: HTTP प्रॉक्सी क्लाइंट को SOCKS टनल से जोड़ें
केवल HTTP स्वीकार करने वाले प्रॉक्सी क्लाइंट को टनल का पोर्ट बदलने के बजाय स्थानीय HTTP प्रॉक्सी के ज़रिए SOCKS टनल से जोड़ें।
SSH डायनामिक टनल, जिसमें PuTTY का डायनामिक फ़ॉरवर्डिंग भी शामिल है, SOCKS इंटरफ़ेस देता है। केवल HTTP प्रॉक्सी स्वीकार करने वाला ऐप्लिकेशन उस पोर्ट का उपयोग केवल उसे HTTP कह देने से नहीं कर सकता।
उनके बीच एक स्थानीय प्रोटोकॉल ब्रिज बैठ सकता है। ऐप्लिकेशन HTTP प्रॉक्सी अनुरोध ब्रिज को भेजता है, और ब्रिज SOCKS सेवा के ज़रिए गंतव्य कनेक्शन खोलता है।
Privoxy इस व्यवस्था को अपने फ़ॉरवर्डिंग नियमों के ज़रिए दस्तावेज़ करता है। किसी मौजूदा स्थानीय SOCKS5 टनल के लिए कॉन्फ़िगरेशन का एक टुकड़ा यह है:
forward-socks5 / 127.0.0.1:1080 .
ऐप्लिकेशन Privoxy के HTTP लिसनर से जुड़ता है, पोर्ट 1080 से नहीं। उस लिसनर को इच्छित एक्सेस नीति के अंतर्गत स्थानीय रखें। नियम के अंत में लगे बिंदु का एक दस्तावेज़ी अर्थ है; यह किसी अनुपस्थित इंटरनेट होस्टनाम के लिए प्लेसहोल्डर नहीं है।
यह प्रोटोकॉल अनुवाद है
Privoxy का फ़ॉरवर्डिंग दस्तावेज़ SOCKS फ़ॉरवर्डिंग सिंटैक्स और होस्टनाम हैंडलिंग समझाता है। साधारण TCP पोर्ट फ़ॉरवर्ड वही अनुवाद नहीं करता: यह क्लाइंट के HTTP बाइट्स को बिना बदले SOCKS लिसनर तक पहुँचाता है, जो अब भी SOCKS बातचीत की अपेक्षा करता है।
ब्रिज भी उस कॉन्फ़िगरेशन का हिस्सा बन जाता है जिसे आपको समझना है। Privoxy की अपनी सामग्री-फ़िल्टरिंग और एक्सेस सेटिंग्स हो सकती हैं। इसे जोड़ना मूल ऐप्लिकेशन में मूल रूप से SOCKS समर्थन जोड़ने के बराबर नहीं है।
HTTPS साइटों के लिए ऐप्लिकेशन आमतौर पर HTTP ब्रिज से CONNECT माँगता है, और ब्रिज गंतव्य कनेक्शन SOCKS के ज़रिए प्राप्त करता है। साइट का सामान्य TLS ऐप्लिकेशन-से-साइट संबंध ही रहता है; इस रास्ते को देने के लिए ब्रिज को साइट का रूप धारण करने की ज़रूरत नहीं है।
यदि ऐप्लिकेशन सीधे SOCKS इस्तेमाल कर सकता है, तो अतिरिक्त घटक अनावश्यक हो सकता है। ब्रिज का उपयोग वास्तविक प्रोटोकॉल असंगति हल करने के लिए करें, लिसनर और अपस्ट्रीम को स्पष्ट रूप से अलग रखते हुए।