Configura OS Login

Questo documento descrive come configurare OS Login e OS Login con l'autenticazione a due fattori (2FA).

OS Login consente di controllare l'accesso alle istanze di macchine virtuali (VM) in base alle autorizzazioni IAM. Puoi utilizzare OS Login con o senza 2FA, ma non puoi utilizzare 2FA senza utilizzare OS Login. Per ulteriori informazioni su OS Login e OS Login 2FA, inclusi i tipi di verifica supportati da OS Login, consulta Informazioni su OS Login.

Prima di iniziare

  • Se vuoi utilizzare OS Login 2FA, attiva 2FA sul tuo dominio o account:
  • Se non l'hai già fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità dell'utente per ottenere l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione in Compute Engine come segue.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Set a default region and zone.
    3. Terraform

      Per utilizzare gli esempi Terraform in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.

      1. Installa Google Cloud CLI.
      2. Per initialize gcloud CLI, esegui questo comando:

        gcloud init
      3. Crea credenziali di autenticazione locali per il tuo Account Google:

        gcloud auth application-default login

      Per maggiori informazioni, consulta Set up authentication for a local development environment.

Limitazioni

OS Login non è supportato sulle seguenti VM:

Assegna ruoli IAM OS Login

Assegna tutti i ruoli IAM richiesti agli utenti che si connettono alle VM in cui è abilitato OS Login.

Ruolo Utenti obbligatori Livello di concessione
roles/compute.osLogin o roles/compute.osAdminLogin Tutti gli utenti

Nel progetto o nell'istanza.

Se un utente richiede l'accesso SSH dalla console Google Cloud o da Google Cloud CLI, devi concedere questi ruoli a livello di progetto o concedere inoltre un ruolo a livello di progetto contenente l'autorizzazione compute.projects.get.

roles/iam.serviceAccountUser Tutti gli utenti, se la VM ha un account di servizio In Account di servizio.
roles/compute.osLoginExternalUser Utenti di un'organizzazione diversa dalla VM a cui si connettono

Nella pagina Organizzazione.

Questo ruolo deve essere concesso da un amministratore dell'organizzazione.

Attiva OS Login

Puoi abilitare OS Login o OS Login con l'autenticazione a due fattori per una singola VM o per tutte le VM di un progetto impostando i metadati di OS Login.

Quando imposti i metadati di OS Login, Compute Engine elimina i file authorized_keys della VM e non accetta più connessioni da chiavi SSH archiviate nei metadati di progetto o istanza.

Abilita OS Login per tutte le VM in un progetto

Per abilitare OS Login per tutte le VM in un progetto, imposta i seguenti valori nei metadati del progetto:

  1. Abilita OS Login:
    • Chiave: enable-oslogin
    • Valore: TRUE
  2. (Facoltativo) Attiva l'autenticazione a due fattori:
    • Chiave: enable-oslogin-2fa
    • Valore: TRUE

Abilita OS Login per una singola VM

Per abilitare OS Login per una singola VM, imposta i seguenti valori nei metadati dell'istanza:

  1. Abilita OS Login:
    • Chiave: enable-oslogin
    • Valore: TRUE
  2. (Facoltativo) Attiva l'autenticazione a due fattori:
    • Chiave: enable-oslogin-2fa
    • Valore: TRUE

Abilita OS Login durante la creazione della VM

Abilita OS Login (facoltativamente, con la verifica in due passaggi) durante la creazione di una VM utilizzando la console Google Cloud o gcloud CLI.

Console

Crea una VM che abilita OS Login e (facoltativamente) OS Login 2FA all'avvio creando una VM da un'immagine pubblica e specificando le seguenti configurazioni:

  1. Espandi la sezione Opzioni avanzate.
  2. Espandi la sezione Sicurezza.
  3. Espandi la sezione Gestisci accesso.
  4. Seleziona Controlla l'accesso alle VM tramite le autorizzazioni IAM.
  5. (Facoltativo) Se vuoi abilitare OS Login 2FA, seleziona Richiedi la verifica in due passaggi.
  6. Fai clic su Crea per creare e avviare la VM.

gcloud

  1. Nella console Google Cloud, attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.

  2. Crea una VM che abilita OS Login e (facoltativamente) OS Login 2FA all'avvio eseguendo uno dei seguenti comandi gcloud compute instance create:

    • Per abilitare solo OS Login, esegui questo comando:

      gcloud compute instances create VM_NAME \
       --image-family=IMAGE_FAMILY \
       --image-project=IMAGE_PROJECT \
       --metadata enable-oslogin=TRUE
      
    • Per abilitare OS Login 2FA, esegui il comando seguente:

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

    Sostituisci quanto segue:

    • VM_NAME: il nome della nuova VM.
    • IMAGE_FAMILY: la famiglia di immagini di un sistema operativo Linux. In questo modo viene creata la VM dall'immagine del sistema operativo non deprecata più recente. Per tutte le famiglie di immagini pubbliche, consulta i dettagli del sistema operativo.
    • IMAGE_PROJECT: il progetto immagine che contiene la famiglia di immagini. Ogni sistema operativo ha il proprio progetto di immagine. Per tutti i progetti di immagini pubbliche, consulta Dettagli del sistema operativo.

Terraform

Puoi applicare i valori dei metadati ai progetti o alle VM utilizzando una delle seguenti opzioni:

  • Opzione 1: imposta enable-oslogin nei metadati a livello di progetto in modo che venga applicato a tutte le VM nel progetto.

    Utilizza la risorsa Terraform google_compute_project_metadata e imposta un valore dei metadati dove oslogin=TRUE:

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

    In alternativa, puoi impostare enable-oslogin su FALSE per disabilitare OS Login.

  • Opzione 2: imposta enable-oslogin nei metadati di una VM nuova o esistente.

    Utilizza la risorsa Terraform google_compute_instance e imposta oslogin=TRUE. Sostituisci oslogin_instance_name con il nome della 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 {
        }
      }
    }

    In alternativa, puoi impostare enable-oslogin su FALSE per escludere la tua VM dall'utilizzo di OS Login.

Connettiti alle VM in cui è abilitato OS Login

Connettiti alle VM in cui è abilitato OS Login utilizzando i metodi descritti in Connettersi alle VM Linux.

Quando ti connetti alle VM in cui è abilitato OS Login, Compute Engine utilizza il nome utente che l'amministratore della tua organizzazione ha configurato per te. Se l'amministratore della tua organizzazione non ha configurato un nome utente per te, Compute Engine genera un nome utente nel formato USERNAME_DOMAIN_SUFFIX. Per ulteriori informazioni sui nomi utente, vedi Come funziona OS Login.

Quando ti connetti alle VM in cui è abilitata OS Login 2FA, viene visualizzato anche un messaggio basato sul metodo di verifica in due passaggi o sul tipo di verifica selezionato. Per continuare, accetta le richieste sullo smartphone o sul tablet. Per altri metodi, inserisci il codice di sicurezza o la password monouso.

Risolvere i problemi di OS Login

Per trovare i metodi per diagnosticare e risolvere gli errori di OS Login, consulta la pagina Risoluzione dei problemi di OS Login.

Passaggi successivi