Informationen zu SSH-Verbindungen


Compute Engine verwendet die schlüsselbasierte SSH-Authentifizierung, um Verbindungen zu Linux-VM-Instanzen herzustellen. Außerdem wird die zertifikatbasierte Authentifizierung für OS Login-VMs (Vorabversion) unterstützt. Sie können optional SSH für Windows-VMs aktivieren. Standardmäßig sind Passwörter für lokale Nutzer auf Linux-VMs nicht konfiguriert.

Bevor Sie eine Verbindung zu einer VM herstellen können, müssen mehrere Konfigurationen durchgeführt werden. Wenn Sie die Google Cloud -Konsole oder die Google Cloud CLI verwenden, um eine Verbindung zu Ihren VMs herzustellen, führt Compute Engine diese Konfigurationen für Sie durch. Compute Engine führt verschiedene Konfigurationen durch, je nachdem, welches Tool Sie zum Herstellen einer Verbindung verwenden und ob Sie den Zugriff auf VMs über Metadaten oder OS Login verwalten. OS Login ist nur für Linux-VMs verfügbar.

Metadatenverwaltete SSH-Verbindungen

Standardmäßigverwendet Compute Engine benutzerdefinierte Projekt- und/oder Instanzmetadaten, um SSH-Schlüssel zu konfigurieren und den SSH-Zugriff zu verwalten. Alle Windows-VMs verwenden Metadaten zum Verwalten von SSH-Schlüsseln. Linux-VMs können Metadatenschlüssel oder OS Login verwenden. Bei Verwendung von OS Login sind Metadaten-SSH-Schlüssel deaktiviert.

Klicken Sie auf die einzelnen Tabs, um mehr über die Konfigurationen zu erfahren, die Compute Engine durchführt, bevor es SSH-Verbindungen zulässt, wenn Sie eine Verbindung zu VMs über die Google Cloud Console, die gcloud CLI oder Tools von Drittanbietern herstellen. Wenn Sie eine Verbindung zu VMs herstellen, ohne die Google Cloud Console oder die gcloud CLI zu verwenden, müssen Sie einige Konfigurationen selbst vornehmen.

Console

  1. Sie können über die SSH-Schaltfläche in der Google Cloud Console eine Verbindung zu Ihrer VM herstellen.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar mit der folgenden Konfiguration:
    • Ihr Nutzername ist als Nutzername für Ihr Google-Konto festgelegt. Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com ist, lautet Ihr Nutzername cloudysanfrancisco.
    • Ihre öffentlichen und privaten SSH-Schlüssel werden in Ihrer Browsersitzung gespeichert.
    • Dein SSH-Schlüssel hat eine Ablaufzeit von drei Minuten. Drei Minuten, nachdem der Schlüssel in Compute Engine erstellt wurde, können Sie den SSH-Schlüssel nicht mehr verwenden, um eine Verbindung zur VM herzustellen.
  3. Die Compute Engine authentifiziert Ihren SSH-Schlüssel und gewährt die Verbindung.
  4. Compute Engine lädt den öffentlichen SSH-Schlüssel und den Nutzernamen in Metadaten hoch.
  5. Compute Engine ruft den SSH-Schlüssel und den Nutzernamen aus den Metadaten ab, erstellt ein Nutzerkonto mit dem Nutzernamen und speichert auf Linux VMs den öffentlichen Schlüssel in der Datei ~/.ssh/authorized_keys des Nutzers auf der VM. Auf Windows-VMs speichert Compute Engine den öffentlichen Schlüssel nicht auf der VM.
  6. Compute Engine lässt die Verbindung zu.

gcloud

  1. Zum Herstellen einer Verbindung zu Ihrer VM verwenden Sie den Befehl gcloud compute ssh.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein persistentes SSH-Schlüsselpaar mit den folgenden Konfigurationen:
    • Ihr Nutzername wird als Nutzername auf Ihrem lokalen Computer festgelegt.
    • Der öffentliche SSH-Schlüssel wird in den Projektmetadaten gespeichert. Wenn Compute Engine den SSH-Schlüssel nicht in Projektmetadaten speichern kann, z. B. weil block-project-ssh-keys auf TRUE gesetzt ist, speichert Compute Engine den SSH-Schlüssel in den Instanzmetadaten.
    • Der private SSH-Schlüssel wird auf dem lokalen Computer gespeichert.
    • Ihr SSH-Schlüssel hat kein Ablaufdatum. Er wird für alle zukünftigen SSH-Verbindungen verwendet, die Sie herstellen, es sei denn, Sie konfigurieren einen neuen Schlüssel.
  3. Die Compute Engine authentifiziert Ihren SSH-Schlüssel und gewährt die Verbindung.
  4. Compute Engine lädt den öffentlichen SSH-Schlüssel und den Nutzernamen in Metadaten hoch.
  5. Compute Engine ruft den SSH-Schlüssel und den Nutzernamen aus den Metadaten ab, erstellt ein Nutzerkonto mit dem Nutzernamen und speichert auf Linux VMs den öffentlichen Schlüssel in der Datei ~/.ssh/authorized_keys des Nutzers auf der VM. Auf Windows-VMs speichert Compute Engine den öffentlichen Schlüssel nicht auf der VM.
  6. Compute Engine lässt die Verbindung zu.

