ফরওয়ার্ড প্রক্সি কনফিগার করা

ফরওয়ার্ড প্রক্সি একটি একক পয়েন্ট প্রদান করে যার মাধ্যমে একাধিক মেশিন একটি এক্সটার্নাল সার্ভারে অনুরোধ পাঠায়। তারা নিরাপত্তা নীতি এনফোর্স করতে, অনুরোধ লগ ও বিশ্লেষণ করতে এবং অন্যান্য অ্যাকশন সম্পূর্ণ করতে পারে যাতে অনুরোধ আপনার ব্যবসার নিয়ম মেনে চলে। Edge-এর মাধ্যমে, একটি ফরওয়ার্ড প্রক্সি সাধারণত আপনার API প্রক্সি এবং একটি এক্সটার্নাল TargetEndpoint (একটি ব্যাকএন্ড টার্গেট সার্ভার)-এর মধ্যে মধ্যস্থতা করে।

Edge এবং TargetEndpoint-এর মধ্যে HTTP ফরওয়ার্ড প্রক্সি ব্যবহার করতে, আপনাকে অবশ্যই মেসেজ প্রসেসরে (MP) আউটবাউন্ড প্রক্সি সেটিংস কনফিগার করতে হবে। এইসব প্রপার্টি এজ থেকে HTTP ফরওয়ার্ড প্রক্সিতে টার্গেট অনুরোধ রাউট করার জন্য MP কনফিগার করে।

ফরওয়ার্ডিং প্রক্সি করার জন্য MP কনফিগার করতে:

  1. MP-তে, নিম্নলিখিত ফাইল এডিট করুন:
    /opt/apigee/customer/application/message-processor.properties

    message-processor.properties ফাইলটি না থাকলে, এটি তৈরি করুন।

  2. নিচের সারণিতে বর্ণনা করা প্রক্সি-সম্পর্কিত প্রপার্টি সেট করতে ফাইলটি এডিট করুন।
  3. প্রপার্টি ফাইলের মালিকানা 'apigee' ব্যবহারকারীর কাছে আছে কিনা তা নিশ্চিত করুন:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  4. প্রপার্টি ফাইলে আপনার করা পরিবর্তন সেভ করুন।
  5. নিচের উদাহরণে যেভাবে দেখানো হয়েছে সেইভাবে MP রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

ব্যাকএন্ড সার্ভারে ফরওয়ার্ড প্রক্সিংয়ের জন্য MP কনফিগার করতে আপনি যে message-processor.properties ফাইল ব্যবহার করেন, নিম্নলিখিত সারণীতে সেটির প্রপার্টি বর্ণনা করা হয়েছে:

প্রপার্টি বিবরণ
conf_http_HTTPClient.use.proxy

ফরওয়ার্ড প্রক্সি ব্যবহারের অনুমতি দেয়। ডিফল্ট ভ্যালু হল true, যার অর্থ হল আপনি আপনার বান্ডেল কনফিগারেশনে প্রাসঙ্গিক XML অন্তর্ভুক্ত করে API প্রক্সি লেয়ারে একটি ফরওয়ার্ড প্রক্সি ব্যবহার করতে পারবেন।

আপনি এই ভ্যালু false-এ সেট করলে, ফরওয়ার্ড প্রক্সি ব্যবহার করতে পারবেন না।

conf_http_HTTPClient.use.tunneling

ডিফল্ট হিসেবে, Edge সব ট্রাফিকের জন্য টানেলিং ব্যবহার করে। ডিফল্ট হিসেবে টানেলিং বন্ধ করতে, এই প্রপার্টি "false" হিসেবে সেট করুন।

use.proxy.host.header.with.target.uri

টার্গেট হোস্ট ও পোর্টকে Host হেডার হিসেবে সেট করে। ডিফল্ট হিসেবে, প্রক্সি হোস্ট এবং পোর্ট Host হেডার হিসেবে সেট করা হয়। আপনি শুধুমাত্র টার্গেট এন্ডপয়েন্টে এই প্রপার্টি সেট করতে পারবেন। যেমন:

<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

HTTP বা HTTPS হিসেবে HTTP প্রক্সির ধরন নির্দিষ্ট করে। ডিফল্ট হিসেবে, এটি "HTTP" ব্যবহার করে।

