1. ভূমিকা
ভিপিসি সার্ভিস কন্ট্রোলস (ভিপিসি-এসসি) হল গুগল ক্লাউডে একটি প্রতিষ্ঠান স্তরের নিরাপত্তা নিয়ন্ত্রণ যা এন্টারপ্রাইজ গ্রাহকদের ডেটা এক্সফিল্ট্রেশন ঝুঁকি কমাতে সক্ষম করে। ভিপিসি সার্ভিস কন্ট্রোলস ক্লায়েন্টদের ইন্টারনেট এবং অন্যান্য পরিষেবা থেকে মাল্টি-টেন্যান্ট পরিষেবার সাথে সংযোগ করার সময় অনুমোদিত আইপি, ক্লায়েন্ট প্রসঙ্গ এবং ডিভাইস প্যারামিটারগুলিতে অ্যাক্সেস সীমাবদ্ধ করতে সক্ষম করে মাল্টি-টেন্যান্ট পরিষেবাগুলিতে শূন্য-বিশ্বাসের স্টাইল অ্যাক্সেস সরবরাহ করে যাতে ইচ্ছাকৃত এবং অনিচ্ছাকৃত উভয় ক্ষতি হ্রাস করা যায়। আপনি স্পষ্টভাবে নির্দিষ্ট করা পরিষেবার সংস্থান এবং ডেটা সুরক্ষিত করার জন্য পরিধি তৈরি করতে ভিপিসি সার্ভিস কন্ট্রোল ব্যবহার করতে পারেন।
এই টিউটোরিয়ালের লক্ষ্যগুলি হল:
- ভিপিসি সার্ভিস কন্ট্রোলের মূল বিষয়গুলি বুঝুন
- একটি VPC পরিষেবা পরিধি তৈরি করুন
- VPC পরিষেবা নিয়ন্ত্রণের মাধ্যমে একটি প্রকল্প সুরক্ষিত করুন
- VPC পরিষেবা নিয়ন্ত্রণ প্রবেশ লঙ্ঘনের সমস্যা সমাধান করুন
2. সেটআপ এবং প্রয়োজনীয়তা
এই টিউটোরিয়ালের জন্য, আমাদের নিম্নলিখিত পূর্ব-প্রয়োজনীয়তাগুলির প্রয়োজন:
- একটি জিসিপি সংস্থা।
- সংস্থার অধীনে একটি ফোল্ডার।
- একই সংস্থার মধ্যে ২টি জিসিপি প্রকল্প ফোল্ডারের অধীনে রাখা হয়েছে।
- প্রতিষ্ঠান পর্যায়ে প্রয়োজনীয় অনুমতি ।
- উভয় প্রকল্পের জন্য বিলিং অ্যাকাউন্ট।

রিসোর্স সেটআপ
- গুগল ক্লাউড কনসোলে , "Organization and two new projects" এর অধীনে একটি ফোল্ডার তৈরি করুন । ( আপনি বিদ্যমানগুলি পুনরায় ব্যবহার করতে পারেন )।
(যদি আপনার ইতিমধ্যেই একটি Google Workspace/Cloud Identity অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি অ্যাকাউন্ট কিনতে হবে কারণ এই টিউটোরিয়ালের জন্য আপনার একটি Organization থাকতে হবে)।
- সাংগঠনিক স্তরে এই টিউটোরিয়ালের জন্য আপনার সঠিক অনুমতি আছে কিনা তা যাচাই করুন।
- ফোল্ডারগুলির জন্য IAM ভূমিকা
- প্রকল্পগুলির জন্য অনুমতি এবং ভূমিকা
- VPC পরিষেবা নিয়ন্ত্রণ কনফিগার করার জন্য প্রয়োজনীয় অনুমতি এবং ভূমিকা
- কম্পিউট ইঞ্জিন পরিচালনা করার জন্য প্রয়োজনীয় অনুমতি এবং ভূমিকা
- ফোল্ডার স্তরে একটি স্কোপড নীতি তৈরি করতে হবে, তাই নিশ্চিত করুন যে দুটি প্রকল্পই ফোল্ডারের অধীনে উপলব্ধ। একটি প্রকল্পকে একটি ফোল্ডারে স্থানান্তর করার পদ্ধতি জানুন।