Drittanbieter-Tools

  1. Sie erstellen ein SSH-Schlüsselpaar und einen Nutzernamen. Weitere Informationen finden Sie unter SSH-Schlüssel erstellen.
  2. Der öffentliche Schlüssel und der Nutzername werden in die Metadaten hochgeladen. Weitere Informationen finden Sie unter SSH-Schlüssel zu VMs hinzufügen, die metadatenbasierte SSH-Schlüssel verwenden.
  3. Sie stellen eine Verbindung zur VM her.
  4. Compute Engine ruft den SSH-Schlüssel und den Nutzernamen aus den Metadaten ab, erstellt ein Nutzerkonto mit dem Nutzernamen und speichert auf Linux VMs den öffentlichen Schlüssel in der Datei ~/.ssh/authorized_keys des Nutzers auf der VM. Auf Windows-VMs speichert Compute Engine den öffentlichen Schlüssel nicht auf der VM.
  5. Compute Engine lässt die Verbindung zu.

Von OS Login verwaltete SSH-Verbindungen

Wenn Sie OS Login-Metadaten festlegen, löscht Compute Engine die authorized_keys-Dateien der VM und akzeptiert keine Verbindungen mehr von SSH-Schlüsseln, die in Projekt- oder Instanzmetadaten gespeichert sind. OS Login unterstützt Verbindungen über SSH-Schlüssel, die mit Ihrem Google-Konto verknüpft sind, und SSH-Zertifikate (Vorabversion), die von der OS Login-Zertifizierungsstelle signiert sind. Optional können Sie festlegen, dass OS Login nur Verbindungen mit SSH-Zertifikaten zulässt, wie unter SSH-Zertifikate mit OS Login voraussetzen beschrieben.

SSH-Schlüsselverbindungen

Klicken Sie auf die einzelnen Tabs, um mehr über die Konfigurationen zu erfahren, die Compute Engine durchführt, bevor es SSH-Verbindungen zulässt, wenn Sie eine Verbindung zu VMs über SSH-Schlüssel herstellen. Compute Engine führt verschiedene Konfigurationen durch, je nachdem, ob Sie die Google Cloud Console, die gcloud CLI oder Tools von Drittanbietern zum Herstellen einer Verbindung zu VMs verwenden. Wenn Sie eine Verbindung über Drittanbietertools herstellen, müssen Sie einige Konfigurationen selbst vornehmen.

Console

  1. Sie können über die SSH-Schaltfläche in der Google Cloud Console eine Verbindung zu Ihrer VM herstellen.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar mit der folgenden Konfiguration:
    • Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar mit der folgenden Konfiguration: Wenn für Ihre Organisation kein Nutzername konfiguriert wurde oder Ihr Projekt nicht zu einer Organisation gehört, verwendet Compute Engine die E-Mail-Adresse Ihres Google-Kontos im folgenden Format:

      USERNAME_DOMAIN_SUFFIX
      Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.

    • Der öffentliche SSH-Schlüssel wird in deiner Browsersitzung und in deinem Google-Konto gespeichert.
    • Der private SSH-Schlüssel wird in Ihrer Browsersitzung gespeichert.
    • Dein SSH-Schlüssel hat eine Ablaufzeit von drei Minuten. Drei Minuten, nachdem der Schlüssel in Compute Engine erstellt wurde, können Sie den SSH-Schlüssel nicht mehr verwenden, um eine Verbindung zur VM herzustellen.
  3. Die Compute Engine authentifiziert Ihren SSH-Schlüssel und gewährt die Verbindung.

gcloud

  1. Zum Herstellen einer Verbindung zu Ihrer VM verwenden Sie den Befehl gcloud compute ssh.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein persistentes SSH-Schlüsselpaar mit den folgenden Konfigurationen:
    • Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar mit der folgenden Konfiguration: Wenn Ihre Organisation keinen Nutzernamen für Sie konfiguriert hat, verwendet Compute Engine die E-Mail-Adresse Ihres Google-Kontos im folgenden Format:

      USERNAME_DOMAIN_SUFFIX
      Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.

    • Der öffentliche SSH-Schlüssel wird in Ihrem Google-Konto gespeichert.
    • Ihr privater SSH-Schlüssel wird auf Ihrem lokalen Computer in der Datei google_compute_engine gespeichert.
    • Ihr SSH-Schlüssel hat kein Ablaufdatum. Er wird für alle zukünftigen SSH-Verbindungen verwendet, die Sie herstellen, es sei denn, Sie konfigurieren einen neuen Schlüssel.
  3. Die Compute Engine authentifiziert Ihren SSH-Schlüssel und gewährt die Verbindung.

