Verbindung zu Linux-VMs mit Identity-Aware Proxy herstellen


In diesem Dokument wird beschrieben, wie Sie mithilfe der TCP-Weiterleitung von Identity-Aware Proxy (IAP) eine Verbindung zu einer VM-Instanz über ihre interne IP-Adresse herstellen.

Mit der IAP-TCP-Weiterleitung können Sie einen verschlüsselten Tunnel einrichten, über den Sie SSH-Verbindungen an VMs weiterleiten können. Wenn Sie eine Verbindung zu einer VM herstellen, die IAP verwendet, verpackt IAP die SSH-Verbindung in HTTPS, bevor die Verbindung an die VM weitergeleitet wird. IAP prüft dann, ob Sie die erforderlichen IAM-Berechtigungen haben. Ist dies der Fall, wird der VM Zugriff gewährt.

Wenn Sie eine Verbindung zu einer VM herstellen müssen, die keine externen IP-Adressen hat und Sie IAP nicht verwenden können, lesen Sie die anderen Methoden unter Verbindungsoptionen für interne VMs.

Hinweis

  • Erstellen Sie eine Firewallregel, um Verbindungen über IAP zu aktivieren.
  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Google Cloud Console auf Google Cloud-Dienste und -APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

    1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

      gcloud init
    2. Legen Sie eine Standardregion und -zone fest.

Unterstützte Betriebssysteme

Diese Verbindungsmethoden werden für alle öffentlichen Linux-Images unterstützt, die in Compute Engine verfügbar sind. Für Fedora CoreOS-Images müssen Sie den SSH-Zugriff einrichten, bevor Sie diese Methoden verwenden können.

Verbindung zu VMs herstellen

Führen Sie die Schritte auf einem der folgenden Tabs aus, um eine Verbindung zu einer VM herzustellen.

Console

So leiten Sie SSH-Verbindungen über die interne IP-Adresse einer VM mithilfe von SSH im Browser weiter:

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu Seite „VM-Instanzen“

  2. Klicken Sie in der Liste der VM-Instanzen in der Zeile der Instanz, zu der Sie eine Verbindung herstellen möchten, auf SSH.

gcloud

Erstellen Sie mit dem Befehl gcloud compute ssh und dem Flag --tunnel-through-iap Tunnel-SSH-Verbindungen über die interne IP-Adresse einer VM:

    Aktivieren Sie Cloud Shell in der Google Cloud Console.

    Cloud Shell aktivieren

    Unten in der Google Cloud Console wird eine Cloud Shell-Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung, in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.

  1. Stellen Sie mit folgendem Befehl eine Verbindung zur VM her:

    gcloud compute ssh VM-NAME \
        --tunnel-through-iap
  2. Ersetzen Sie VM_NAME durch den Namen der VM, zu der Sie eine Verbindung herstellen möchten.

IAP Desktop

So stellen Sie eine Verbindung zu einer VM über IAP Desktop her:

  1. Installieren Sie IAP Desktop auf Ihrer Workstation, falls noch nicht geschehen.

  2. Rufen Sie IAP Desktop auf. Das Fenster Projekte hinzufügen wird geöffnet.

  3. Wenn Sie dazu aufgefordert werden, melden Sie sich mit dem Google-Konto an, das Zugriff auf das Projekt mit den VMs hat, zu denen Sie eine Verbindung herstellen möchten.

  4. Geben Sie im Fenster Projekte hinzufügen die Projekt-ID oder den Namen des Projekts ein, das die VMs enthält, zu denen Sie eine Verbindung herstellen möchten.

  5. Klicken Sie im Fenster Project Explorer mit der rechten Maustaste noch einmal auf den Namen der VM und wählen Sie Verbinden aus, um eine Verbindung zur VM herzustellen.

PuTTY-Anwendung

So leiten Sie SSH-Verbindungen über PuTTY über die interne IP-Adresse einer VM weiter:

  1. Fügen Sie der VM einen SSH-Schlüssel hinzu, falls noch nicht geschehen.
  2. Wenn auf der Workstation die PuTTY-Anwendung noch nicht installiert ist, laden Sie die PuTTY-Paketdateien herunter.
  3. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf und suchen Sie den Namen der VM, zu der Sie eine Verbindung herstellen möchten.

    Zu Seite „VM-Instanzen“

  4. Öffnen Sie die PuTTY-Anwendung. Es wird ein Fenster zur Verbindungskonfiguration geöffnet.
  5. Geben Sie im Feld Host Name den dem SSH-Schlüssel zugeordneten Nutzernamen und den Namen der VM ein, zu der Sie eine Verbindung herstellen möchten. Verwenden Sie das folgende Format:

    USERNAME@VM_NAME

    Ersetzen Sie Folgendes:

  6. Gehen Sie unter Kategorie zu Verbindung > SSH-Verbindung > Authentifizierung.
  7. Wählen Sie im Feld Private Schlüsseldatei zur Authentifizierung die private SSH-Schlüsseldatei aus, die dem öffentlichen Schlüssel entspricht, den Sie der VM hinzugefügt haben.
  8. Gehen Sie im Menü Kategorie zu Verbindung > Proxy.
  9. Wählen Sie unter Proxytyp die Option Lokal aus.
  10. Geben Sie im Feld Telnet-Befehl oder lokaler Proxybefehl den folgenden Befehl ein:

    gcloud.cmd compute start-iap-tunnel VM_NAME PORT_NUMBER --listen-on-stdin --project=PROJECT_ID --zone=ZONE

    Dabei gilt:

    • VM_NAME ist der Name der VM, zu der Sie eine Verbindung herstellen möchten.
    • PORT_NUMBER ist der Port, auf dem der sshd-Daemon ausgeführt wird. Der Standardwert PORT_NUMBER ist 22.
    • PROJECT_ID ist das Projekt, das die VM hostet, zu der Sie eine Verbindung herstellen möchten.
    • ZONE ist die Zone, in der sich die VM befindet.
  11. Klicken Sie auf Öffnen, um eine Verbindung zur VM herzustellen.

Fehlerbehebung

Methoden zur Diagnose und Behebung von fehlerhaften SSH-Verbindungen finden Sie unter Fehlerbehebung für SSH.

Nächste Schritte