HTTP कनेक्ट विधि की व्याख्या की गई
CONNECT वह HTTP विधि है जो प्रॉक्सी के माध्यम से HTTPS को काम करने देती है। एक पृष्ठ लाने के बजाय, यह प्रॉक्सी से एक गंदे सुरंग को एक गंतव्य पर खोलने के लिए कहती है ताकि एन्क्रिप्टेड ट्रैफ़िक बिना छेड़छाड़ के गुजर सके। यह गाइड बताती है कि CONNECT कैसे काम करता है, चरण दर चरण।
CONNECT क्यों मौजूद है
एक साधारण HTTP प्रॉक्सी आपके अनुरोध को पढ़कर, संसाधन को लाकर और उसे वापस करके काम करती है - यह पूर्ण अनुरोध और प्रतिक्रिया को देखती और भेजती है। यह सामान्य HTTP के लिए ठीक है, लेकिन यह HTTPS के लिए टूट जाती है: TLS का पूरा उद्देश्य यह है कि कोई मध्यस्थ ट्रैफ़िक को नहीं पढ़ सकता, इसलिए प्रॉक्सी आपके लिए "पृष्ठ लाने" के लिए बस नहीं कर सकती बिना एन्क्रिप्शन को तोड़े।
CONNECT विधि इसका समाधान करती है। प्रॉक्सी से कुछ लाने के लिए पूछने के बजाय, आपका क्लाइंट प्रॉक्सी से अनुरोध करता है कि वह एक कच्चा TCP टनल एक होस्ट और पोर्ट के लिए खोले और फिर रास्ते से हट जाए। एक बार टनल खुल जाने के बाद, आपका क्लाइंट सीधे गंतव्य के साथ TLS हैंडशेक करता है के माध्यम से प्रॉक्सी, और प्रॉक्सी अंधाधुंध दोनों दिशाओं में एन्क्रिप्टेड बाइट्स को भेजती है। प्रॉक्सी कभी भी प्लेनटेक्स्ट को नहीं देखती - यह केवल एक अपारदर्शी धारा को देखती है और, CONNECT लाइन और TLS SNI के माध्यम से, गंतव्य होस्टनाम को। यही कारण है कि s4m HTTP प्रॉक्सी पोर्ट 3128 पर HTTPS को ले जाती है।
कैसे सुरंग स्थापित की जाती है
प्रवाह संक्षिप्त और विशिष्ट है:
- आपका क्लाइंट
CONNECT example.com:443 HTTP/1.1को प्रॉक्सी को भेजता है, जिसमें एकHostहेडर और, यदि आवश्यक हो,Proxy-Authorizationक्रेडेंशियल्स होते हैं। - प्रॉक्सी एक TCP कनेक्शन खोलता है
example.com:443के लिए। - यदि यह सफल होता है, तो प्रॉक्सी जवाब देती है
HTTP/1.1 200 Connection Established। इस क्षण से कनेक्शन एक नग्न सुरंग है — कोई और HTTP अर्थ नहीं। - अब आपका क्लाइंट उस सुरंग के माध्यम से example.com के साथ सीधे TLS हैंडशेक करता है, और सभी बाद के एप्लिकेशन डेटा अंत-से-अंत एन्क्रिप्टेड होते हैं।
दो परिणाम होते हैं। पहले, TLS वास्तव में अंत-से-अंत रहता है: प्रॉक्सी कुछ भी प्रमाणित नहीं करती और सुरंग के अंदर कुछ भी नहीं पढ़ती, इसलिए प्रमाणपत्र मान्यता आपके क्लाइंट और असली सर्वर के बीच होती है। दूसरे, क्योंकि CONNECT केवल एक TCP सुरंग खोलता है, प्रॉक्सी सिद्धांत में अन्य TLS-आधारित या मनमाने प्रोटोकॉल को अन्य पोर्ट पर सुरंग कर सकती हैं — यही कारण है कि प्रॉक्सी आमतौर पर CONNECT को पोर्ट 443 (और कुछ अन्य) तक सीमित करती हैं ताकि एक ओपन रिले बनने से बचा जा सके।
curl के साथ CONNECT देखें
curl स्वचालित रूप से एक https:// URL के लिए HTTP प्रॉक्सी के माध्यम से CONNECT करता है। CONNECT अनुरोध और '200 कनेक्शन स्थापित' प्रतिक्रिया देखने के लिए -v का उपयोग करें।
# Verbose: watch the CONNECT handshake to the proxy, then TLS to the site curl -v -x http://USER:PASS@proxy.s4m.online:3128 https://example.com 2>&1 \ | grep -Ei 'CONNECT|Connection established|SSL connection|Proxy-Auth' # You'll see, in order: # > CONNECT example.com:443 HTTP/1.1 (client asks for a tunnel) # < HTTP/1.1 200 Connection established (proxy opened the tunnel) # * SSL connection using TLSv1.3 ... (TLS is end-to-end, past proxy) # Contrast: plain HTTP needs no tunnel; the proxy relays the request itself: curl -v -x http://USER:PASS@proxy.s4m.online:3128 http://example.com 2>&1 \ | grep -Ei 'GET http|absolute'
प्रश्न, उत्तरित
HTTP CONNECT विधि क्या करती है?
यह एक प्रॉक्सी से एक गंदा TCP टनल एक गंतव्य होस्ट और पोर्ट पर खोलने के लिए कहता है, न कि एक संसाधन लाने के लिए। एक बार जब प्रॉक्सी 200 कनेक्शन स्थापित करने का उत्तर देती है, तो क्लाइंट अपने स्वयं के TLS हैंडशेक और एन्क्रिप्टेड डेटा को सीधे गंतव्य पर टनल करता है, और प्रॉक्सी केवल अपारदर्शी बाइट्स को रिले करती है। यह HTTPS को HTTP प्रॉक्सी के माध्यम से कैसे काम करता है।
क्या प्रॉक्सी मेरे HTTPS ट्रैफ़िक को CONNECT टनल के दौरान पढ़ सकती है?
नहीं। जब सुरंग खुलती है, तो TLS आपके क्लाइंट और गंतव्य सर्वर के बीच अंत-से-अंत पर बातचीत की जाती है, इसलिए प्रॉक्सी केवल एन्क्रिप्टेड बाइट्स देखती है। यह कनेक्ट लाइन और TLS SNI से गंतव्य होस्टनेम और पोर्ट देख सकती है, लेकिन सामग्री नहीं - जब तक कि यह आपके डिवाइस द्वारा विश्वसनीय प्रमाणपत्र के साथ TLS इंटरसेप्शन नहीं करता।
प्रॉक्सी कनेक्ट को पोर्ट 443 तक सीमित क्यों करती हैं?
क्योंकि CONNECT एक मनमाना TCP टनल खोलता है, एक अनियंत्रित प्रॉक्सी किसी भी प्रोटोकॉल को किसी भी पोर्ट पर रिले कर सकती है और दुरुपयोग के लिए एक ओपन रिले बन सकती है। CONNECT को 443 (और कभी-कभी एक छोटी अनुमति सूची) तक सीमित करना इसे सामान्य HTTPS तक सीमित करता है जबकि प्रॉक्सी का उपयोग असंबंधित सेवाओं को टनल करने से रोकता है।
एक HTTP प्रॉक्सी जो HTTPS को टनल करता है
s4m का प्रमाणित HTTP प्रॉक्सी पोर्ट 3128 पर CONNECT को संभालता है ताकि HTTPS अंत-से-अंत एन्क्रिप्टेड रहे, SOCKS5 के साथ 1080 पर। मीटर किए गए पैसे के अनुसार, गुमनाम खाते, क्रिप्टो स्वीकार किया जाता है।
लोगों ने इस पृष्ठ को खोजकर पाया
- HTTP कनेक्ट विधि की व्याख्या की गई
- आईपी पता को कैसे कॉन्फ़िगर करें
- आईपी पता चरण दर चरण
- प्रमाणीकरण के साथ Puppeteer प्रॉक्सी सेटअप
- socks5 प्रॉक्सी चरण दर चरण
- openvpn विंडोज के लिए
- स्क्रैपिंग के लिए प्रॉक्सी समझाया गया
- WireGuard VPN को सेट अप करने का तरीका, चरण दर चरण
- http प्रॉक्सी क्या है
- प्रॉक्सी प्रमाणीकरण
- प्रॉक्सी सेटअप द्वारा देश
- डेटा सेंटर बनाम आवासीय बनाम मोबाइल प्रॉक्सी
- वायरगार्ड समझाया गया
- प्रॉक्सी सेटअप सेटिंग्स
- प्रॉक्सी सेटअप
वास्तविक खोज वाक्यांश जिनका यह पृष्ठ उत्तर देता है — लिंक किए गए वाक्यांश उस पृष्ठ को खोलते हैं जो उन्हें गहराई से कवर करता है।