בדף הזה מתוארת הגישה של Google Kubernetes Engine (GKE) לשיפור התאימות למדדי ההשוואה של Center for Internet Security (CIS) ל-Kubernetes ול-GKE. הדף הזה כולל את המידע הבא:
- איך אנחנו מגדירים את מישור הבקרה המנוהל של GKE בהתאם למדד CIS Kubernetes Benchmark
- איך אפשר להגדיר את הצמתים ועומסי העבודה ב-GKE כך שיתאימו ל-CIS Google Kubernetes Engine (GKE) Benchmark
מידע על נקודות ההשוואה של CIS
CIS מפרסמת את המדדים הבאים שמכילים הנחיות להגדרת אבטחה ב-Kubernetes:
- CIS Kubernetes Benchmark: רלוונטי לפרויקט Kubernetes בקוד פתוח. ההנחיות האלה מיועדות למגוון הטמעות של Kubernetes בניהול עצמי ובאירוח.
- CIS GKE Benchmark: קובע הנחיות להגדרה מאובטחת של רכיבים שאפשר לשלוט בהם באשכולות GKE. הקטגוריה הזו כוללת המלצות ספציפיות ל-GKE ב- Google Cloud.
מומלץ לתת עדיפות ל-CIS GKE Benchmark, כי הוא ספציפי ל-GKE ב- Google Cloud. ההשוואה של CIS Kubernetes כוללת הרבה המלצות לבקרות שאי אפשר לראות או לשנות ב-GKE. הגישה שלנו לאבטחת אשכולות כוללת אמצעי הגנה שחורגים מהיקף ההשוואה של Kubernetes בקוד פתוח, ויכולים לגרום לסתירות עם ההמלצות האלה.
מדדים אחרים שרלוונטיים ל-GKE
בנוסף ל-CIS GKE Benchmark ול-CIS Kubernetes Benchmark, המדדים הבאים חלים על מערכות ההפעלה שזמינות ב-GKE. גם אם מדד השוואה ספציפי של מערכת הפעלה לא מתייחס באופן מפורש לשימוש ב-Kubernetes, עדיין כדאי לעיין בו כדי לקבל הנחיות נוספות בנושא אבטחה.
- Container-Optimized OS Benchmark: מערכת הפעלה שמותאמת לקונטיינרים שמותקנת כברירת מחדל בכל הצמתים של GKE Linux
- Ubuntu Linux Benchmark: זמין ב-GKE Standard
- Windows Server Benchmark: זמין ב-GKE Standard
לזמן הריצה של ברירת המחדל של מאגרים, containerd, אין מדד השוואה.
מודל האחריות המשותפת
בהתאם למודל האחריות המשותפת של GKE, אנחנו מנהלים בשבילכם את הרכיבים הבאים:
- מישור הבקרה, כולל מכונות וירטואליות של מישור הבקרה, שרת API ורכיבים כמו מסד הנתונים של מצב האשכול (מבוסס על etcd או Spanner), kube-controller-manager ו-kube-scheduler.
- מערכת ההפעלה של הצומת.
הרכיבים האלה נמצאים בפרויקט שבבעלות GKE, כך שאי אפשר לשנות או להעריך אף אחד מהרכיבים האלה בהשוואה לאמצעי הבקרה התואמים של CIS Benchmark. עם זאת, אתם יכולים להעריך ולתקן את כל אמצעי הבקרה של CIS Benchmark שרלוונטיים לצמתי העובדים ולעומסי העבודה שלכם. על סמך מודל האחריות המשותפת של GKE, הרכיבים האלה הם באחריותכם.
הגישה שלנו לאבטחת GKE בהתאם ל-CIS Benchmark
GKE הוא יישום מנוהל של Kubernetes בקוד פתוח. אנחנו מנהלים באופן מלא את מישור הבקרה ואחראים לאבטחת ההגדרה של רכיבי מישור הבקרה. בטבלה הבאה מתוארות חלק מההחלטות שלנו שעשויות להשפיע על הניקוד של מדדי CIS:
| גישת האבטחה של GKE | |
|---|---|
| אימות |
|
| בקרי אישור בקשות | GKE משבית את בקרי אישור הבקשות הבאים:
|
| רישום ביומן ביקורת | GKE מתעד יומני ביקורת באמצעות מדיניות הביקורת של GKE. כתוצאה מכך, אין צורך להגדיר דגלים של רישום ביומן של ביקורת בשרת Kubernetes API. |
| ניפוי באגים | ב-GKE נעשה שימוש בפרופיילינג לצורך ניפוי באגים. |
| הצפנה |
|
| etcd | ב-Kubernetes בקוד פתוח, מסד הנתונים של מצב האשכול משתמש ב-etcd. ב-GKE, מסד הנתונים בעורף שמכיל את מצב האשכול הוא אחת מהטכנולוגיות הבאות:
כל אשכולות GKE מפעילים את etcd API במכונות וירטואליות של מישור הבקרה. כל האינטראקציות של הלקוח עם Kubernetes API זהות לאינטראקציות ב-Kubernetes בקוד פתוח. בהתאם לטכנולוגיית מסד הנתונים שמשמשת כקצה העורפי של etcd API באשכול, יכול להיות שתבחינו בחוסר התאמה בניקוד שקשור ל-etcd ב-CIS Kubernetes Benchmark בקוד פתוח. |
| kubelet |
|
הערכת GKE בהשוואה ל-CIS Benchmarks
כדי להגדיר אוטומציה להערכת האשכולות שלכם ביחס לנקודות ההשוואה, אתם יכולים להשתמש באחת מהשיטות הבאות:
- CIS GKE Benchmark:
- מריצים את הפקודה
kube-benchכדי להעריך את צמתי העובדים ביחס למדד ההשוואה. פרטים נוספים זמינים במאגר kube-bench ב-GitHub. - אפשר להשתמש בכלי של צד שלישי כמו Twistlock Defender כדי להעריך צמתים בהשוואה ל-Benchmark.
- מריצים את הפקודה
- השוואה לשוק של CIS Kubernetes: מריצים את הפקודה
kube-benchכדי להעריך את צמתי העובדים בהשוואה לשוק. אי אפשר להעריך את מישור הבקרה המנוהל בהשוואה להמלצות האלה במדד.
המאמרים הבאים
- קריאת הסקירה הכללית על אבטחה ב-GKE
- פועלים לפי השיטות המומלצות לאבטחה במדריך לחיזוק האבטחה ב-GKE.
- כאן אפשר לקרוא על מעקב אחרי בעיות אבטחה באשכולות באמצעות GKE security posture.
- במרכז הבקרה לתאימות של GKE אפשר ללמוד איך להעריך את האשכולות שלכם כדי לזהות בעיות תאימות.