फ़ॉरवर्ड प्रॉक्सी एक ऐसा पॉइंट उपलब्ध कराती हैं जिसके ज़रिए कई मशीनें, किसी बाहरी सर्वर को अनुरोध भेजती हैं. वे सुरक्षा से जुड़ी नीतियां लागू कर सकते हैं, अनुरोधों को लॉग और उनका विश्लेषण कर सकते हैं, और अन्य कार्रवाइयां कर सकते हैं, ताकि अनुरोध आपके कारोबार के नियमों का पालन करें. Edge के साथ, फ़ॉरवर्ड प्रॉक्सी आम तौर पर आपके एपीआई प्रॉक्सी और बाहरी TargetEndpoint (बैकएंड टारगेट सर्वर) के बीच मध्यस्थता करती है.
Edge और TargetEndpoint के बीच एचटीटीपी फ़ॉरवर्ड प्रॉक्सी का इस्तेमाल करने के लिए, आपको मैसेज प्रोसेसर (एमपी) पर आउटबाउंड प्रॉक्सी सेटिंग कॉन्फ़िगर करनी होंगी. ये प्रॉपर्टी, एमपी को कॉन्फ़िगर करती हैं, ताकि Edge से एचटीटीपी फ़ॉरवर्ड प्रॉक्सी पर टारगेट अनुरोधों को रूट किया जा सके.
फ़ॉरवर्ड प्रॉक्सी के लिए एमपी को कॉन्फ़िगर करने के लिए:
- एमपी पर, इस फ़ाइल में बदलाव करें:
/opt/apigee/customer/application/message-processor.properties
अगर
message-processor.propertiesफ़ाइल मौजूद नहीं है, तो उसे बनाएं. - नीचे दी गई टेबल में बताई गई प्रॉक्सी से जुड़ी प्रॉपर्टी सेट करने के लिए, फ़ाइल में बदलाव करें.
- पक्का करें कि प्रॉपर्टी फ़ाइल का मालिकाना हक 'apigee' उपयोगकर्ता के पास हो:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- प्रॉपर्टी फ़ाइल में किए गए बदलावों को सेव करें.
- एमपी को रीस्टार्ट करें, जैसा कि इस उदाहरण में दिखाया गया है:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
नीचे दी गई टेबल में, message-processor.properties फ़ाइल की प्रॉपर्टी के बारे में बताया गया है. इनका इस्तेमाल, बैकएंड सर्वर पर फ़ॉरवर्ड प्रॉक्सी करने के लिए, एमपी को कॉन्फ़िगर करने के लिए किया जाता है:
| प्रॉपर्टी | ब्यौरा |
|---|---|
conf_http_HTTPClient.use.proxy |
फ़ॉरवर्ड प्रॉक्सी के इस्तेमाल की अनुमति देता है. डिफ़ॉल्ट वैल्यू अगर इस वैल्यू को |
conf_http_HTTPClient.use.tunneling |
डिफ़ॉल्ट रूप से, Edge सभी ट्रैफ़िक के लिए टनलिंग का इस्तेमाल करता है. डिफ़ॉल्ट रूप से टनलिंग की सुविधा बंद करने के लिए, इस प्रॉपर्टी को "false" पर सेट करें. |
use.proxy.host.header.with.target.uri |
टारगेट होस्ट और पोर्ट को
<HTTPTargetConnection>
<Properties>
<Property name="use.proxy.host.
header.with.target.uri">true
</Property>
</Properties>
<URL>https://mocktarget.apigee.net/
my-target</URL>
</HTTPTargetConnection> |
conf/http.properties+HTTPClient.proxy.type |
इससे एचटीटीपी प्रॉक्सी के टाइप के बारे में पता चलता है. जैसे, एचटीटीपी या एचटीटीपीएस. डिफ़ॉल्ट रूप से, यह "एचटीटीपी" का इस्तेमाल करता है. |
conf/http.properties+HTTPClient.proxy.host |
इससे उस होस्ट का नाम या आईपी पते के बारे में पता चलता है जहां एचटीटीपी प्रॉक्सी चल रही है. |
conf/http.properties+HTTPClient.proxy.port |
इससे उस पोर्ट के बारे में पता चलता है जिस पर एचटीटीपी प्रॉक्सी चल रहा है. अगर इस प्रॉपर्टी को शामिल नहीं किया जाता है, तो यह डिफ़ॉल्ट रूप से एचटीटीपी के लिए पोर्ट 80 और एचटीटीपीएस के लिए पोर्ट 443 का इस्तेमाल करती है. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
अगर एचटीटीपी प्रॉक्सी के लिए बुनियादी पुष्टि की ज़रूरत है, तो अनुमति की जानकारी देने के लिए इन प्रॉपर्टी का इस्तेमाल करें. |
उदाहरण के लिए:
conf_http_HTTPClient.use.proxy=true conf_http_HTTPClient.use.tunneling=false conf/http.properties+HTTPClient.proxy.type=HTTP conf/http.properties+HTTPClient.proxy.host=my.host.com conf/http.properties+HTTPClient.proxy.port=3128 conf/http.properties+HTTPClient.proxy.user=USERNAME conf/http.properties+HTTPClient.proxy.password=PASSWORD
अगर एमपी के लिए फ़ॉरवर्ड प्रॉक्सी कॉन्फ़िगर की गई है, तो एपीआई प्रॉक्सी से बैकएंड टारगेट तक जाने वाला सारा ट्रैफ़िक, तय की गई एचटीटीपी फ़ॉरवर्ड प्रॉक्सी से होकर गुज़रता है. अगर किसी एपीआई प्रॉक्सी के खास टारगेट का ट्रैफ़िक, फ़ॉरवर्ड प्रॉक्सी को बायपास करके सीधे बैकएंड टारगेट पर जाना चाहिए, तो एचटीटीपी फ़ॉरवर्ड प्रॉक्सी को बदलने के लिए, TargetEndpoint में यह प्रॉपर्टी सेट करें:
<Property name="use.proxy">false</Property>
TargetEndpoint की प्रॉपर्टी सेट करने के बारे में ज़्यादा जानने के लिए, एंडपॉइंट प्रॉपर्टी का रेफ़रंस देखें. इसमें टारगेट एंडपॉइंट से कनेक्शन को कॉन्फ़िगर करने का तरीका भी बताया गया है.
डिफ़ॉल्ट रूप से सभी टारगेट के लिए फ़ॉरवर्ड प्रॉक्सी की सुविधा बंद करने के लिए, अपनी message-processor.properties फ़ाइल में यह प्रॉपर्टी सेट करें:
conf_http_HTTPClient.use.proxy=false
इसके बाद, किसी भी TargetEndpoint के लिए use.proxy को "true" पर सेट करें, ताकि वह एचटीटीपी फ़ॉरवर्ड प्रॉक्सी से गुज़र सके:
<Property name="use.proxy">true</Property>
Edge, प्रॉक्सी पर जाने वाले ट्रैफ़िक के लिए डिफ़ॉल्ट रूप से टनलिंग का इस्तेमाल करता है. डिफ़ॉल्ट रूप से टनलिंग की सुविधा बंद करने के लिए,
message-processor.properties फ़ाइल में यह प्रॉपर्टी सेट करें:
conf_http_HTTPClient.use.tunneling=false
अगर आपको किसी खास टारगेट के लिए टनलिंग की सुविधा बंद करनी है, तो TargetEndpoint में use.proxy.tunneling प्रॉपर्टी सेट करें. अगर टारगेट, टीएलएस/एसएसएल का इस्तेमाल करता है, तो इस प्रॉपर्टी को अनदेखा कर दिया जाता है. साथ ही, मैसेज को हमेशा टनल के ज़रिए भेजा जाता है:
<Property name="use.proxy.tunneling">false</Property>
Edge को फ़ॉरवर्ड प्रॉक्सी के तौर पर काम करने के लिए, पहले Edge पर एपीआई प्रॉक्सी सेट अप करें. इससे Edge, बैकएंड सेवाओं से अनुरोध पा सकेगा और उन्हें एंटरप्राइज़ के बाहर इंटरनेट पर रूट कर सकेगा. इसके बाद, बैकएंड सेवा, एपीआई प्रॉक्सी को अनुरोध भेज सकती है. इसके बाद, एपीआई प्रॉक्सी बाहरी सेवाओं से कनेक्ट कर सकता है.