খরচ
ক্লাউড রিসোর্স/এপিআই ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবটি চালানোর জন্য খুব বেশি খরচ হবে না, এমনকি কিছু খরচও হবে না। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে রিসোর্স বন্ধ করতে, আপনি আপনার তৈরি রিসোর্সগুলি মুছে ফেলতে পারেন অথবা প্রকল্পটি মুছে ফেলতে পারেন। নতুন গুগল ক্লাউড ব্যবহারকারীরা $300 USD ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য।
একমাত্র সম্পদ যা খরচ তৈরি করবে তা হল VM ইনস্ট্যান্স। মূল্য নির্ধারণ ক্যালকুলেটরে আনুমানিক খরচ পাওয়া যাবে ।
৩. একটি পরিধি তৈরি করুন
এই পরীক্ষাগারে আমরা নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করব:
- গুগল কনসোলে, আপনার প্রতিষ্ঠান নির্বাচন করুন এবং ভিপিসি পরিষেবা নিয়ন্ত্রণ অ্যাক্সেস করুন । অনুগ্রহ করে নিশ্চিত করুন যে আপনি প্রতিষ্ঠান স্তরে আছেন।

- "Codelab" ফোল্ডারে বিস্তৃত একটি নতুন অ্যাক্সেস নীতি তৈরি করতে "নীতিমালা পরিচালনা করুন" এ ক্লিক করুন।

- এনফোর্সড মোডে একটি নতুন পেরিমিটার তৈরি করুন । এই টিউটোরিয়ালে এর নাম "সুপারপ্রোটেকশন" দেওয়া যাক।
- যখন আপনি পরিধি তৈরি করবেন, তখন ProjectZ হিসেবে প্রয়োগ করা প্রকল্পটি নির্বাচন করুন।
- "নিয়মিত" হিসেবে পরিধির ধরণ নির্বাচন করুন।
- সীমাবদ্ধ করার জন্য পরিষেবা নির্দিষ্ট করুন ডায়ালগে, "কম্পিউট ইঞ্জিন" হিসাবে সীমাবদ্ধ করার জন্য পরিষেবাটি নির্বাচন করুন।
পরিধি সেটআপটি দেখতে এরকম হওয়া উচিত:

৪. পরিধি কার্যকর করা হয়েছে কিনা তা যাচাই করুন।
- ProjectX অ্যাক্সেস করুন এবং VM Instances হোম পেজে গিয়ে Compute Engine API অ্যাক্সেস করতে পারবেন কিনা তা যাচাই করুন। আপনার এটি করা উচিত কারণ projectX তৈরি VPC SC পরিধি দ্বারা সুরক্ষিত নয়।
- ProjectZ অ্যাক্সেস করুন এবং আপনি Compute Engine অ্যাক্সেস করতে সক্ষম কিনা তা যাচাই করুন। আপনি দেখতে পাচ্ছেন যে অনুরোধটি VPC পরিষেবা নিয়ন্ত্রণ দ্বারা নিষিদ্ধ করা হয়েছে কারণ পরিষেবা পরিধি SuperProtection ProjectZ এবং Compute Engine API কে সুরক্ষিত করে।

