בדף הזה מתוארת הגישה של 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 Benchmark מכיל המלצות רבות לבקרות שאי אפשר לראות או לשנות ב-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. לכן, אנחנו לא צריכים להגדיר דגלים של רישום ביומן ביקורת בשרת ה-API של Kubernetes. |
| ניפוי באגים | ב-GKE, יצירת פרופילים משמשת לניפוי באגים. |
| הצפנה |
|
| etcd | ב-Kubernetes בקוד פתוח, מסד הנתונים של מצב האשכול משתמש ב-etcd. ב-GKE, מסד הנתונים לקצה העורפי שבו מאוחסן מצב האשכול הוא אחת מהטכנולוגיות הבאות:
כל אשכולות GKE מפעילים את ה-API של etcd במכונות וירטואליות במישור הבקרה. כל האינטראקציות של הלקוח עם Kubernetes API זהות לאלה שבקוד הפתוח של Kubernetes. בהתאם לטכנולוגיית מסד הנתונים שמשמשת כקצה העורפי של ה-API של etcd באשכול, יכול להיות שתבחינו בפערים בניקוד שקשור ל-etcd ב-CIS Kubernetes Benchmark בקוד פתוח. |
| kubelet |
|
הערכת GKE בהשוואה לנקודות ההשוואה של CIS
כדי להעריך באופן אוטומטי את האשכולות שלכם בהשוואה לנקודות ההשוואה, אתם יכולים להשתמש באחת מהשיטות הבאות:
- CIS GKE Benchmark:
- מריצים את
kube-benchכדי להעריך את צומתי העובדים ביחס להערכת הביצועים. לפרטים נוספים, ראו את מאגר kube-bench ב-GitHub. - אפשר להשתמש בכלי של צד שלישי כמו Twistlock Defender כדי להעריך את הצמתים בהשוואה לנקודת ההשוואה.
- מריצים את
- CIS Kubernetes Benchmark: מריצים את
kube-benchכדי להעריך את צומתי העובדים בהשוואה ל-Benchmark. אי אפשר להעריך את מישור הבקרה המנוהל בהשוואה להמלצות האלה ב-Benchmark.
המאמרים הבאים
- סקירה כללית על אבטחה ב-GKE
- לפעול לפי השיטות המומלצות לאבטחה שמפורטות במדריך להקשחת GKE.
- איך עוקבים אחרי בעיות אבטחה באשכולות באמצעות מצב האבטחה של GKE
- איך בודקים אם יש בעיות תאימות באשכולות באמצעות לוח הבקרה של GKE Compliance