OS Login einrichten

In diesem Dokument wird beschrieben, wie Sie OS Login einrichten.

Mit OS Login können Sie den Zugriff auf Instanzen virtueller Maschinen (VMs) anhand von IAM-Berechtigungen steuern. Weitere Informationen zu OS Login finden Sie unter OS Login.

Hinweis

  • 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 aus, der Ihrer geplanten Verwendung der Beispiele auf dieser Seite entspricht:

    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. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:

      gcloud init

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  • Legen Sie eine Standardregion und -zone fest.
  • Terraform

    Wenn Sie die Terraform-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten Sie dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

    1. Installieren Sie die Google Cloud CLI.

    2. Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    3. Wenn Sie eine lokale Shell verwenden, erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Nutzerkonto:

      gcloud auth application-default login

      Wenn Sie Cloud Shell verwenden, müssen Sie das nicht tun.

      Wenn ein Authentifizierungsfehler zurückgegeben wird und Sie einen externen Identitätsanbieter (IdP) verwenden, prüfen Sie, ob Sie sich mit Ihrer föderierten Identität in der gcloud CLI angemeldet haben.

    Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

Beschränkungen

OS Login wird in den folgenden Fällen nicht unterstützt:
  • OS Login-Profile mit einer Gesamtgröße von mehr als 32 KiB. Das OS Login-Profil enthält POSIX-Kontoinformationen und öffentliche SSH-Schlüssel.
  • Compute-Instanzen, die die folgenden Betriebssystem-Images verwenden:
    • Windows Server und SQL Server.
    • Fedora CoreOS. Verwenden Sie zum Verwalten des Instanzzugriffs auf Compute-Instanzen, die mit diesen Images erstellt wurden, das Ignition-System von Fedora CoreOS.
    • SLES 16 Wenn Sie den Instanzzugriff auf Compute-Instanzen verwalten möchten, die mit diesen Images erstellt wurden, verwenden Sie metadatenbasiertes SSH.

Informationen zur Unterstützung von OS Login für bestimmte Linux-Distributionen finden Sie unter Details zu Betriebssystemen.

OS Login-IAM-Rollen zuweisen

Weisen Sie alle Nutzer, die eine Verbindung zu VMs mit aktiviertem OS Login herstellen, alle erforderlichen IAM-Rollen zu.

Rolle Erforderliche Nutzer Berechtigungsstufe
roles/compute.osLogin oder roles/compute.osAdminLogin Alle Nutzer

Auf dem Projekt oder der Instanz.

Wenn ein Nutzer SSH-Zugriff über die Google Cloud Console oder die Google Cloud CLI benötigt, müssen Sie diese Rollen auf Projektebene oder zusätzlich eine Rolle auf Projektebene zuweisen, die die Berechtigung compute.projects.get enthält.

roles/iap.tunnelResourceAccessor Alle Nutzer, die SSH-Zugriff über die IAP-TCP-Weiterleitung benötigen

Auf dem Projekt oder der Instanz.

roles/iam.serviceAccountUser Alle Nutzer, wenn die VM über ein Dienstkonto verfügt Im Dienstkonto
roles/compute.osLoginExternalUser Nutzer aus einer anderen Organisation als der VM, zu der sie eine Verbindung herstellen

Für die Organisation

Diese Rolle muss von einem Organisationsadministrator zugewiesen werden.

OS Login aktivieren

Sie können OS Login für eine einzelne VM oder für alle VMs in einem Projekt aktivieren, indem Sie enable-oslogin in den Projekt- oder Instanzmetadaten auf TRUE festlegen.

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 für alle VMs in einem Projekt aktivieren

Wenn Sie OS Login für alle VMs in einem Projekt aktivieren möchten, legen Sie den folgenden Wert in den Projektmetadaten fest:

  • Schlüssel: enable-oslogin
  • Wert: TRUE

OS Login für eine einzelne VM aktivieren

Wenn Sie OS Login für eine einzelne VM aktivieren möchten, legen Sie den folgenden Wert in den Instanzmetadaten fest:

  • Schlüssel: enable-oslogin
  • Wert: TRUE

OS Login während der VM-Erstellung aktivieren

Aktivieren Sie OS Login beim Erstellen einer VM mit der Google Cloud Console oder der gcloud CLI.

Console

Erstellen Sie eine VM, die OS Login beim Start aktiviert. Erstellen Sie dazu eine VM aus einem öffentlichen Image und geben Sie die folgenden Konfigurationen an:

  1. Maximieren Sie den Bereich Erweiterte Optionen.
  2. Maximieren Sie den Abschnitt Sicherheit.
  3. Maximieren Sie den Abschnitt Zugriff verwalten.
  4. Wählen Sie VM-Zugriff über IAM-Berechtigungen steuern aus.
  5. Klicken Sie auf Erstellen, um die VM zu erstellen und zu starten.

gcloud

  1. 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.

  2. Erstellen Sie eine VM, die OS Login beim Start aktiviert. Führen Sie dazu den folgenden gcloud compute instance create-Befehl aus:

    gcloud compute instances create VM_NAME \
       --image-family=IMAGE_FAMILY \
       --image-project=IMAGE_PROJECT \
       --metadata enable-oslogin=TRUE
    

    Ersetzen Sie Folgendes:

    • VM_NAME ist der Name der neuen VM.
    • IMAGE_FAMILY ist die Image-Familie eines Linux-Betriebssystems. Dadurch wird die VM aus dem neuesten nicht verworfenen Betriebssystem-Image erstellt. Informationen zu allen öffentlichen Image-Familien finden Sie unter Details zu Betriebssystemen.
    • IMAGE_PROJECT ist das Image-Projekt, das das Image enthält Jedes Betriebssystem hat ein eigenes Image-Projekt. Informationen zu allen öffentlichen Image-Projekten finden Sie unter Details zu Betriebssystemen.

