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
-
Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:
gcloud initWenn 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.
-
Installieren Sie die Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
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.
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.
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 |
roles/iap.tunnelResourceAccessor |
Alle Nutzer, die SSH-Zugriff über die IAP-TCP-Weiterleitung benötigen | |
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 |
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:
- Maximieren Sie den Bereich Erweiterte Optionen.
- Maximieren Sie den Abschnitt Sicherheit.
- Maximieren Sie den Abschnitt Zugriff verwalten.
- Wählen Sie VM-Zugriff über IAM-Berechtigungen steuern aus.
- Klicken Sie auf Erstellen, um die VM zu erstellen und zu starten.
gcloud
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
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.
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_NAMEist der Name der neuen VM.IMAGE_FAMILYist 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_PROJECTist 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-osloginfest, damit der Eintrag für alle VMs im Projekt gilt.Verwenden Sie die Terraform-Ressource
google_compute_project_metadataund legen Sie einen Metadatenwert mitoslogin=TRUEfest:Alternativ können Sie
enable-osloginaufFALSEfestlegen, um OS Login zu deaktivieren.Option 2: Legen Sie in den Metadaten einer neuen oder vorhandenen VM
enable-osloginfest.Verwenden Sie die Terraform-Ressource
google_compute_instanceund legen Sieoslogin=TRUEfest. Ersetzen Sieoslogin_instance_namedurch den Namen Ihrer VM.Alternativ können Sie
enable-osloginaufFALSEsetzen, 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
- Mehr darüber erfahren, wie SSH-Verbindungen zu Linux-VMs in Compute Engine funktionieren.
- Informationen zum Herstellen einer Verbindung zu VMs mit SSH-Zertifikaten (Vorabversion)
- SSH mit Sicherheitsschlüsseln verwenden (Vorabversion), um den Zugriff auf VMs weiter einzuschränken