במסמך הזה מתוארות שיטות מומלצות לביקורת גישת SSH למכונות וירטואליות (VM) של Linux.
יומני הביקורת של Cloud מאפשרים לכם לנתח פעילות קודמת, והם יכולים להיות מקור מידע חשוב כשאתם חוקרים פעילות חשודה שמשפיעה על המשאבים שלכם ב-Google Cloud .
בקטעים הבאים מפורטות שיטות מומלצות שיעזרו לכם לשמור על נתיב ביקורת לאיומי מניעת הכחשה:
המסמך מתמקד בשיטות שספציפיות ל- Google Cloud או רלוונטיות במיוחד לשימוש ב-SSH ב- Google Cloud. המסמך לא כולל שיטות מומלצות להטמעות ספציפיות של לקוח או שרת SSH.
הפעלת יומני גישה לנתונים של IAP
כדי לוודא ש-IAP מוסיף רשומה ליומני הביקורת של Cloud בכל פעם שמשתמש מנסה ליצור חיבור SSH, צריך להפעיל יומני גישה לנתונים עבור Cloud Identity-Aware Proxy API. יומני הגישה לנתונים מושבתים כברירת מחדל. אלא אם יש לכם חששות לגבי נפח היומנים, כדאי להפעיל יומני גישה לנתונים בכל הפרויקטים שמכילים מכונות וירטואליות.
מעקב אחרי רשומות ביומן הביקורת שקשורות לשימוש ב-SSH
השימוש ב-SSH יכול להשפיע על האבטחה של מכונות וירטואליות ועומסי העבודה שלהן, ולכן חשוב לשמור תיעוד של ניסיונות חיבור מוצלחים וניסיונות גישה שנכשלו. זה חשוב במיוחד בסביבות ייצור, שבהן השימוש ב-SSH צריך להיחשב כפעולה רגישה.
כדי לעקוב אחרי גישת SSH ואולי למצוא התנהגות חשודה, חשוב לעקוב אחרי רשומות ביומן שקשורות ל-SSH, כולל הרשומות הבאות:
| שירות | Method | תיאור |
|---|---|---|
| IAP | AuthorizeUser |
מציין ניסיון חיבור דרך העברת TCP ב-IAP. רשומות ביומן מכילות פרטים על המכשיר של המשתמש, רמות גישה שהושגה אליהן גישה ורמות גישה שלא הושגה אליהן גישה. |
| התחברות OS | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy |
מציין ניסיון התחברות. |
| התחברות OS | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession |
מציין את תחילת האתגר של אימות דו-שלבי ב-OS Login |
| התחברות OS | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession |
מציין את השלמת האתגר של אימות דו-שלבי ב-OS Login |
| Compute Engine | v1.compute.projects.setCommonInstanceMetadata |
אם השדה projectMetadataDelta מכיל רשומה של `ssh-keys`, המשמעות היא שרשומת היומן הזו מציינת שמפתח SSH נוסף, הוסר או שונה במטא-נתונים של הפרויקט.
|
| Compute Engine | v1.compute.instances.setMetadata |
אם השדה projectMetadataDelta מכיל רשומה של `ssh-keys` או `sshKeys`, הרשומה הזו ביומן מציינת שמפתח SSH נוסף, הוסר או שונה במטא-נתונים של המופע.
|
| Compute Engine | google.ssh-serialport.v1.connect |
מציין ניסיון חיבור למסוף הטורי |
| IAM |
beta.compute.instances.setIamPolicy,
v1.compute.instances.setIamPolicy
|
מציין שינוי במדיניות IAM של מכונה וירטואלית. שינוי במדיניות IAM עשוי להשפיע על היכולת של המשתמשים לשנות את מטא-נתוני המופע. |
| IAM |
SetIamPolicy |
מציין שינוי במדיניות IAM של פרויקט. שינוי במדיניות IAM עשוי להשפיע על היכולת של המשתמשים לשנות את המטא-נתונים של הפרויקט ואת הגדרת יומני הביקורת של גישה לנתונים בפרויקט. |
כל הרשומות ביומן הביקורת מכילות שדה principalEmail שמזהה את חשבון המשתמש שביצע את הפעילות.
כדי לקבל תמונה מלאה של הפעילות במכונות הווירטואליות, צריך להגדיר את המכונות הווירטואליות כך שיבצעו ייצוא של /var/log/messages ושל יומני שרת SSH אל Cloud Logging, למשל באמצעות סוכן תפעול.
שימו לב: בהתאם להפצת Linux שבה אתם משתמשים, ייתכן שיומני שרת SSH ייכתבו לקובצי יומן שונים (בדרך כלל, /var/log/auth.log או /var/log/secure), וקובצי היומן האלה לא נכללים בהגדרת ברירת המחדל שבה נעשה שימוש בסוכן תפעול.