התחברות למכונות וירטואליות של Windows באמצעות SSH

במסמך הזה מתואר איך להתחבר למכונות וירטואליות (VM) של Windows באמצעות SSH. דרכים נוספות להתחבר למכונות וירטואליות של Windows מפורטות במאמרים התחברות למכונות וירטואליות של Windows באמצעות RDP והתחברות למכונות וירטואליות של Windows באמצעות PowerShell. מידע על האופן שבו SSH פועל ב-Compute Engine זמין במאמר מידע על חיבורי SSH.

לפני שמתחילים

  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    המסוף

    כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud

    gcloud

    1. התקינו את ה-CLI של Google Cloud. אחר כך, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  • הגדרת אזור ותחום כברירת מחדל

תמונות נתמכות

‫SSH ל-Windows נתמך בתמונות של Windows Server שמופעל בהן סוכן האורח (GCEGuestAgent) בגרסה 20220527.00 ואילך, וב-OpenSSH בגרסה 8.6 ואילך.

הפעלת SSH למכונות וירטואליות של Windows

כדי להפעיל חיבורי SSH למכונות וירטואליות של Windows, צריך להתקין את חבילת google-compute-engine-ssh ולהגדיר את המפתח enable-windows-ssh לערך TRUE במטא-נתונים של הפרויקט או המכונה. הפעלת SSH ל-Windows במטא-נתונים של הפרויקט מאפשרת SSH לכל מכונות ה-VM של Windows בפרויקט. הפעלת SSH ל-Windows במטא-נתונים של המכונה מאפשרת SSH למכונה וירטואלית אחת, ומבטלת את הערך שהוגדר במטא-נתונים של הפרויקט.

הפעלת SSH ל-Windows בזמן יצירת מכונה וירטואלית

מפעילים SSH ל-Windows בזמן יצירת מכונה וירטואלית באמצעות מסוף Google Cloud או Google Cloud CLI.

המסוף

יוצרים מכונה וירטואלית מתמונה ציבורית שמתקינה את החבילה google-compute-engine-ssh ומפעילה SSH בהפעלה:

  1. מציינים את המאפיינים הבאים של דיסק האתחול:

    • מערכת הפעלה: Windows Server
    • גרסה: כל הגרסאות
  2. בקטע אפשרויות מתקדמות, מרחיבים את הקטע ניהול.

  3. בקטע מטא נתונים, לוחצים על הוספת פריט. מוסיפים סקריפט לטעינה בזמן ההפעלה שמתקין את חבילת google-compute-engine-ssh על ידי הזנת צמד מפתח/ערך המטא-נתונים הבא:

    • מקש: sysprep-specialize-script-cmd
    • ערך: googet -noconfirm=true install google-compute-engine-ssh
  4. בקטע מטא נתונים, לוחצים על הוספת פריט. מגדירים את enable-windows-ssh לערך TRUE על ידי הזנת צמד מפתח/ערך המטא-נתונים הבא:

    • מקש: enable-windows-ssh
    • ערך: TRUE
  5. לוחצים על Create כדי ליצור את המכונה הווירטואלית ולהפעיל אותה.

gcloud

מריצים את הפקודה gcloud compute instances create הבאה כדי ליצור מכונת VM של Windows Server שמתקינה את חבילת google-compute-engine-ssh ומפעילה SSH בזמן ההפעלה:

gcloud compute instances create VM_NAME \
    --image-family=IMAGE_FAMILY \
    --image-project=windows-cloud \
    --metadata sysprep-specialize-script-cmd="googet -noconfirm=true install google-compute-engine-ssh",enable-windows-ssh=TRUE

מחליפים את מה שכתוב בשדות הבאים:

  • VM_NAME: השם של ה-VM החדש.
  • IMAGE_FAMILY: משפחת תמונות של Windows Server. הפעולה הזו יוצרת את המכונה הווירטואלית מקובץ האימג' העדכני ביותר של Windows Server שלא הוצא משימוש.