৫. অস্বীকৃতির সমস্যা সমাধান
প্রথমে আমাদের সমস্যাটি ঠিক কী তা চিহ্নিত করতে হবে এবং কীভাবে এটির সমাধান করা যায় তা নির্ধারণ করতে হবে।
- VPC সার্ভিস কন্ট্রোলস লগে সুরক্ষিত রিসোর্সের অনুরোধ এবং কেন VPC সার্ভিস কন্ট্রোলস অনুরোধ প্রত্যাখ্যান করেছে তার বিশদ বিবরণ থাকে। লগস এক্সপ্লোরারে নিম্নলিখিত কোয়েরি ব্যবহার করে ProjectZ অডিট লগে VPC সার্ভিস কন্ট্রোলস ইউনিক আইডি খুঁজে বের করা যাক:
resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
এটি সমস্ত VPC পরিষেবা নিয়ন্ত্রণ অডিট লগ দেখাবে। আমরা শেষ ত্রুটি লগটি খুঁজব।
- VPC Service Controls হেডারে ক্লিক করুন এবং "Troubleshoot denial" নির্বাচন করুন যা VPC Service Controls Troubleshooter খুলবে।
এই API আমাদের একটি বন্ধুত্বপূর্ণ UI-তে লঙ্ঘনের কারণ এবং এটি প্রবেশ বা বহির্গমন লঙ্ঘন কিনা তা অন্যান্য দরকারী বিষয়গুলির মধ্যে দেখাবে।
এই অনুশীলনের জন্য আমরা নিম্নলিখিতগুলি খুঁজব:
"principalEmail": "user@domain"
"callerIp": "PUBLIC_IP_ADDRESS"
"serviceName": "compute.googleapis.com"
"servicePerimeterName":
"accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection
"ingressViolations": [
{
"targetResource": "projects/[PROJECT_NUMBER]",
"servicePerimeter": "accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection"
}
],
"violationReason": "NO_MATCHING_ACCESS_LEVEL",
"resourceNames": "[PROJECT_ID]"
ProjectZ-এ এই অস্বীকৃতি ঠিক করার জন্য আমাদের কাছে দুটি বিকল্প আছে।
- আমার সিস্টেম আইপিতে অ্যাক্সেস মঞ্জুর করে পেরিমিটারের ভিতরে প্রকল্পে অ্যাক্সেসের অনুমতি দেওয়ার জন্য একটি অ্যাক্সেস লেভেল তৈরি করা হচ্ছে।
- পরিষেবা পরিধির বাইরে থেকে কোনও API ক্লায়েন্টকে পরিষেবা পরিধির মধ্যে থাকা সংস্থানগুলিতে অ্যাক্সেসের অনুমতি দেওয়ার জন্য একটি প্রবেশাধিকার নিয়ম তৈরি করা।
এই টিউটোরিয়ালে আমরা একটি অ্যাক্সেস লেভেল তৈরি করে সমস্যা সমাধান করব।
- ফোল্ডার (কোডল্যাব) স্কোপে অ্যাক্সেস কনটেক্সট ম্যানেজারে যান এবং একটি নতুন অ্যাক্সেস লেভেল তৈরি করুন।
- "বেসিক মোড" ব্যবহার করুন এবং আইপি সাবনেটওয়ার্ক এবং ভৌগোলিক অবস্থান পূরণ হলে আমরা অ্যাক্সেসের অনুমতি দেব।

- VPC Service Controls at Organization scope-এ যান। এই কোডল্যাবের জন্য আপনার অ্যাক্সেস নীতি নির্বাচন করুন এবং আমরা পূর্বে তৈরি করা পরিধিটি সম্পাদনা করুন।
- ফোল্ডার স্কোপে তৈরি অ্যাক্সেস লেভেল যোগ করুন এবং সংরক্ষণ করুন।

৬. পরীক্ষার ফলাফল।
নিশ্চিত করুন যে আমাদের Compute Engine অ্যাক্সেস আছে এবং আমরা একটি VM ইনস্ট্যান্স তৈরি করতে সক্ষম। এখন যেহেতু আমরা অ্যাক্সেস লেভেল তৈরি করেছি, আসুন ProjectZ-এ Compute Engine অ্যাক্সেস করার চেষ্টা করি এবং একটি VM ইনস্ট্যান্স তৈরি করি।
- কম্পিউট ইঞ্জিনে যান এবং ক্রিয়েট ইনস্ট্যান্সে ক্লিক করুন।

