Network Security Integration משתמש במודל של יצרן-צרכן כדי לבדוק ולנטר נתונים. הוא משתמש בשילוב בתוך הפס עם טכנולוגיית יירוט חבילות כדי להוסיף מכשירי רשת של צד שלישי לזרימת תעבורת הרשת ולבצע בדיקה מעמיקה של חבילות הנתונים.
במדריך הזה מוסבר איך ליצור ולהגדיר משאבי הפקה וצריכה כדי להגדיר שילוב בתוך הלהקה.
מטרות
במדריך הזה מוסבר איך לבצע את הפעולות הבאות בפרויקט:
- יוצרים רשתות VPC מותאמות אישית עם רשתות משנה עבור הספק והצרכן באותו פרויקט.
- בפרויקט של הספק, יוצרים ומגדירים משאבים של הספק, כמו מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי, שירות יירוט ומשאבי פריסה של יירוט.
- בפרויקט הצרכן, יוצרים ומגדירים מכונות וירטואליות (VM) של לקוח ושרת, משאבי נקודת קצה של הצרכן ומדיניות חומת אש כדי ליירט את התעבורה בין הלקוח לשרת.
- בודקים את החיבור ומוודאים שחבילות של תעבורת רשת נחטפות על ידי משאבי נקודת הקצה של הצרכן ונבדקות על ידי משאבי החטיפה של היצרן.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- מפעילים את Compute Engine API בפרויקט.
- מפעילים את Network Security API ב Google Cloud פרויקט שבו רוצים להשתמש לחיוב.
- צריך לוודא שהתפקיד אדמין רשת של Compute (
roles/compute.networkAdmin) הוקצה לכם ברמת הפרויקט, והתפקיד אדמין פרופיל אבטחה (roles/networksecurity.securityProfileAdmin) הוקצה לכם ברמת הארגון. - אם אתם מעדיפים לעבוד משורת הפקודה, אתם יכולים להתקין את Google Cloud CLI. מידע על המושגים ועל ההתקנה של הכלי זמין במאמר סקירה כללית של ה-CLI של gcloud.
הערה: אם לא הפעלתם את ה-CLI של gcloud בעבר, קודם מריצים את הפקודה
gcloud initכדי לאתחל את ספריית ה-CLI של gcloud. מקבלים את מזהה הפרויקט. צריך אותו כדי ליצור משאבי נקודת קצה ומשאבי חסימה.
אם משתמשים ב-CLI של gcloud, אפשר להחליף את
PROJECT_IDכאן או מאוחר יותר בפקודות המתאימות.מאתרים את מזהה הארגון. אתם צריכים אותו כדי ליצור משאבים ברמת הארגון, כמו פרופילי אבטחה וקבוצות של פרופילי אבטחה.
אם משתמשים ב-CLI של gcloud, אפשר להחליף את
ORG_IDכאן או מאוחר יותר בפקודות המתאימות.
יצירת משאבים של תוכן
בקטע הזה יוצרים את המשאבים הבאים עבור היוצר:
- רשת VPC מותאמת אישית עם רשת משנה.
- קבוצת מכונות לא מנוהלת עם מופע של מכונה וירטואלית שמריצה שרת הד של GENEVE (Generic Network Virtualization Encapsulation).
- מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי עם שירות קצה עורפי וכלל העברה.
- כלל חומת אש שמאפשר בדיקות תקינות. Google Cloud
- קבוצת פריסה של חסימת תנועה ופריסה של חסימת תנועה.
יצירת רשת VPC בהתאמה אישית
בקטע הזה תיצרו רשת VPC עם תת-רשת.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על יצירת רשת VPC.
בשדה Name (שם), מזינים
producer-network.בשדה תיאור, מזינים
Producer VPC network.בקטע Subnets (רשתות משנה), מבצעים את הפעולות הבאות:
- בקטע Subnet creation mode (מצב יצירת רשת משנה), בוחרים באפשרות Custom (בהתאמה אישית).
- בקטע New subnet (רשת משנה חדשה), מזינים את הפרטים הבאים:
- Name (שם):
producer-subnet - אזור:
us-west1 - סוג מחסנית IP: IPv4 (מחסנית יחידה)
- טווח IPv4:
10.10.0.0/16
- Name (שם):
- לוחצים על סיום.
לוחצים על יצירה.
פותחים את ה-CLI של Google Cloud ומריצים את הפקודה הבאה כדי להגדיל את יחידת השידור המקסימלית (MTU) של רשת ה-VPC.
gcloud compute networks update producer-network \ --mtu=1768בפקודה, מציינים MTU של 1,768 בייט, שהוא הסכום של ברירת המחדל של MTU ברשת VPC (1,460 בייט) ושל התקורה של Network Security Integration GENEVE encapsulation (308 בייט).
gcloud
יוצרים רשת VPC.
gcloud compute networks create producer-network \ --subnet-mode=custom \ --mtu=1768 \ --description="Producer VPC network"בפקודה, מציינים יחידת שידור מקסימלית (MTU) של 1,768 בייטים, שהיא הסכום של ה-MTU שמוגדר כברירת מחדל ברשת VPC (1,460 בייטים) ושל התקורה של האנקפסולציה של Network Security Integration GENEVE (308 בייטים).
ברשת ה-VPC, יוצרים רשת משנה.
gcloud compute networks subnets create producer-subnet \ --network=producer-network \ --region=us-west1 \ --range=10.10.0.0/16
יצירת קבוצות של מופעי מכונה לא מנוהלים
בקטע הזה, יוצרים קבוצה של מופעי מכונה לא מנוהלים.
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
לוחצים על יצירת קבוצת מופעים.
לוחצים על New unmanaged instance group (קבוצת מופעים חדשה לא מנוהלת).
בשדה Name (שם), מזינים
producer-instance-group.בקטע Location, בוחרים באפשרות
us-west1בשדה Region, ובאפשרותus-west1-bבשדה Zone.בשדה רשת, בוחרים באפשרות
producer-network.בשדה Subnetwork, בוחרים באפשרות
producer-subnet.לוחצים על יצירה.
gcloud
gcloud compute instance-groups unmanaged create producer-instance-group \
--zone=us-west1-b
הגדרת רכיבים של מאזן עומסים
בקטע הזה יוצרים את הרכיבים של מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי, כולל שירות קצה עורפי וכלל העברה.
המסוף
התחלת ההגדרה
נכנסים לדף Load balancing במסוף Google Cloud .
- לוחצים על Create load balancer (יצירת מאזן עומסים).
- בקטע Type of load balancer (סוג מאזן העומסים), בוחרים באפשרות Network Load Balancer (TCP/UDP/SSL) (מאזן עומסים ברשת (TCP/UDP/SSL)) ולוחצים על Next (הבא).
- בקטע Proxy or passthrough (פרוקסי או העברה), בוחרים באפשרות Passthrough load balancer (מאזן עומסים להעברה) ולוחצים על Next (הבא).
- בקטע גלוי לכולם או פנימי, בוחרים באפשרות פנימי ולוחצים על הבא.
- לוחצים על Configure (הגדרה).
הגדרה בסיסית
בדף Create internal passthrough Network Load Balancer מזינים את הפרטים הבאים:
- שם של מאזן עומסים:
producer-ilb - אזור:
us-west1 - רשת:
producer-network
הגדרת הקצוות העורפיים
- לוחצים על Backend configuration.
- בשדה פרוטוקול, בוחרים באפשרות
UDP. - ברשימה בדיקת תקינות, בוחרים באפשרות יצירת בדיקת תקינות, מזינים את הפרטים הבאים ולוחצים על יצירה.
- שם:
producer-health-check - היקף: אזורי
- יציאה:
80 - פרוטוקול שרת proxy:
NONE
- שם:
- בקטע New Backend של Backends, בוחרים באפשרות IPv4 (single-stack) בשביל IP stack type.
- בקטע Instance group (קבוצת מכונות), בוחרים את קבוצת המכונות
producer-instance-groupולוחצים על Done (סיום). - לפני שממשיכים, מוודאים שלצד Backend configuration מופיע סימן אישור כחול.
הגדרת הקצה הקדמי
בקטע New Frontend IP and port, מבצעים את הפעולות הבאות:
- בשדה Name (שם), מזינים
producer-ilb-fr. - בשדה Subnetwork, בוחרים באפשרות
producer-subnet. - בקטע יציאות, בוחרים באפשרות יחיד ואז בשדה מספר יציאה,
מזינים
6081. - לפני שממשיכים, מוודאים שלצד Frontend configuration מופיע סימן אישור כחול.
בדיקת ההגדרות האישיות
- לוחצים על Review and finalize.
- בודקים את הגדרות התצורה של מאזן העומסים.
- לוחצים על יצירה.
gcloud
יצירת בדיקת תקינות אזורית.
gcloud compute health-checks create tcp producer-health-check \ --region=us-west1 \ --port=80יוצרים את שירות הקצה העורפי.
gcloud compute backend-services create producer-backend-service \ --protocol=UDP \ --region=us-west1 \ --health-checks=producer-health-check \ --health-checks-region=us-west1 \ --load-balancing-scheme=INTERNALיוצרים כלל העברה לשירות הקצה העורפי.
gcloud compute forwarding-rules create producer-ilb-fr \ --backend-service=producer-backend-service \ --region=us-west1 \ --network=producer-network \ --subnet=producer-subnet \ --ip-protocol=UDP \ --load-balancing-scheme=INTERNAL \ --ports=6081
יצירת מופע של מכונה וירטואלית והוספה שלו לקבוצת המכונות
בקטע הזה, יוצרים מכונה וירטואלית עם סקריפט לטעינה בזמן ההפעלה שמגדיר שרת echo לחבילות שעברו אנקפסולציה של GENEVE.
לפני שיוצרים את מופע ה-VM, צריך לקבל את כתובת ה-IP של כלל ההעברה של מאזן העומסים הפנימי מסוג passthrough ואת שער רשת המשנה. צריך את כתובות ה-IP של סקריפט ההפעלה.
המסוף
איך מקבלים את כתובת ה-IP של מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי
נכנסים לדף Load balancing במסוף Google Cloud .
לוחצים על מאזן העומסים
producer-ilb.בקטע Frontend, רושמים את כתובת ה-IP של כלל ההעברה מהעמודה IP:ports.
קבלת כתובת ה-IP של שער תת-הרשת
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על
producer-networkרשת VPC.לוחצים על הכרטיסייה Subnets.
בקטע Subnets, רושמים את כתובת ה-IP של השער מהעמודה Gateway.
יצירת מופע של מכונה וירטואלית
נכנסים לדף VM instances במסוף Google Cloud .
- לוחצים על Create instance.
- בשדה Name (שם), מזינים
producer-instance. - בשדה אזור, בוחרים באפשרות
us-west1. - בשדה Zone, בוחרים באפשרות
us-west1-b. לוחצים על Networking ומגדירים את השדות הבאים:
בקטע Network interfaces, לוחצים על
defaultועורכים את ממשק הרשת.- רשת:
producer-network - Subnet (רשת משנה):
producer-subnet - כתובת IPv4 חיצונית: ללא
- רשת:
לוחצים על Advanced (מתקדם) ומזינים את הסקריפט הבא בStartup script (סקריפט הפעלה):
#!/bin/bash # Enable IP forwarding. echo 1 > /proc/sys/net/ipv4/ip_forward # Log incoming packets from the gateway IP and the GENEVE 6081 # port. iptables -t nat -A PREROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j LOG --log-prefix="[NSI INTERCEPT] " # Apply DNAT (Destination NAT) on incoming packets from the gateway IP # and the GENEVE 6081 port. # Set the destination IP to the gateway IP so the packet is rerouted # back to the sender. iptables -t nat -A PREROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j DNAT --to-destination GATEWAY_IP # Apply SNAT (Source NAT) on outgoing packets that have the GENEVE 6081 # port and source IP that equals the gateway IP. # Set the source IP to the internal load balancer IP which # effectively swaps the IPs of the original packet. iptables -t nat -A POSTROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j SNAT --to-source LOAD_BALANCER_IP # Spin up a simple server for health checks on port 80. nohup python3 -u -m http.server 80 &
מחליפים את מה שכתוב בשדות הבאים:
-
GATEWAY_IP: כתובת ה-IP של שער רשת המשנה. -
LOAD_BALANCER_IP: כתובת ה-IP של כלל ההעברה של מאזן העומסים.
-
לוחצים על יצירה.
הוספת מכונה וירטואלית לקבוצת מכונות
נכנסים לדף Instance groups במסוף Google Cloud .
לחץ על
producer-instance-group.לוחצים על Edit.
בקטע VM instances, ברשימה Select VMs, בוחרים את מכונת ה-VM
producer-instance.לוחצים על Save.
gcloud
מקבלים את כתובת ה-IP של כלל ההעברה של מאזן העומסים.
ILB_IP=$(gcloud compute forwarding-rules describe producer-ilb-fr \ --region=us-west1 \ --format="get(IPAddress)")מקבלים את כתובת ה-IP של השער של תת-הרשת.
GW_IP=$(gcloud compute networks subnets describe producer-subnet \ --region=us-west1 \ --format="get(gatewayAddress)")יוצרים מופע של VM.
gcloud compute instances create producer-instance \ --image-project=debian-cloud \ --image-family=debian-11 \ --machine-type=e2-micro \ --zone=us-west1-b \ --network-interface="subnet=producer-subnet,no-address" \ --metadata=startup-script='#!/bin/bash # Enable IP forwarding. echo 1 > /proc/sys/net/ipv4/ip_forward # Log incoming packets from the gateway IP and the GENEVE 6081 port. iptables -t nat -A PREROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j LOG --log-prefix="[NSI INTERCEPT] " # Apply DNAT (Destination NAT) on incoming packets from the gateway # IP and the GENEVE 6081 port. # Set the destination IP to the gateway IP so the packet is rerouted # back to the sender. iptables -t nat -A PREROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j DNAT --to-destination '"$GW_IP"' # Apply SNAT (Source NAT) on outgoing packets that have the GENEVE # 6081 port and source IP that equals the gateway IP. # Set the source IP to the internal load balancer IP which # effectively swaps the IPs of the original packet. iptables -t nat -A POSTROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j SNAT --to-source '"$ILB_IP"' # Spin up a simple server for health checks on port 80. nohup python3 -u -m http.server 80 &'מוסיפים את מופע ה-VM לקבוצת המופעים.
gcloud compute instance-groups unmanaged add-instances producer-instance-group \ --instances=producer-instance \ --zone=us-west1-bמוסיפים את קבוצת המכונות לשירות הקצה העורפי.
gcloud compute backend-services add-backend producer-backend-service \ --region=us-west1 \ --instance-group=producer-instance-group \ --instance-group-zone=us-west1-b
יצירת מדיניות חומת אש והוספת כללי חומת אש
בקטע הזה יוצרים מדיניות חומת אש ומוסיפים כללי חומת אש כדי לאפשר חיבורי UDP, Google Cloud בדיקות תקינות וחיבורי SSH למופע של מכונה וירטואלית של Producer דרך שרת proxy לאימות זהויות (IAP).
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
לוחצים על יצירת מדיניות חומת אש.
בשדה שם מזינים
producer-firewall-policy.בקטע היקף הפריסה, בוחרים באפשרות גלובלי ולוחצים על המשך.
יוצרים את הכללים הבאים למדיניות.
מתן הרשאה לחיבור UDP עם יציאת GENEVE מכתובת ה-IP של שער ה-VPC
- לוחצים על יצירת כלל לחומת האש ומגדירים את השדות הבאים:
- עדיפות:
100 - כיוון התנועה: כניסה
- פעולה במקרה של התאמה: אישור
- מסנני מקורות > טווח כתובות IP:
GATEWAY_IP - פרוטוקול ויציאות: בוחרים באפשרות פרוטוקול ויציאות שצוינו, מסמנים את תיבת הסימון UDP ומציינים את הערך
6081ביציאות.
- עדיפות:
- לוחצים על יצירה.
מחליפים את
GATEWAY_IPבכתובת ה-IP של שער רשת המשנה.Allow Google Cloud health checks
- לוחצים על יצירת כלל לחומת האש ומגדירים את השדות הבאים:
- עדיפות:
101 - כיוון התנועה: כניסה
- פעולה במקרה של התאמה: אישור
- טווחי כתובות IP:
35.191.0.0/16ו-130.211.0.0/22 - פרוטוקול ויציאות: בוחרים באפשרות פרוטוקול ויציאות שצוינו, מסמנים את תיבת הסימון TCP ומציינים את הערך
80ביציאות.
- עדיפות:
- לוחצים על יצירה.
אישור חיבור SSH למופע של מכונה וירטואלית של יצרן באמצעות שרת proxy לאימות זהויות (IAP)
- לוחצים על יצירת כלל לחומת האש ומגדירים את השדות הבאים:
- עדיפות:
102 - כיוון התנועה: כניסה
- פעולה במקרה של התאמה: אישור
- טווח כתובות IP:
35.235.240.0/20 - פרוטוקול ויציאות: בוחרים באפשרות פרוטוקול ויציאות שצוינו, מסמנים את תיבת הסימון TCP ומציינים את הערך
22ביציאות.
- עדיפות:
- לוחצים על יצירה.
- לוחצים על יצירת כלל לחומת האש ומגדירים את השדות הבאים:
כדי לשייך את המדיניות לרשת, לוחצים על המשך ואז על שיוך.
מסמנים את תיבת הסימון
producer-network.לוחצים על Continue.
לוחצים על יצירה.
gcloud
יוצרים מדיניות גלובלית של חומת אש בין רשתות.
gcloud compute network-firewall-policies create producer-firewall-policy \ --globalמשייכים את מדיניות חומת האש לרשת של המפיק.
gcloud compute network-firewall-policies associations create \ --name=producer-firewall-policy-assoc \ --firewall-policy=producer-firewall-policy \ --global-firewall-policy \ --network=producer-networkיוצרים כלל חומת אש שמאפשר חיבור UDP עם יציאת GENEVE מכתובת ה-IP של שער ה-VPC.
gcloud compute network-firewall-policies rules create 100 \ --firewall-policy=producer-firewall-policy \ --global-firewall-policy \ --action=allow \ --direction=INGRESS \ --layer4-configs=udp:6081 \ --src-ip-ranges=$GW_IP/32יוצרים כלל חומת אש שמאפשר בדיקות תקינות Google Cloud .
gcloud compute network-firewall-policies rules create 101 \ --firewall-policy=producer-firewall-policy \ --global-firewall-policy \ --action=allow \ --direction=INGRESS \ --layer4-configs=tcp:80 \ --src-ip-ranges=35.191.0.0/16,130.211.0.0/22יוצרים כלל חומת אש שמאפשר חיבור SSH למכונה הווירטואלית של בעל השירות דרך שרת proxy לאימות זהויות (IAP).
gcloud compute network-firewall-policies rules create 102 \ --firewall-policy=producer-firewall-policy \ --global-firewall-policy \ --action=allow \ --direction=INGRESS \ --layer4-configs=tcp:22 \ --src-ip-ranges=35.235.240.0/20
יצירת משאבים של הפסקות פרסומות
בקטע הזה, יוצרים קבוצת פריסה של חסימת תנועה ופריסה של חסימת תנועה.
המסוף
נכנסים לדף Deployment groups במסוף Google Cloud .
לוחצים על יצירת קבוצת פריסה.
בשדה Name (שם), מזינים
producer-deployment-group.בשדה רשת, בוחרים באפשרות
producer-network.בקטע Purpose (מטרה), בוחרים באפשרות NSI in-band (איתות NSI בתוך פס התדרים).
בקטע Intercept deployments (פריסות של חסימת תנועה), לוחצים על Create intercept deployment (יצירת פריסה של חסימת תנועה), מציינים את השדות הבאים ולוחצים על Create (יצירה):
- Name (שם):
producer-deployment. - אזור:
us-west1. - Zone (תחום):
us-west1-b. - מאזן עומסים פנימי:
producer-ilb.
- Name (שם):
לוחצים על יצירה.
gcloud
יוצרים קבוצת פריסה של חסימת תנועה.
gcloud network-security intercept-deployment-groups create producer-deployment-group \ --location=global \ --network=projects/PROJECT_ID/global/networks/producer-network \ --no-asyncמחליפים את
PROJECT_IDבמזהה הפרויקט.יוצרים פריסת יירוט.
gcloud network-security intercept-deployments create producer-deployment \ --location=us-west1-b \ --forwarding-rule=producer-ilb-fr \ --forwarding-rule-location=us-west1 \ --intercept-deployment-group=projects/PROJECT_ID/locations/global/interceptDeploymentGroups/producer-deployment-group \ --no-asyncמחליפים את
PROJECT_IDבמזהה הפרויקט.
יצירת משאבים לצרכנים
בקטע הזה יוצרים את המשאבים הבאים עבור הצרכן:
- רשת VPC מותאמת אישית עם רשת משנה.
- מכונה וירטואלית של שרת ומכונה וירטואלית של לקוח.
- מדיניות חומת אש וכלל ליירוט תעבורה.
- קבוצה של נקודות קצה ליירוט ושיוך של קבוצה של נקודות קצה ליירוט.
- פרופיל אבטחה וקבוצת פרופילי אבטחה.
יצירת רשת VPC בהתאמה אישית
בקטע הזה תיצרו רשת VPC עם תת-רשת.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על יצירת רשת VPC.
בשדה Name (שם), מזינים
consumer-network.בשדה תיאור, מזינים
Consumer VPC network.בקטע Subnets (רשתות משנה), מבצעים את הפעולות הבאות:
- מגדירים את מצב יצירת רשתות משנה למותאם אישית.
- בקטע New subnet (רשת משנה חדשה), מזינים את הפרטים הבאים:
- Name (שם):
consumer-subnet - אזור:
us-west1 - סוג מחסנית IP: IPv4 (מחסנית יחידה)
- טווח IPv4:
10.10.0.0/16
- Name (שם):
- לוחצים על סיום.
לוחצים על יצירה.
gcloud
יוצרים רשת VPC לצרכן.
gcloud compute networks create consumer-network \ --subnet-mode=custom \ --description="Consumer VPC network"ברשת ה-VPC, יוצרים רשת משנה.
gcloud compute networks subnets create consumer-subnet \ --network=consumer-network \ --region=us-west1 \ --range=10.10.0.0/16
יצירת מכונות וירטואליות של שרת ולקוח
בקטע הזה יוצרים שרת ומכונה וירטואלית של לקוח.
המסוף
יצירת מכונה וירטואלית של שרת
נכנסים לדף VM instances במסוף Google Cloud .
לוחצים על Create instance.
מגדירים את Name לערך
consumer-server-vm.מגדירים את Region לערך
us-west1.מגדירים את Zone לערך
us-west1-b.מגדירים את סוג מכונה לערך e2-micro.
לוחצים על Networking ומגדירים את השדות הבאים:
בקטע Network interfaces, לוחצים על
defaultועורכים את ממשק הרשת:- רשת:
consumer-network - Subnet (רשת משנה):
consumer-subnet - כתובת IPv4 חיצונית: ללא
- רשת:
לוחצים על מתקדם ומזינים את התסריט הבא בסקריפט לטעינה בזמן ההפעלה:
echo success > /tmp/connection_test && nohup python3 -u -m http.server --directory /tmp 8000
לוחצים על יצירה.
יצירת מכונה וירטואלית של לקוח
נכנסים לדף VM instances במסוף Google Cloud .
לוחצים על Create instance.
מגדירים את Name לערך
consumer-client-vm.מגדירים את Region לערך
us-west1.מגדירים את Zone לערך
us-west1-b.מגדירים את סוג מכונה לערך e2-micro.
לוחצים על Networking ומגדירים את השדות הבאים:
בקטע Network interfaces, לוחצים על
defaultועורכים את ממשק הרשת:- רשת:
consumer-network - Subnet (רשת משנה):
consumer-subnet - כתובת IPv4 חיצונית: ללא
- רשת:
לוחצים על יצירה.
gcloud
יוצרים את המכונה הווירטואלית של השרת.
gcloud compute instances create consumer-server-vm \ --image-project=debian-cloud \ --image-family=debian-11 \ --machine-type=e2-micro \ --zone=us-west1-b \ --network-interface="subnet=consumer-subnet,no-address" \ --metadata=startup-script="echo success > /tmp/connection_test && nohup python3 -u -m http.server --directory /tmp 8000"יוצרים את המכונה הווירטואלית של הלקוח.
gcloud compute instances create consumer-client-vm \ --image-project=debian-cloud \ --image-family=debian-11 \ --machine-type=e2-micro \ --zone=us-west1-b \ --network-interface="subnet=consumer-subnet,no-address"
יצירת מדיניות חומת אש כדי לאפשר גישת SSH
בקטע הזה, יוצרים מדיניות חומת אש ומוסיפים כלל חומת אש כדי לאפשר גישת SSH למכונות הווירטואליות של הצרכן.
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
לוחצים על יצירת מדיניות חומת אש.
בשדה שם מזינים
consumer-firewall-policy.בקטע היקף הפריסה, בוחרים באפשרות גלובלי ולוחצים על המשך.
לוחצים על יצירת כלל לחומת האש, מגדירים את השדות הבאים ולוחצים על יצירה:
- עדיפות:
100 - כיוון התנועה: כניסה
- פעולה במקרה של התאמה: אישור
- מסנני מקורות > טווח כתובות IP:
35.235.240.0/20 - פרוטוקול ויציאות: בוחרים באפשרות פרוטוקול ויציאות שצוינו, מסמנים את תיבת הסימון TCP ומציינים את הערך
22ביציאות.
טווח כתובות ה-IPv4
35.235.240.0/20כולל את כל כתובות ה-IP שמשמשות את שרת ה-Proxy לאימות זהויות (IAP) להעברת TCP. מידע נוסף זמין במאמר בנושא הכנת הפרויקט להעברת TCP.- עדיפות:
כדי לשייך את המדיניות לרשת, לוחצים על המשך ואז על שיוך.
מסמנים את תיבת הסימון
consumer-network.לוחצים על Continue.
לוחצים על יצירה.
gcloud
יוצרים מדיניות גלובלית של חומת אש בין רשתות.
gcloud compute network-firewall-policies create consumer-firewall-policy \ --globalמשייכים את מדיניות חומת האש לרשת הצרכן.
gcloud compute network-firewall-policies associations create \ --name=consumer-firewall-policy-assoc \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policy \ --network=consumer-networkיוצרים כלל הרשאה ל-SSH כדי לאפשר חיבור SSH למכונה וירטואלית של לקוח דרך שרת proxy לאימות זהויות (IAP).
gcloud compute network-firewall-policies rules create 101 \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policy \ --action=allow \ --direction=INGRESS \ --layer4-configs=tcp:22 \ --src-ip-ranges=35.235.240.0/20טווח כתובות ה-IPv4
35.235.240.0/20כולל את כל כתובות ה-IP שמשמשות את שרת ה-Proxy לאימות זהויות (IAP) להעברת TCP. מידע נוסף זמין במאמר הכנת הפרויקט להעברת TCP.
יצירה של קבוצת נקודות קצה לצרכנים
בקטע הזה, יוצרים קבוצה של נקודות קצה ליירוט ושיוך של קבוצת נקודות קצה ליירוט.
המסוף
נכנסים לדף Endpoint groups במסוף Google Cloud .
לוחצים על Create endpoint group.
בשדה Name (שם), מזינים
consumer-endpoint-group.בקטע Deployment group, בתפריט Select project, בוחרים באפשרות Select current project.
בקטע Intercept deployment group (קבוצת פריסה של חסימת גישה), בוחרים באפשרות
producer-deployment-group.לוחצים על Continue.
לוחצים על הוספת שיוך של קבוצת נקודות קצה.
בקטע Project (פרויקט), בוחרים את הפרויקט הנוכחי.
בשדה רשת, בוחרים באפשרות
consumer-network.לוחצים על יצירה.
gcloud
יוצרים את קבוצת נקודות הקצה של ההפניה.
gcloud network-security intercept-endpoint-groups create consumer-endpoint-group \ --location=global \ --intercept-deployment-group=projects/PROJECT_ID/locations/global/interceptDeploymentGroups/producer-deployment-group \ --no-asyncמחליפים את
PROJECT_IDבמזהה הפרויקט.יוצרים את השיוך של קבוצת נקודות הקצה ליירוט.
gcloud network-security intercept-endpoint-group-associations create consumer-endpoint-group-association \ --location=global \ --intercept-endpoint-group=projects/PROJECT_ID/locations/global/interceptEndpointGroups/consumer-endpoint-group \ --network=consumer-network \ --no-asyncמחליפים את
PROJECT_IDבמזהה הפרויקט.
יצירה של פרופיל אבטחה וקבוצת פרופילי אבטחה
יוצרים קבוצת פרופילי אבטחה ופרופיל אבטחה מותאם אישית כדי ליירט תנועה.
המסוף
יצירת פרופיל אבטחה
נכנסים לדף Security profiles במסוף Google Cloud .
בוחרים את הארגון מתוך בורר הפרויקטים.
בכרטיסייה פרופילי אבטחה, לוחצים על יצירת פרופיל.
בשדה Name (שם), מזינים
consumer-security-profile.בקטע מטרת פרופיל האבטחה, בוחרים באפשרות NSI in-band.
בקטע Project (פרויקט), בוחרים את הפרויקט הנוכחי.
בקטע Intercept endpoint group, בוחרים באפשרות
consumer-endpoint-group.לוחצים על יצירה.
יצירה של קבוצת פרופילי אבטחה
נכנסים לדף Security profile groups במסוף Google Cloud .
בוחרים את הארגון מתוך בורר הפרויקטים.
בכרטיסייה קבוצות של פרופילי אבטחה, לוחצים על יצירת קבוצת פרופילים.
בשדה Name (שם), מזינים
consumer-security-profile-group.בקטע Security profile group purpose (מטרת קבוצת פרופילי האבטחה), בוחרים באפשרות NSI in-band (שילוב אבטחת רשת בתוך תדרים).
בקטע פרופיל מותאם אישית של חסימת תנועה, בוחרים באפשרות
consumer-security-profile.לוחצים על יצירה.
gcloud
יוצרים פרופיל אבטחה של יירוט.
gcloud network-security security-profiles custom-intercept create consumer-security-profile \ --location=global \ --organization=ORG_ID \ --intercept-endpoint-group=projects/PROJECT_ID/locations/global/interceptEndpointGroups/consumer-endpoint-group \ --no-asyncמחליפים את מה שכתוב בשדות הבאים:
-
ORG_ID: מזהה הארגון. פרופילי אבטחה הם משאבים ברמת הארגון. כדי ליצור אותם, צריך להיות לכם תפקיד אדמין פרופיל אבטחה (networksecurity.securityProfileAdmin) ברמת הארגון. -
PROJECT_ID: מזהה הפרויקט.
-
יוצרים קבוצה של פרופילי אבטחה ליירוט.
gcloud network-security security-profile-groups create consumer-security-profile-group \ --location=global \ --organization=ORG_ID \ --custom-intercept-profile=consumer-security-profile \ --billing-project=PROJECT_ID \ --no-asyncמחליפים את מה שכתוב בשדות הבאים:
-
ORG_ID: מזהה הארגון. קבוצות של פרופילי אבטחה הן משאבים ברמת הארגון. כדי ליצור אותם, צריך את התפקיד אדמין פרופיל אבטחה (networksecurity.securityProfileAdmin) ברמת הארגון. -
PROJECT_ID: מזהה הפרויקט.
-
יצירת מדיניות חומת אש ליירוט תנועה
בקטע הזה יוצרים מדיניות חומת אש וכלל חומת אש כדי ליירט תנועה.
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
לחץ על
consumer-firewall-policy.לוחצים על יצירת כלל לחומת האש ומגדירים את השדות הבאים:
- עדיפות:
100 - כיוון התנועה: כניסה
- פעולה לגבי התאמה: המשך לבדיקה ברמה 7
- מטרה: NSI in-band
- קבוצת פרופילים של אבטחה:
consumer-security-profile-group - טווח כתובות IP:
10.10.0.0/16 - פרוטוקול ויציאות: בוחרים באפשרות פרוטוקול ויציאות שצוינו, מסמנים את תיבת הסימון TCP ומציינים את הערך
8000ביציאות.
- עדיפות:
לוחצים על יצירה.
gcloud
מוסיפים כלל חומת אש כדי ליירט תעבורה ביציאת TCP 8000 במכונה הווירטואלית של השרת.
gcloud compute network-firewall-policies rules create 100 \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policy \ --action=apply_security_profile_group \ --security-profile-group=organizations/ORG_ID/locations/global/securityProfileGroups/consumer-security-profile-group \ --direction=INGRESS \ --layer4-configs=tcp:8000 \ --src-ip-ranges=10.10.0.0/16מחליפים את
ORG_IDבמזהה הארגון.
בדיקת החיבור
בקטע הזה, שולחים תנועת נתונים ברשת ממכונת ה-VM של לקוח הצרכן למכונת ה-VM של שרת הצרכן, ואז בודקים את היומנים של מכונת ה-VM של היצרן כדי לאמת את היירוט.
מריצים את הפקודה הבאה כדי להתחבר למופע של מכונת ה-VM של לקוח הצרכן באמצעות SSH, ולשלוח בקשה למופע של מכונת ה-VM של שרת הצרכן.
gcloud compute ssh consumer-client-vm \ --tunnel-through-iap \ --zone=us-west1-b \ --command="curl -m 3 -s http://consumer-server-vm:8000/connection_test || echo fail"ההודעה
successמופיעה כשמריצים את הפקודה הקודמת. היא מציינת שהתנועה נשלחת מהלקוח לשרת.מריצים את הפקודה הבאה כדי לבדוק את היומנים של מכונת ה-VM של היצרן.
gcloud compute ssh producer-instance \ --tunnel-through-iap \ --zone=us-west1-b \ --command="cat /var/log/syslog | grep 'NSI INTERCEPT'"מופיעה הודעה דומה ל
[NSI INTERCEPT] IN=ens4 OUT= MAC=xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx SRC=10.10.0.1 DST=10.10.0.2 LEN=136 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=45554 DPT=6081 LEN=116. היא מציינת שתעבורת הנתונים בין הלקוח לשרת מיוצאת על ידי מופע מכונת ה-VM של היצרן.
הסרת המשאבים
כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, אפשר למחוק את הפרויקט שמכיל את המשאבים, או להשאיר את הפרויקט ולמחוק את המשאבים בנפרד.
מחיקת משאבי הצרכן
מבטלים את השיוך של מדיניות חומת האש לרשת הצרכנית ומוחקים את מדיניות חומת האש.
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
לוחצים על המדיניות
consumer-firewall-policy.לוחצים על הכרטיסייה שיוכים.
מסמנים את תיבת הסימון של השיוך
consumer-network.לוחצים על הסרת השיוך.
לוחצים על הסרה.
בחלק העליון של הדף, לוחצים על מחיקה.
כדי לאשר, לוחצים שוב על מחיקה.
gcloud
מסירים את השיוך.
gcloud compute network-firewall-policies associations delete \ --name=consumer-firewall-policy-assoc \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policyמוחקים את מדיניות חומת האש.
gcloud compute network-firewall-policies delete consumer-firewall-policy \ --global
מוחקים את קבוצת פרופילי האבטחה.
המסוף
נכנסים לדף Security profiles במסוף Google Cloud .
בוחרים את הארגון מתוך בורר הפרויקטים.
בכרטיסייה קבוצות פרופילי אבטחה, בוחרים את קבוצת פרופילי האבטחה
consumer-security-profile-groupולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
gcloud network-security security-profile-groups delete consumer-security-profile-group \ --location=global \ --organization=ORG_ID \ --billing-project=PROJECT_ID \ --quietמחליפים את מה שכתוב בשדות הבאים:
-
ORG_ID: המזהה של הארגון -
PROJECT_ID: מזהה הפרויקט
מוחקים את פרופיל האבטחה.
המסוף
נכנסים לדף Security profiles במסוף Google Cloud .
בוחרים את הארגון מתוך בורר הפרויקטים.
בכרטיסייה פרופילי אבטחה, בוחרים את פרופיל האבטחה
consumer-security-profileולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
gcloud network-security security-profiles custom-intercept delete consumer-security-profile \ --location=global \ --organization=ORG_ID \ --billing-project=PROJECT_ID \ --quietמחליפים את מה שכתוב בשדות הבאים:
-
ORG_ID: המזהה של הארגון -
PROJECT_ID: מזהה הפרויקט
מוחקים את השיוך של קבוצת נקודות הקצה של ההפניה.
המסוף
נכנסים לדף Endpoint groups במסוף Google Cloud .
לחץ על
consumer-endpoint-group.בוחרים את השיוך
consumer-networkולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
gcloud network-security intercept-endpoint-group-associations delete consumer-endpoint-group-association \ --location=global \ --no-asyncמוחקים את קבוצת נקודות הקצה של ההפניה.
המסוף
נכנסים לדף Endpoint groups במסוף Google Cloud .
בוחרים באפשרות
consumer-endpoint-groupולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
gcloud network-security intercept-endpoint-groups delete consumer-endpoint-group \ --location=global \ --no-asyncמוחקים את המכונות הווירטואליות של השרת והלקוח.
המסוף
נכנסים לדף VM instances במסוף Google Cloud .
מסמנים את תיבות הסימון של
consumer-client-vmושלconsumer-server-vmולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
מוחקים את מכונת ה-VM של הלקוח.
gcloud compute instances delete consumer-client-vm \ --zone=us-west1-b \ --quietמוחקים את מכונת ה-VM של השרת.
gcloud compute instances delete consumer-server-vm \ --zone=us-west1-b \ --quiet
מוחקים את רשת הצרכן ואת רשת המשנה.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לחץ על
consumer-network.בכרטיסייה Subnets, מסמנים את תיבת הסימון של
consumer-subnetולוחצים על Delete.כדי לאשר, לוחצים שוב על מחיקה.
לוחצים על מחיקת רשת VPC.
בשדה הטקסט, מזינים
consumer-networkולוחצים על מחיקה.
gcloud
מוחקים את תת-הרשת.
gcloud compute networks subnets delete consumer-subnet \ --region=us-west1 \ --quietמחיקת רשת ה-VPC.
gcloud compute networks delete consumer-network \ --quiet
מחיקת המשאבים של הספק
מבטלים את השיוך של מדיניות חומת האש לרשת של הספק ומוחקים את מדיניות חומת האש.
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
לוחצים על המדיניות
producer-firewall-policy.לוחצים על הכרטיסייה שיוכים.
מסמנים את תיבת הסימון של השיוך
producer-network.לוחצים על הסרת השיוך.
לוחצים על הסרה.
בחלק העליון של הדף, לוחצים על מחיקה.
כדי לאשר, לוחצים שוב על מחיקה.
gcloud
מסירים את השיוך.
gcloud compute network-firewall-policies associations delete \ --name=producer-firewall-policy-assoc \ --firewall-policy=producer-firewall-policy \ --global-firewall-policyמוחקים את מדיניות חומת האש.
gcloud compute network-firewall-policies delete producer-firewall-policy \ --global
מוחקים את פריסת ההודעה המקדימה ואת קבוצת פריסת ההודעה המקדימה.
המסוף
נכנסים לדף Deployment groups במסוף Google Cloud .
לחץ על
producer-deployment-group.מוחקים את
producer-deployment.- מסמנים את תיבת הסימון
producer-deploymentולוחצים על מחיקה. - כדי לאשר, לוחצים שוב על מחיקה.
- מסמנים את תיבת הסימון
לוחצים על הלחצן מחיקה בחלק העליון של הדף.
כדי לאשר, לוחצים שוב על מחיקה.
gcloud
מוחקים את פריסת הסקרים שמוצגים בזמן שהמשתמשים נמצאים באתר.
gcloud network-security intercept-deployments delete producer-deployment \ --location=us-west1-b \ --no-asyncמוחקים את קבוצת הפריסה של ההודעה שמוצגת למשתמשים.
gcloud network-security intercept-deployment-groups delete producer-deployment-group \ --location=global \ --no-async
מוחקים את משאבי מאזן העומסים.
המסוף
נכנסים לדף Load balancing במסוף Google Cloud .
מסמנים את תיבת הסימון
producer-ilb.לוחצים על הלחצן מחיקה בחלק העליון של הדף.
מסמנים את התיבה
producer-health-checkולוחצים על מחיקת איזון העומסים והמשאבים שנבחרו.
gcloud
מוחקים את כלל ההעברה.
gcloud compute forwarding-rules delete producer-ilb-fr \ --region=us-west1 \ --quietמסירים את שירות לקצה העורפי.
gcloud compute backend-services delete producer-backend-service \ --region=us-west1 \ --quietמוחקים את בדיקת התקינות.
gcloud compute health-checks delete producer-health-check \ --region=us-west1 \ --quiet
מוחקים את המכונה הווירטואלית של היצרן.
המסוף
נכנסים לדף VM instances במסוף Google Cloud .
מסמנים את התיבה של
producer-instanceולוחצים על מחיקה.כדי לאשר, לוחצים שוב על מחיקה.
gcloud
gcloud compute instances delete producer-instance \ --zone=us-west1-b \ --quietמוחקים את קבוצת המכונות.
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
מסמנים את תיבת הסימון
producer-instance-group.לוחצים על Delete.
בחלון האישור לוחצים על Delete.
gcloud
gcloud compute instance-groups unmanaged delete producer-instance-group \ --zone=us-west1-b \ --quietמוחקים את רשת ההפקה ואת רשת המשנה.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לחץ על
producer-network.בכרטיסייה Subnets (רשתות משנה), מסמנים את תיבת הסימון של
producer-subnetולוחצים על Delete (מחיקה).כדי לאשר, לוחצים שוב על מחיקה.
לוחצים על מחיקת רשת VPC.
בשדה הטקסט, מזינים
producer-networkולוחצים על מחיקה.
gcloud
מוחקים את תת-הרשת.
gcloud compute networks subnets delete producer-subnet \ --region=us-west1 \ --quietמחיקת הערוץ.
gcloud compute networks delete producer-network \ --quiet
המאמרים הבאים
- סקירה כללית על קבוצות פריסה של חסימת תנועה
- סקירה כללית על פריסות של סקרים שמוצגים תוך כדי גלישה
- סקירה כללית של קבוצות של נקודות קצה ושל שיוכים
- סקירה כללית של פרופילי אבטחה
- סקירה כללית של קבוצות פרופילים של אבטחה
- כדאי להעמיק את הקריאה ולהכיר דוגמאות לארכיטקטורות, תרשימים ושיטות מומלצות בנושאי Google Cloud. כל אלה זמינים במרכז הארכיטקטורה של Cloud.