conf/http.properties+HTTPClient.proxy.host

HTTP প্রক্সি যেখানে চলছে সেই হোস্টের নাম বা IP অ্যাড্রেস উল্লেখ করে।

conf/http.properties+HTTPClient.proxy.port

HTTP প্রক্সি যে পোর্টে চলছে সেটি নির্দিষ্ট করে। এই প্রপার্টি বাদ দেওয়া হলে, ডিফল্ট হিসেবে এটি HTTP-এর জন্য পোর্ট ৮০ এবং HTTPS-এর জন্য পোর্ট ৪৪৩ ব্যবহার করে।

conf/http.properties+HTTPClient.proxy.user
conf/http.properties+HTTPClient.proxy.password

HTTP প্রক্সির জন্য প্রাথমিক যাচাইকরণ প্রয়োজন হলে, অনুমোদনের বিবরণ দিতে এই প্রপার্টিগুলি ব্যবহার করুন।

যেমন:

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

MP-এর জন্য ফরওয়ার্ড প্রক্সি কনফিগার করা থাকলে, API প্রক্সি থেকে ব্যাকএন্ড টার্গেটে যাওয়া সব ট্রাফিক নির্দিষ্ট HTTP ফরওয়ার্ড প্রক্সির মাধ্যমে যায়। কোনও API প্রক্সির নির্দিষ্ট টার্গেটের ট্রাফিক যদি ফরওয়ার্ড প্রক্সি বাইপাস করে সরাসরি ব্যাকএন্ড টার্গেটে পাঠাতে হয়, তাহলে HTTP ফরওয়ার্ড প্রক্সি ওভাররাইড করতে TargetEndpoint-এ নিম্নলিখিত প্রপার্টি সেট করুন:

<Property name="use.proxy">false</Property>

TargetEndpoint প্রপার্টি সেট করা সম্পর্কে আরও তথ্যের জন্য, যার মধ্যে টার্গেট এন্ডপয়েন্টের সাথে কানেকশন কীভাবে কনফিগার করতে হয় তা অন্তর্ভুক্ত, এন্ডপয়েন্ট প্রপার্টি রেফারেন্স দেখুন।

ডিফল্ট হিসেবে সব টার্গেটের জন্য ফরওয়ার্ড প্রক্সি বন্ধ করতে, আপনার message-processor.properties ফাইলে নিম্নলিখিত প্রপার্টি সেট করুন:

conf_http_HTTPClient.use.proxy=false

তারপর, HTTP ফরওয়ার্ড প্রক্সির মাধ্যমে আপনি যে TargetEndpoint-এ যেতে চান সেটির জন্য use.proxy-কে "true" হিসেবে সেট করুন:

<Property name="use.proxy">true</Property>

ডিফল্ট হিসেবে, Edge প্রক্সিতে ট্রাফিকের জন্য টানেলিং ব্যবহার করে। ডিফল্ট হিসেবে টানেলিং বন্ধ করতে, message-processor.properties ফাইলে নিম্নলিখিত প্রপার্টি সেট করুন:

conf_http_HTTPClient.use.tunneling=false

আপনি কোনও নির্দিষ্ট টার্গেটের জন্য টানেলিং বন্ধ করতে চাইলে, TargetEndpoint-এ use.proxy.tunneling প্রপার্টি সেট করুন। টার্গেট TLS/SSL ব্যবহার করলে, এই প্রপার্টি উপেক্ষা করা হয় এবং মেসেজ সবসময় টানেলের মাধ্যমে পাঠানো হয়:

<Property name="use.proxy.tunneling">false</Property>

Edge-কে ফরওয়ার্ড প্রক্সি হিসেবে কাজ করানোর জন্য - ব্যাকএন্ড পরিষেবা থেকে অনুরোধ গ্রহণ করা এবং এন্টারপ্রাইজের বাইরে ইন্টারনেটে সেগুলি রাউট করা - প্রথমে Edge-এ একটি API প্রক্সি সেট-আপ করুন। ব্যাকএন্ড পরিষেবাটি তখন API প্রক্সিতে একটি অনুরোধ করতে পারে, যা পরে বাহ্যিক পরিষেবাগুলির সাথে সংযোগ করতে পারে।