- সবকিছু ডিফল্ট হিসেবে রেখে দিন এবং একটি কম খরচের VM ইনস্ট্যান্স তৈরি করার চেষ্টা করুন।
প্রায় এক মিনিট পর, আপনি VM ইনস্ট্যান্স তৈরি দেখতে পাবেন এবং আপনি যাচাই করতে পারবেন যে আপনার কাছে ঘেরের ভিতরে সুরক্ষিত কম্পিউট ইঞ্জিনে সম্পূর্ণ অ্যাক্সেস আছে।

৭. পরিষ্কার-পরিচ্ছন্নতা
যদিও পরিষেবাটি ব্যবহার না করা অবস্থায় VPC পরিষেবা নিয়ন্ত্রণ ব্যবহারের জন্য আলাদা কোনও চার্জ নেই, তবে এই পরীক্ষাগারে ব্যবহৃত সেটআপ পরিষ্কার করা একটি সর্বোত্তম পদ্ধতি। চার্জ এড়াতে আপনি আপনার VM ইনস্ট্যান্স এবং/অথবা ক্লাউড প্রকল্পগুলিও মুছে ফেলতে পারেন। আপনার ক্লাউড প্রকল্পটি মুছে ফেলার ফলে সেই প্রকল্পের মধ্যে ব্যবহৃত সমস্ত সংস্থানের জন্য বিলিং বন্ধ হয়ে যায়।
- আপনার VM ইনস্ট্যান্স মুছে ফেলার জন্য, আপনার VM ইনস্ট্যান্স নামের বাম দিকে থাকা চেকবক্সটি নির্বাচন করুন এবং তারপর Delete এ ক্লিক করুন।

- পরিধি মুছে ফেলার জন্য, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:
- গুগল ক্লাউড কনসোলে, সিকিউরিটি ক্লিক করুন, এবং তারপর অর্গানাইজেশন স্কোপে VPC সার্ভিস কন্ট্রোলস ক্লিক করুন।
- VPC পরিষেবা নিয়ন্ত্রণ পৃষ্ঠায়, আপনি যে পরিধিটি মুছতে চান তার সাথে সম্পর্কিত টেবিলের সারিতে, "আইকন মুছুন" এ ক্লিক করুন।
- অ্যাক্সেস লেভেল মুছে ফেলার জন্য, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:
- গুগল ক্লাউড কনসোলে, ফোল্ডার স্কোপে অ্যাক্সেস কনটেক্সট ম্যানেজার পৃষ্ঠাটি খুলুন।
- গ্রিডে, আপনি যে অ্যাক্সেস লেভেলটি মুছতে চান তার সারিতে, "মুছুন আইকন" এ ক্লিক করুন, এবং তারপরে মুছুন এ ক্লিক করুন।
- আপনার প্রকল্পগুলি বন্ধ করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:
- গুগল ক্লাউড কনসোলে, আপনি যে প্রকল্পটি মুছতে চান তার IAM এবং অ্যাডমিন সেটিংস পৃষ্ঠায় যান।
- IAM এবং অ্যাডমিন সেটিংস পৃষ্ঠায়, Shutdown এ ক্লিক করুন।
- প্রজেক্ট আইডি লিখুন, এবং যাইহোক Shutdown এ ক্লিক করুন।
৮. অভিনন্দন!
এই কোডল্যাবে আপনি একটি VPC পরিষেবা নিয়ন্ত্রণ পরিধি তৈরি করেছেন, এটি প্রয়োগ করেছেন এবং এটির সমস্যা সমাধান করেছেন।
আরও জানুন
- ভিপিসি সার্ভিস কন্ট্রোলস ডকুমেন্টেশন দেখুন।
- অ্যাক্সেস কনটেক্সট ম্যানেজার ডকুমেন্টেশন দেখুন।
- VPC-SC সমস্যা সমাধানকারী ডকুমেন্টেশন দেখুন।
লাইসেন্স
এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন ২.০ জেনেরিক লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত।