Compute Engine משתמש באימות SSH מבוסס-מפתח כדי ליצור חיבורים למכונות וירטואליות (VM) של Linux, ותומך גם באימות מבוסס-אישור למכונות וירטואליות של OS Login. אפשר גם להפעיל SSH למכונות וירטואליות של Windows. כברירת מחדל, סיסמאות לא מוגדרות למשתמשים מקומיים במכונות וירטואליות של Linux.
כדי להתחבר למכונה וירטואלית, צריך לבצע כמה הגדרות. אם אתם משתמשים במסוף Cloud de Confiance או ב-Google Cloud CLI כדי להתחבר למכונות הווירטואליות, מערכת Compute Engine מבצעת את ההגדרות האלה בשבילכם.
חיבורי SSH שמנוהלים על ידי מטא-נתונים
מערכת Compute Engine משתמשת במטא-נתונים מותאמים אישית של הפרויקט או של המכונה כדי להגדיר מפתחות SSH ולנהל את הגישה ל-SSH.כדי לקבל מידע נוסף על ההגדרות שמערכת Compute Engine מבצעת לפני שהיא מאשרת חיבורי SSH כשמשתמשים במסוף Cloud de Confiance , ב-CLI של gcloud או בכלים של צד שלישי כדי להתחבר למכונות וירטואליות, לוחצים על כל אחת מהכרטיסיות. אם אתם מתחברים למכונות וירטואליות בלי להשתמש במסוף Cloud de Confiance או ב-CLI של gcloud, אתם צריכים לבצע בעצמכם כמה הגדרות.
המסוף
- אתם משתמשים בלחצן SSH ב Cloud de Confiance מסוף כדי להתחבר למכונה הווירטואלית.
- Compute Engine מגדיר שם משתמש ויוצר זוג מפתחות SSH זמני עם ההגדרה הבאה:
- שם המשתמש שלכם מוגדר כשם המשתמש בחשבון Google. לדוגמה, אם כתובת האימייל שמשויכת לחשבון Google שלכם היא
cloudysanfrancisco@gmail.com, אז שם המשתמש שלכם הואcloudysanfrancisco. - המפתחות הציבוריים והפרטיים של SSH מאוחסנים בסשן הדפדפן.
- תוקף מפתח ה-SSH הוא שלוש דקות. שלוש דקות אחרי שמערכת Compute Engine יוצרת את המפתח, אי אפשר יותר להשתמש במפתח ה-SSH כדי להתחבר ל-VM.
- שם המשתמש שלכם מוגדר כשם המשתמש בחשבון Google. לדוגמה, אם כתובת האימייל שמשויכת לחשבון Google שלכם היא
- מערכת Compute Engine מאמתת את מפתח ה-SSH ומאשרת את החיבור.
- מערכת Compute Engine מעלה את המפתח הציבורי של ה-SSH ואת שם המשתמש למטא-נתונים.
- Compute Engine מאחזר את מפתח ה-SSH ואת שם המשתמש מהמטא-נתונים, יוצר חשבון משתמש עם שם המשתמש, ובמכונות וירטואליות של Linux, מאחסן את המפתח הציבורי בקובץ
~/.ssh/authorized_keysשל המשתמש במכונה הווירטואלית. במכונות וירטואליות של Windows, Compute Engine לא מאחסן את המפתח הציבורי במכונה הווירטואלית. - מערכת Compute Engine מאשרת את החיבור.
gcloud
- משתמשים בפקודה
gcloud compute sshכדי להתחבר ל-VM. - Compute Engine מגדיר שם משתמש ויוצר זוג מפתחות SSH קבוע עם ההגדרות הבאות:
- שם המשתמש שלכם מוגדר כשם המשתמש במחשב המקומי.
- מפתח ה-SSH הציבורי שלכם מאוחסן במטא-נתונים של הפרויקט. אם Compute Engine לא יכול לאחסן את מפתח ה-SSH במטא-נתונים של הפרויקט, למשל כי הערך של
block-project-ssh-keysמוגדר ל-TRUE, Compute Engine מאחסן את מפתח ה-SSH במטא-נתונים של המכונה. - המפתח הפרטי של SSH מאוחסן במחשב המקומי.
- למפתח ה-SSH שלכם אין תאריך תפוגה. הוא ישמש לכל חיבורי ה-SSH העתידיים שתבצעו, אלא אם תגדירו מפתח חדש.
- שם המשתמש שלכם מוגדר כשם המשתמש במחשב המקומי.
- מערכת Compute Engine מאמתת את מפתח ה-SSH ומאשרת את החיבור.
- מערכת Compute Engine מעלה את המפתח הציבורי של ה-SSH ואת שם המשתמש למטא-נתונים.
- Compute Engine מאחזר את מפתח ה-SSH ואת שם המשתמש מהמטא-נתונים, יוצר חשבון משתמש עם שם המשתמש, ובמכונות וירטואליות של Linux, מאחסן את המפתח הציבורי בקובץ
~/.ssh/authorized_keysשל המשתמש במכונה הווירטואלית. במכונות וירטואליות של Windows, Compute Engine לא מאחסן את המפתח הציבורי במכונה הווירטואלית. - מערכת Compute Engine מאשרת את החיבור.
כלי צד שלישי
- יוצרים זוג מפתחות SSH ושם משתמש. פרטים נוספים זמינים במאמר בנושא יצירת מפתחות SSH.
- מעלים את המפתח הציבורי ואת שם המשתמש למטא-נתונים. פרטים נוספים זמינים במאמר איך מוסיפים מפתחות SSH למכונות וירטואליות שמשתמשות במפתחות SSH שמבוססים על מטא-נתונים.
- מתחברים ל-VM.
- Compute Engine מאחזר את מפתח ה-SSH ואת שם המשתמש מהמטא-נתונים, יוצר חשבון משתמש עם שם המשתמש, ובמכונות וירטואליות של Linux, מאחסן את המפתח הציבורי בקובץ
~/.ssh/authorized_keysשל המשתמש במכונה הווירטואלית. במכונות וירטואליות של Windows, Compute Engine לא מאחסן את המפתח הציבורי במכונה הווירטואלית. - מערכת Compute Engine מאשרת את החיבור.
מה השלב הבא?
- אם אתם לא רוצים להשתמש ב-OS Login, אתם יכולים לנהל מפתחות SSH במטא-נתונים
- איך מתחברים למכונות וירטואליות
- כדי למצוא שיטות וכלים לאבחון ולפתרון של חיבורי SSH שנכשלו, אפשר לעיין במאמר בנושא פתרון בעיות ב-SSH.