ב-Compute Engine, החיבור למכונות וירטואליות (VM) של Linux מתבצע באמצעות אימות מבוסס-מפתח של SSH, וגם באמצעות אימות מבוסס-אישור למכונות וירטואליות של 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.