Drittanbieter-Tools

  1. Sie erstellen ein SSH-Schlüsselpaar. Weitere Informationen finden Sie unter SSH-Schlüssel erstellen.
  2. Der öffentliche SSH-Schlüssel wird in Ihr OS Login-Profil hochgeladen. Weitere Informationen finden Sie unter Schlüssel zu VMs hinzufügen, die OS Login verwenden.
    • Compute Engine speichert Ihren Schlüssel in Ihrem Google-Konto.
    • Compute Engine konfiguriert Ihren Nutzernamen im Standardformat:
          USERNAME_DOMAIN_SUFFIX
      Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.
  3. Sie können optional einen Nutzernamen mit der Google Workspace Admin Directory API festlegen.
  4. Sie stellen eine Verbindung zur VM her.
  5. Die Compute Engine authentifiziert Ihren SSH-Schlüssel und gewährt die Verbindung.

SSH-Zertifikatsverbindungen

Klicken Sie auf die einzelnen Tabs, um mehr über die Konfigurationen zu erfahren, die Compute Engine durchführt, bevor es SSH-Verbindungen zulässt, wenn Sie eine Verbindung zu VMs über SSH-Zertifikate herstellen. Compute Engine führt verschiedene Konfigurationen durch, je nachdem, ob Sie die Google Cloud Console, die gcloud CLI oder Tools von Drittanbietern verwenden, um eine Verbindung zu VMs herzustellen. Wenn Sie eine Verbindung über Drittanbietertools herstellen, müssen Sie einige Konfigurationen selbst vornehmen.

Console

  1. Sie können über die SSH-Schaltfläche in derGoogle Cloud Console eine Verbindung zu Ihrer VM herstellen.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar. Ihr Nutzername ist der vom Cloud Identity- oder Google Workspace-Administrator Ihrer Organisation festgelegte Nutzername. Wenn für Ihre Organisation kein Nutzername konfiguriert wurde oder Ihr Projekt nicht zu einer Organisation gehört, verwendet Compute Engine die E-Mail-Adresse Ihres Google-Kontos im folgenden Format:

    USERNAME_DOMAIN_SUFFIX
    Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.

  3. Die Compute Engine sendet Ihren öffentlichen Schlüssel an die OS Login-Zertifizierungsstelle und führt eine IAM-Autorisierung durch, um sicherzustellen, dass Sie die Berechtigungen zum Herstellen einer Verbindung zur VM haben.
  4. Die Zertifizierungsstelle von OS Login stellt ein kurzlebiges signiertes SSH-Zertifikat bereit.
  5. Die Compute Engine authentifiziert Ihr kurzlebiges Zertifikat und gewährt die Verbindung.

gcloud

  1. Sie verwenden den Befehl gcloud beta compute ssh, um eine Verbindung zu Ihrer VM herzustellen.
  2. Compute Engine legt einen Nutzernamen fest und erstellt ein sitzungsspezifisches SSH-Schlüsselpaar. Ihr Nutzername ist der vom Cloud Identity- oder Google Workspace-Administrator Ihrer Organisation festgelegte Nutzername. Wenn für Ihre Organisation kein Nutzername konfiguriert wurde oder Ihr Projekt nicht zu einer Organisation gehört, verwendet Compute Engine die E-Mail-Adresse Ihres Google-Kontos im folgenden Format:

    USERNAME_DOMAIN_SUFFIX
    Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.

  3. Die Compute Engine sendet Ihren öffentlichen Schlüssel an die OS Login-Zertifizierungsstelle und führt eine IAM-Autorisierung durch, um sicherzustellen, dass Sie die Berechtigungen zum Herstellen einer Verbindung zur VM haben.
  4. Die Zertifizierungsstelle von OS Login stellt ein kurzlebiges signiertes SSH-Zertifikat bereit.
  5. Die Compute Engine authentifiziert Ihr kurzlebiges Zertifikat und gewährt die Verbindung.

Drittanbieter-Tools

  1. Sie erstellen ein SSH-Schlüsselpaar. Weitere Informationen finden Sie unter SSH-Schlüssel erstellen.
  2. Wenn Sie noch keine Verbindung zu einer VM mit OS Login hergestellt haben, müssen Sie ein POSIX-Konto bereitstellen.
  3. Compute Engine konfiguriert Ihren Nutzernamen im Standardformat:
    USERNAME_DOMAIN_SUFFIX
    Wenn die mit Ihrem Google-Konto verknüpfte E-Mail-Adresse beispielsweise cloudysanfrancisco@gmail.com lautet, ist Ihr generierter Nutzername cloudysanfrancisco_gmail_com.
  4. Ihr Administrator kann optional einen Nutzernamen mit der Google Workspace Admin SDK Directory API festlegen. Wenn Ihre Organisation die Workforce Identity-Föderation verwendet, müssen Sie sich an Ihren Administrator wenden, um Ihren Nutzernamen zu ändern.
  5. Sie senden Ihren öffentlichen Schlüssel an die Zertifizierungsstelle von OS Login.
  6. Die Zertifizierungsstelle von OS Login stellt ein kurzlebiges signiertes SSH-Zertifikat bereit.
  7. Sie verwenden das Zertifikat, um eine Verbindung zur VM herzustellen.
  8. Die Compute Engine authentifiziert Ihr kurzlebiges Zertifikat und gewährt die Verbindung.

Nächste Schritte