আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
সার্ভার নেম ইন্ডিকেশন (SNI) একাধিক HTTPS ব্যাকএন্ড সার্ভারকে একই আইপি ঠিকানা এবং পোর্টে পরিবেশন করার অনুমতি দেয় সেই ব্যাকএন্ড সার্ভারগুলিকে একই TLS শংসাপত্র ব্যবহার করার প্রয়োজন ছাড়াই। এটি TLS প্রোটোকলের একটি এক্সটেনশন। যখন একটি ক্লায়েন্টে SNI সক্ষম করা হয়, ক্লায়েন্ট প্রাথমিক TLS হ্যান্ডশেকের অংশ হিসাবে ব্যাকএন্ড সার্ভারের হোস্টনাম পাস করে। এটি TLS সার্ভারকে ক্লায়েন্টের অনুরোধ যাচাই করার জন্য কোন TLS শংসাপত্র ব্যবহার করা উচিত তা নির্ধারণ করতে দেয়।
ডিফল্টরূপে, বিদ্যমান ব্যাকএন্ড সার্ভারগুলির সাথে পশ্চাদমুখী সামঞ্জস্য নিশ্চিত করতে ব্যক্তিগত ক্লাউডের জন্য এজে মেসেজ প্রসেসর উপাদানটিতে SNI নিষ্ক্রিয় করা হয়৷ যদি আপনার ব্যাকএন্ড সার্ভারটি SNI সমর্থন করার জন্য কনফিগার করা থাকে, তাহলে আপনাকে বার্তা প্রসেসর উপাদানে SNI সক্ষম করতে হবে। অন্যথায়, Apigee Edge-এর মধ্য দিয়ে যাওয়া API অনুরোধগুলি TLS হ্যান্ডশেক ব্যর্থতার সাথে ব্যর্থ হবে।
এই নথিটি ব্যাখ্যা করে যে কীভাবে নিম্নলিখিতগুলি করতে হবে:
- একটি ব্যাকএন্ড সার্ভার SNI সক্ষম কিনা তা সনাক্ত করুন৷
- SNI সমর্থন করে এমন ব্যাকএন্ড সার্ভারের সাথে যোগাযোগ করার জন্য বার্তা প্রসেসরগুলিতে SNI সক্ষম করুন
- প্রয়োজনে মেসেজ প্রসেসরে SNI অক্ষম করুন
- মেসেজ প্রসেসরে SNI কনফিগারেশন সফলভাবে আপডেট করা হয়েছে তা যাচাই করুন
আপনি শুরু করার আগে
- আপনি যদি SNI-এর সাথে পরিচিত না হন, তাহলে edge সহ SNI ব্যবহার করে পড়ুন।
- আপনি যদি ব্যক্তিগত ক্লাউডে এজ কনফিগার করার সাথে পরিচিত না হন তবে এজ কীভাবে কনফিগার করবেন তা পড়ুন।
SNI সক্রিয় সার্ভার সনাক্তকরণ
একটি ব্যাকএন্ড সার্ভার SNI সক্ষম কিনা তা কীভাবে সনাক্ত করা যায় তা এই বিভাগে বর্ণনা করে৷
-
openssl
কমান্ডটি চালান এবং সার্ভারের নাম পাস না করে প্রাসঙ্গিক সার্ভার হোস্টনেম (এজ রাউটার বা ব্যাকএন্ড সার্ভার) সাথে সংযোগ করার চেষ্টা করুন, যেমনটি নীচে দেখানো হয়েছে:openssl s_client -connect hostname:port
- আপনি শংসাপত্রগুলি পেতে পারেন এবং কখনও কখনও আপনি
openssl
কমান্ডে হ্যান্ডশেক ব্যর্থতা পর্যবেক্ষণ করতে পারেন, যেমনটি নীচে দেখানো হয়েছে:CONNECTED(00000003) 9362:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-64.50.6/src/ssl/s23_clnt.c:593
-
openssl
কমান্ডটি চালান এবং নীচে দেখানো সার্ভারের নামটি পাস করে প্রাসঙ্গিক সার্ভার হোস্টনেম (এজ রাউটার বা ব্যাকএন্ড সার্ভার) এর সাথে সংযোগ করার চেষ্টা করুন:openssl s_client -connect hostname:port -servername hostname
- আপনি যদি ধাপ 1 এ হ্যান্ডশেক ব্যর্থতা পান বা ধাপ 1 এবং ধাপ 2 এ বিভিন্ন শংসাপত্র পান, তাহলে এটি নির্দেশ করে যে নির্দিষ্ট সার্ভারটি SNI সক্ষম।
- আপনি যদি একাধিক ব্যাকএন্ড সার্ভারের জন্য এটি যাচাই করতে চান, তাহলে আপনাকে প্রতিটি ব্যাকএন্ড সার্ভারের জন্য উপরের পদক্ষেপগুলি পুনরাবৃত্তি করতে হবে।
আপনি যদি দেখেন যে আপনার এক বা একাধিক ব্যাকএন্ড সার্ভার আছে যেগুলি SNI সক্ষম করা আছে, তাহলে নীচের ব্যাখ্যা অনুযায়ী আপনাকে মেসেজ প্রসেসর উপাদানে SNI সক্ষম করতে হবে। অন্যথায়, Apigee Edge-এর মধ্য দিয়ে যাওয়া API অনুরোধগুলি TLS হ্যান্ডশেক ব্যর্থতার সাথে ব্যর্থ হবে।
এজ মেসেজ প্রসেসর এবং ব্যাকএন্ড সার্ভারের মধ্যে SNI সক্ষম করুন
এই বিভাগটি ব্যাখ্যা করে কিভাবে এজ মেসেজ প্রসেসর এবং ব্যাকএন্ড সার্ভারের মধ্যে SNI সক্রিয় করতে হয়। মেসেজ প্রসেসর কম্পোনেন্টে jsse.enableSNIExtension
প্রপার্টির মাধ্যমে SNI সক্রিয় করা যেতে পারে। মেসেজ প্রসেসরে যেকোন প্রপার্টি কনফিগার করতে, How to configure Edge এ বর্ণিত সিনট্যাক্স অনুযায়ী টোকেন ব্যবহার করুন।
বার্তা প্রসেসরগুলিতে SNI সক্ষম করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:
jsse.enableSNIExtension
সম্পত্তির জন্য টোকেন খুঁজুন
নিম্নলিখিত পদক্ষেপগুলি বর্ণনা করে যে কীভাবে jsse.enableSNIExtension
সম্পত্তির জন্য টোকেন সনাক্ত করতে হয়:
- নিম্নলিখিত কমান্ডটি ব্যবহার করে মেসেজ প্রসেসর সোর্স ডিরেক্টরি
/opt/apigee/edge-message-processor/source
jsse.enableSNIExtension
বৈশিষ্ট্য অনুসন্ধান করুন:grep -ri "jsse.enableSNIExtension" /opt/apigee/edge-message-processor/source
- এই কমান্ডের আউটপুট মেসেজ প্রসেসরের প্রপার্টি
jsse.enableSNIExtension
এর টোকেন নিম্নরূপ দেখায়:/opt/apigee/edge-message-processor/source/conf/system.properties:jsse.enableSNIExtension={T}conf_system_jsse.enableSNIExtension{/T}
যেখানে
{T}{/T}
ট্যাগের মধ্যে স্ট্রিং হল সেই টোকেনের নাম যা আপনি মেসেজ প্রসেসরের.properties
ফাইলে সেট করতে পারেন।সুতরাং, সম্পত্তি
jsse.enableSNIExtension
এর টোকেন নিম্নরূপ:conf_system_jsse.enableSNIExtension
বার্তা প্রসেসরে SNI সক্ষম করুন
Apigee মেসেজ প্রসেসর কম্পোনেন্টে SNI কিভাবে সক্রিয় করা যায় তা নিচের ধাপগুলো বর্ণনা করে।
- বার্তা প্রসেসর মেশিনে, একটি সম্পাদকে নিম্নলিখিত ফাইলটি খুলুন। যদি এটি ইতিমধ্যে বিদ্যমান না থাকে তবে এটি তৈরি করুন।
/opt/apigee/customer/application/message-processor.properties
উদাহরণস্বরূপ,
vi
ব্যবহার করে ফাইলটি খুলতে, নিম্নলিখিত কমান্ডটি প্রবেশ করান:vi /opt/apigee/customer/application/message-processor.properties
- বৈশিষ্ট্য ফাইলে নিম্নলিখিত বিন্যাসে একটি লাইন যোগ করুন:
conf_system_jsse.enableSNIExtension=true
- আপনার পরিবর্তন সংরক্ষণ করুন.
- নিশ্চিত করুন যে এই প্রপার্টি ফাইলটি নীচে দেখানো হিসাবে
apigee
ব্যবহারকারীর মালিকানাধীন:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- নীচে দেখানো হিসাবে বার্তা প্রসেসর পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- বার্তা প্রসেসরে SNI কনফিগারেশন আপডেট করা হয়েছে তা যাচাই করুন।
- আপনার যদি একাধিক বার্তা প্রসেসর থাকে তবে সমস্ত বার্তা প্রসেসরে এই উপরের পদক্ষেপগুলি পুনরাবৃত্তি করুন৷
এজ মেসেজ প্রসেসর এবং ব্যাকএন্ড সার্ভারের মধ্যে SNI অক্ষম করুন
সাধারণত SNI সক্ষম করার পরে আপনার কোনো সমস্যা দেখা উচিত নয়। যাইহোক, যদি আপনি SNI সক্রিয় করার পরে এজ মেসেজ প্রসেসর এবং ব্যাকএন্ড সার্ভারের মধ্যে কোনো সংযোগ সমস্যা লক্ষ্য করেন, আপনি নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করে সর্বদা SNI নিষ্ক্রিয় করতে পারেন।
মেসেজ প্রসেসর কম্পোনেন্টে প্রপার্টি jsse.enableSNIExtension
আবার false
এ সেট করে SNI নিষ্ক্রিয় করা যেতে পারে।
বার্তা প্রসেসরগুলিতে SNI অক্ষম করুন
Apigee মেসেজ প্রসেসরে কিভাবে SNI অক্ষম করা যায় তা নিম্নলিখিত ধাপগুলো বর্ণনা করে।
- বার্তা প্রসেসর মেশিনে, একটি সম্পাদকে নিম্নলিখিত ফাইলটি খুলুন। যদি এটি ইতিমধ্যে বিদ্যমান না থাকে তবে এটি তৈরি করুন।
/opt/apigee/customer/application/message-processor.properties
উদাহরণস্বরূপ,
vi
ব্যবহার করে ফাইলটি খুলতে, নিম্নলিখিত কমান্ডটি প্রবেশ করান:vi /opt/apigee/customer/application/message-processor.properties
- যদি
/opt/apigee/customer/application/message-processor.properties
এconf_system_jsse.enableSNIExtension=true
লাইনটি বিদ্যমান থাকে, তাহলে এটিকে নিম্নরূপ পরিবর্তন করুন:conf_system_jsse.enableSNIExtension=false
- আপনার পরিবর্তন সংরক্ষণ করুন.
- নিশ্চিত করুন যে এই প্রপার্টি ফাইলটি নীচে দেখানো হিসাবে
apigee
ব্যবহারকারীর মালিকানাধীন:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- নীচে দেখানো হিসাবে বার্তা প্রসেসর পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- বার্তা প্রসেসরে SNI কনফিগারেশন আপডেট করা হয়েছে তা যাচাই করুন।
- আপনার যদি একাধিক বার্তা প্রসেসর থাকে তবে সমস্ত বার্তা প্রসেসরে উপরের পদক্ষেপগুলি পুনরাবৃত্তি করুন৷
বার্তা প্রসেসরগুলিতে SNI কনফিগারেশন যাচাই করা হচ্ছে
এই বিভাগটি ব্যাখ্যা করে কিভাবে যাচাই করা যায় যে SNI কনফিগারেশন সফলভাবে মেসেজ প্রসেসরে আপডেট করা হয়েছে।
যদিও আপনি বার্তা প্রসেসরে SNI কনফিগার করতে টোকেন conf_system_jsse.enableSNIExtension
ব্যবহার করেন, তবুও আপনাকে যাচাই করতে হবে যে প্রকৃত সম্পত্তি jsse.enableSNIExtension
নতুন মান সহ সেট করা হয়েছে।
- মেসেজ প্রসেসর মেশিনে,
/opt/apigee/edge-message-processor/conf
ডিরেক্টরিতেjsse.enableSNIExtension
প্রপার্টি অনুসন্ধান করুন এবং নীচে দেখানো হিসাবে এটি নতুন মান সহ সেট করা হয়েছে কিনা তা পরীক্ষা করুন:grep -ri "jsse.enableSNIExtension" /opt/apigee/edge-message-processor/conf
- যদি SNI কনফিগারেশন সফলভাবে মেসেজ প্রসেসরে আপডেট করা হয়, তাহলে উপরের কমান্ডটি
system.properties
ফাইলে নতুন মান দেখায়।আপনি বার্তা প্রসেসরে SNI সক্ষম করার পরে উপরের কমান্ডের নমুনা ফলাফলটি নিম্নরূপ:
/opt/apigee/edge-message-processor/conf/system.properties:jsse.enableSNIExtension=true
একইভাবে, আপনি মেসেজ প্রসেসরে SNI নিষ্ক্রিয় করার পরে উপরের কমান্ডের নমুনা ফলাফলটি নিম্নরূপ:
/opt/apigee/edge-message-processor/conf/system.properties:jsse.enableSNIExtension=false
উপরের উদাহরণের আউটপুটে, মনে রাখবেন যে প্রপার্টি
jsse.enableSNIExtension
system.properties
এtrue
বাfalse
নতুন মানের সাথে আপডেট করা হয়েছে। এটি নির্দেশ করে যে মেসেজ প্রসেসরে SNI সফলভাবে সক্ষম বা অক্ষম করা হয়েছে। - আপনি যদি এখনও
jsse.enableSNIExtension
সম্পত্তির জন্য পুরানো মান দেখতে পান, তাহলে যাচাই করুন যে আপনি সঠিকভাবে SNI সক্রিয় বা নিষ্ক্রিয় করতে উপযুক্ত বিভাগে বর্ণিত সমস্ত পদক্ষেপ অনুসরণ করেছেন৷ আপনি যদি কোনো ধাপ মিস করে থাকেন তবে সবগুলো ধাপ সঠিকভাবে পুনরাবৃত্তি করুন। - আপনি যদি এখনও SNI সক্ষম/অক্ষম করতে না পারেন, তাহলে Apigee Edge সাপোর্টের সাথে যোগাযোগ করুন।