HTTP प्रोक्सी कि HTTPS प्रोक्सी: लेबलको अर्थ के हो?
HTTPS साइटसम्म टनेल बनाउने HTTP प्रोक्सी र प्रोक्सीसम्मको जडान नै इन्क्रिप्ट गर्ने HTTPS प्रोक्सीबीचको फरक बुझ्नुहोस्।
प्रोक्सी लिस्नरको दस्तावेजमा उल्लेख गरिएको स्किम प्रयोग गर्नुहोस्। HTTP प्रोक्सी सूचीबाट विकल्प छान्दा क्लाइन्ट कन्फिगर गर्नुअघि लिस्नरको स्किम निश्चित गर्नुहोस्। HTTPS साइटका लागि http://proxy.example:8080 प्रयोग गर्न सकिन्छ; यसलाई https:// मा बदल्नुको अर्थ प्रोक्सीसँग अर्को प्रकारको जडान माग्नु हो।
| प्रोक्सी URL | वेबसाइट URL | जडान |
|---|---|---|
http://proxy.example:8080 | http://example.com/ | प्रोक्सी र गन्तव्य दुवैसम्म इन्क्रिप्ट नगरिएको HTTP। |
http://proxy.example:8080 | https://example.com/ | प्रोक्सीसम्म HTTP CONNECT, त्यसपछि टनेलमार्फत गन्तव्यसँग TLS। |
https://proxy.example:8443 | https://example.com/ | प्रोक्सीसम्म TLS; गन्तव्यसम्मको टनेल त्यही जडानभित्र हुन्छ। |
CONNECT अनुमति दिने साधारण HTTP लिस्नरका लागि यो कन्फिगरेसन मिल्दो छ:
curl --proxy http://127.0.0.1:8080 https://example.com/प्रोक्सीले टनेल स्वीकार गरेपछि वेबसाइटको TLS ह्यान्डसेक हुन्छ। प्रोक्सी URL लाई https:// मा बदल्नुभयो तर लिस्नरले इन्क्रिप्ट नगरिएको HTTP मात्र बुझ्छ भने, वेबसाइटसँग सम्पर्क हुनुअघि नै प्रोक्सीसँगको TLS नेगोसिएसन असफल हुन सक्छ।
प्रोक्सीसम्म TLS ले के थप्छ?
TLS समर्थन गर्ने प्रोक्सीले क्लाइन्ट र प्रोक्सीबीचको जडानलाई उक्त बाटोमा हुने निष्क्रिय निगरानीबाट जोगाउँछ। यसमा CONNECT आदानप्रदान र प्रोक्सी प्रमाणीकरण पनि पर्छन्। प्रोक्सी सञ्चालकले अझै जडान सम्हाल्छ र टनेलको गन्तव्य जान्दछ। यो मोड क्लाइन्ट र लिस्नर दुवैले समर्थन गर्नुपर्छ:
curl --proxy https://proxy.example:8443 https://example.com/सेवाको वास्तविक होस्टनाम प्रयोग गर्नुहोस्; प्रमाणपत्र त्यस नामसँग मिल्नुपर्छ र विश्वसनीय हुनुपर्छ। गन्तव्य र पोर्टसम्बन्धी प्रतिबन्धहरू अझै लागू हुन्छन्।
दुवैतर्फ HTTPS हुँदा प्रमाणपत्रका दुई जाँच हुन्छन्। curl ले तिनलाई छुट्टाछुट्टै कन्फिगर गर्न दिन्छ:
curl --proxy https://proxy.example:8443 --proxy-cacert proxy-ca.pem --cacert origin-ca.pem https://example.com/--proxy-cacert ले प्रोक्सीका लागि विश्वासको सेटिङ दिन्छ; --cacert ले गन्तव्यका लागि। आवश्यक पर्दा प्रशासकले दिएको प्रमाणपत्र बन्डल प्रयोग गर्नुहोस्; प्रणालीको विश्वाससम्बन्धी सेटिङ नै पर्याप्त हुन सक्छ। कुनै पनि सेटिङ बदल्नुअघि कुन ह्यान्डसेक असफल भयो भनेर पहिचान गर्नुहोस्।
कुनै प्रोक्सी सूचीको “HTTPS” लेबलले एन्डपोइन्ट CONNECT परीक्षणमा सफल भएको मात्र जनाउन सक्छ। सूचीले परीक्षणको तरिका नखुलाएसम्म उक्त लेबलबाट मात्रै लिस्नरले http:// अपेक्षा गर्छ कि https:// भन्ने थाहा हुँदैन।