הפעלת SSH ל-Windows במכונת VM פועלת

כדי להפעיל SSH במכונת Windows וירטואלית שפועלת, מבצעים אחת מהפעולות הבאות, בהתאם לאפשרות להשתמש ב-RDP כדי לגשת למכונה הווירטואלית או אם עומס העבודה יכול לעמוד בהפעלה מחדש:

  • נדרשת גישת RDP: מתחברים ל-VM באמצעות RDP ומתקינים את חבילת ה-SSH
  • נדרשת הפעלה מחדש: שימוש בסקריפט לטעינה בזמן ההפעלה כדי להתקין את חבילת ה-SSH

RDP

אם יש לכם גישה למכונה הווירטואלית באמצעות RDP, אתם יכולים להפעיל SSH באופן הבא:

  1. התחברות למכונה הווירטואלית באמצעות RDP

  2. פותחים סשן של שורת פקודה כאדמין:

    1. פותחים את תפריט ההתחלה.

    2. עוברים אל שורת הפקודה.

    3. לוחצים לחיצה ימנית על שורת הפקודה ובוחרים באפשרות הפעלה כמנהל.

      אם תתבקשו לאשר ל-Command Prompt לבצע שינויים במכשיר, לוחצים על כן.

  3. מורידים ומתקינים את חבילת google-compute-engine-ssh על ידי הרצת הפקודה הבאה:

    googet -noconfirm=true install google-compute-engine-windows && googet -noconfirm=true install google-compute-engine-ssh
    
  4. סוגרים את סשן ה-RDP.

  5. מפעילים את Windows SSH במטא-נתונים על ידי הגדרת המפתח enable-windows-ssh לערך TRUE. מידע נוסף על הגדרת מטא-נתונים זמין במאמר הגדרת מטא-נתונים מותאמים אישית.

סקריפט לטעינה בזמן ההפעלה

אם אתם לא מצליחים לגשת למכונה הווירטואלית באמצעות RDP, אתם יכולים להפעיל SSH באופן הבא:

  1. עוצרים את ה-VM.

  2. מגדירים את צמדי מפתח/ערך של המטא-נתונים הבאים במכונה הווירטואלית כדי להפעיל את SSH. מידע נוסף על הגדרת מטא-נתונים זמין במאמר הגדרת מטא-נתונים בהתאמה אישית.

    • מטא-נתונים של התקנת חבילת SSH:

      • מקרא: windows-startup-script-cmd
      • ערך: googet -noconfirm=true update && googet -noconfirm=true install google-compute-engine-ssh
    • מטא-נתונים של הפעלת SSH:

      • מקרא: enable-windows-ssh
      • ערך: TRUE
  3. מפעילים את ה-VM. יכול להיות שיחלפו כמה דקות עד שהמכונה הווירטואלית תופעל מחדש.

התחברות למכונות וירטואליות באמצעות SSH

מתחברים למכונות וירטואליות באמצעות הפקודה gcloud compute ssh:

gcloud compute ssh VM_NAME

מחליפים את VM_NAME בשם של מכונת Windows הווירטואלית שאליה רוצים להתחבר.

התחברות למכונות וירטואליות שמשתמשות ב-AD

אם המכונה הווירטואלית שאליה אתם מתחברים משתמשת ב-Active Directory‏ (AD), מתחברים באמצעות הפקודה הבאה:

gcloud compute ssh DOMAIN\USERNAME@VM_NAME

מחליפים את מה שכתוב בשדות הבאים:

  • DOMAIN: הדומיין שלכם ב-AD. לדוגמה, הדומיין של ad.example.com AD הוא example.
  • USERNAME: שם המשתמש שלכם ב-AD. לדוגמה, cloudysanfrancisco.
  • VM_NAME: השם של מכונת Windows הווירטואלית שאליה רוצים להתחבר.

מה השלב הבא?