Terraform

Sie können die Metadatenwerte auf Ihre Projekte oder VMs anwenden. Verwenden Sie dazu eine der folgenden Optionen:

  • Option 1: Legen Sie in den projektweiten Metadaten enable-oslogin fest, damit der Eintrag für alle VMs im Projekt gilt.

    Verwenden Sie die Terraform-Ressource google_compute_project_metadata und legen Sie einen Metadatenwert mit oslogin=TRUE fest:

    resource "google_compute_project_metadata" "default" {
      metadata = {
        enable-oslogin = "TRUE"
      }
    }

    Alternativ können Sie enable-oslogin auf FALSE festlegen, um OS Login zu deaktivieren.

  • Option 2: Legen Sie in den Metadaten einer neuen oder vorhandenen VM enable-oslogin fest.

    Verwenden Sie die Terraform-Ressource google_compute_instance und legen Sie oslogin=TRUE fest. Ersetzen Sie oslogin_instance_name durch den Namen Ihrer VM.

    resource "google_compute_instance" "oslogin_instance" {
      name         = "oslogin-instance-name"
      machine_type = "f1-micro"
      zone         = "us-central1-c"
      metadata = {
        enable-oslogin : "TRUE"
      }
      boot_disk {
        initialize_params {
          image = "debian-cloud/debian-11"
        }
      }
      network_interface {
        # A default network is created for all GCP projects
        network = "default"
        access_config {
        }
      }
    }

    Alternativ können Sie enable-oslogin auf FALSE setzen, damit OS Login für Ihre VM nicht verwendet wird.

OS Login deaktivieren

Sie können OS Login deaktivieren, indem Sie enable-oslogin in den Projekt- oder Instanzmetadaten auf FALSE setzen.

Wenn OS Login deaktiviert ist, können Sie mit in Metadaten gespeicherten SSH-Schlüsseln eine Verbindung zu Ihren VMs herstellen.

OS Login für alle VMs in einem Projekt deaktivieren

Wenn Sie OS Login für alle VMs in einem Projekt deaktivieren möchten, legen Sie den folgenden Wert in den Projektmetadaten fest:

  • Schlüssel: enable-oslogin
  • Wert: FALSE

OS Login für eine einzelne VM deaktivieren

Wenn Sie OS Login für eine einzelne VM deaktivieren möchten, legen Sie den folgenden Wert in den Instanzmetadaten fest:

  • Schlüssel: enable-oslogin
  • Wert: FALSE

Wenn Sie enable-oslogin in den Instanzmetadaten auf FALSE festlegen, wird OS Login für die VM deaktiviert, auch wenn enable-oslogin in den Projektmetadaten auf TRUE festgelegt ist.

Verbindung zu VMs herstellen, für die OS Login aktiviert ist

Stellen Sie eine Verbindung zu VMs her, für die OS Login aktiviert ist, indem Sie die unter Verbindung zu Linux-VMs herstellen beschriebenen Methoden verwenden.

Wenn Sie eine Verbindung zu VMs herstellen, für die OS Login aktiviert ist, verwendet Compute Engine den Nutzernamen, den Ihr Organisationsadministrator für Sie konfiguriert hat. Wenn Ihr Organisationsadministrator keinen Nutzernamen für Sie konfiguriert hat, generiert Compute Engine einen Nutzernamen im Format USERNAME_DOMAIN_SUFFIX. Weitere Informationen zu Nutzernamen finden Sie unter So funktioniert OS Login.

OS Login mit 2FA aktivieren

Für zusätzliche Sicherheit können Sie festlegen, dass Nutzer die Bestätigung in zwei Schritten (2FA) verwenden müssen, wenn sie eine Verbindung zu VMs herstellen, für die OS Login aktiviert ist. Wenn Sie OS Login mit 2-Faktor-Authentifizierung verwenden möchten, müssen Nutzer die Bestätigung in zwei Schritten für ihre Konten konfigurieren. Informationen zu unterstützten 2FA-Methoden finden Sie unter OS Login.

Bevor Sie die 2FA aktivieren, müssen Sie OS Login wie unter OS Login aktivieren beschrieben aktivieren. Wenn Sie die OS Login-2FA aktivieren möchten, legen Sie den folgenden Metadatenwert in den Instanz- oder Projektmetadaten fest:

  • Schlüssel: enable-oslogin-2fa
  • Wert: TRUE

Damit OS Login-2FA erzwungen wird, müssen die Metadaten für OS Login (enable-oslogin) und OS Login-2FA (enable-oslogin-2fa) auf TRUE festgelegt sein.

Wenn Sie eine Verbindung zu VMs herstellen, für die OS Login-2FA aktiviert ist, wird anhand der ausgewählten Bestätigungsmethode in zwei Schritten oder der Art der Identitätsbestätigung eine Meldung angezeigt. Bei Smartphone-Aufforderungen müssen Sie Ihren Anmeldeversuch auf Ihrem Smartphone oder Tablet bestätigen, um fortzufahren. Bei den anderen Methoden geben Sie Ihren Sicherheitscode oder Ihr Einmalpasswort ein.

Fehlerbehebung bei OS Login

Methoden zur Diagnose und Behebung von OS Login-Fehlern finden Sie unter Fehlerbehebung bei OS Login.

Nächste Schritte