Informazioni sulle connessioni SSH

Compute Engine usa l'autenticazione SSH basata su chiave per stabilire le connessioni a tutte le istanze di macchine virtuali (VM) Linux. Facoltativamente, puoi abilitare SSH per VM Windows. Per impostazione predefinita, le password non sono configurate per gli utenti locali su Linux delle VM in esecuzione.

Prima di poterti connettere a una VM, è necessario eseguire diverse configurazioni. Se usa la console Google Cloud o Google Cloud CLI per connetterti alle tue VM Compute Engine esegue queste configurazioni per tuo conto. Compute Engine esegue configurazioni diverse a seconda dello strumento per la connessione e se gestire l'accesso alle VM tramite metadata o OS Login. OS Login è disponibile solo per VM Linux.

Connessioni SSH gestite da metadati

Per impostazione predefinita, Compute Engine usa metadati personalizzati di progetto e/o istanza per configurare le chiavi SSH e gestire l'accesso SSH. Tutte le VM Windows utilizzano i metadati per gestire le chiavi SSH, mentre le VM Linux possono usare chiavi di metadati o OS Login. Se utilizzi OS Login, le chiavi SSH dei metadati sono disabilitate.

Fai clic su ciascuna scheda per saperne di più sulle configurazioni eseguite da Compute Engine prima che concede le connessioni SSH quando utilizzi la console Google Cloud, gcloud CLI o strumenti di terze parti per la connessione alle VM. Se ti connetti a VM senza utilizzare la console Google Cloud o gcloud CLI, devi eseguire personalmente alcune configurazioni.

Console

  1. Utilizzi il pulsante SSH nella Console Google Cloud per connetterti alla VM.
  2. Compute Engine imposta un nome utente e crea una coppia di chiavi SSH temporanea con con la seguente configurazione:
    • Il tuo nome utente viene impostato come nome utente nel tuo Account Google. Ad esempio, se l'email associato al tuo Account Google è cloudysanfrancisco@gmail.com, allora il tuo nome utente è cloudysanfrancisco.
    • Le chiavi SSH pubbliche e private vengono memorizzate nella sessione del browser.
    • La chiave SSH scade cinque minuti. Cinque minuti dopo che Compute Engine ha creato non puoi più utilizzare la chiave SSH per connetterti alla VM.
  3. Compute Engine carica la chiave SSH pubblica e il nome utente nei metadati.
  4. Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un utente con il nome utente e, sulle VM Linux, archivia la chiave il file ~/.ssh/authorized_keys dell'utente sulla VM. Sulle VM Windows, Compute Engine e non archivia la chiave pubblica sulla VM.
  5. Compute Engine concede la tua connessione.

gcloud

  1. Usa il comando gcloud compute ssh per connetterti alla VM.
  2. Compute Engine imposta un nome utente e crea una coppia di chiavi SSH permanente con il le seguenti configurazioni:
    • Il tuo nome utente viene impostato come nome utente nel computer locale.
    • La chiave SSH pubblica è archiviata nei metadati di progetto. Se Compute Engine non può archiviare il token SSH nei metadati di progetto, ad esempio perché block-project-ssh-keys è impostato su TRUE, Compute Engine archivia la chiave SSH nei metadati dell'istanza.
    • La chiave SSH privata è archiviata sulla macchina locale.
    • La chiave SSH non ha scadenza. Viene utilizzato per tutte le connessioni SSH future che effettuerai, a meno che non ne configuri una nuova.
  3. Compute Engine carica la chiave SSH pubblica e il nome utente nei metadati.
  4. Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un utente con il nome utente e, sulle VM Linux, archivia la chiave il file ~/.ssh/authorized_keys dell'utente sulla VM. Sulle VM Windows, Compute Engine e non archivia la chiave pubblica sulla VM.
  5. Compute Engine concede la tua connessione.

Strumenti di terze parti

  1. Crei una coppia di chiavi SSH e un nome utente. Consulta Crea chiavi SSH per maggiori dettagli.
  2. Devi caricare la chiave pubblica e il nome utente nei metadati. Vedi Aggiungi chiavi SSH alle VM che utilizzano chiavi SSH basate su metadati per maggiori dettagli.
  3. Ti connetti alla VM.
  4. Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un utente con il nome utente e, sulle VM Linux, archivia la chiave il file ~/.ssh/authorized_keys dell'utente sulla VM. Sulle VM Windows, Compute Engine e non archivia la chiave pubblica sulla VM.
  5. Compute Engine concede la tua connessione.

Connessioni SSH gestite da OS Login

Quando imposti i metadati di OS Login, Compute Engine elimina i metadati authorized_keys e non accetta più connessioni da chiavi SSH che sono archiviati nei metadati di progetto o istanza.

Fai clic su ciascuna scheda per saperne di più sulle configurazioni di Compute Engine esegue prima di concedere connessioni SSH quando utilizzi la console Google Cloud gcloud CLI o strumenti di terze parti e la connessione alle VM. Se ti connetti alle VM senza utilizzare la console Google Cloud o gcloud CLI, devi eseguire personalmente alcune configurazioni.

Console

  1. Utilizzi il pulsante SSH nella Console Google Cloud per connetterti alla VM.
  2. Compute Engine imposta un nome utente e crea una coppia di chiavi SSH temporanea con con la seguente configurazione:
    • Il tuo nome utente è quello impostato da Cloud Identity della tua organizzazione oppure Amministratore di Google Workspace. Se la tua organizzazione non ha configurato un nome utente per te oppure il tuo progetto non appartiene a un'organizzazione, Compute Engine usa il tuo Account Google nel seguente formato:

      USERNAME_DOMAIN_SUFFIX
      Ad esempio, se l'indirizzo email associato al tuo Account Google è cloudysanfrancisco@gmail.com, il nome utente generato sarà cloudysanfrancisco_gmail_com.

    • La chiave SSH pubblica viene memorizzata nella sessione del browser e nel tuo Account Google.
    • La chiave SSH privata è archiviata nella sessione del browser.
    • La chiave SSH scade tre minuti. Tre minuti dopo la creazione di Compute Engine non puoi più utilizzare la chiave SSH per connetterti alla VM.
  3. Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM. utilizzando i moduli di servizio NSS.
  4. Compute Engine esegue l'autorizzazione IAM utilizzando le configurazioni PAM, per garantire di disporre delle autorizzazioni necessarie per la connessione.
  5. Compute Engine recupera la chiave SSH dall'account utente e la fornisce a OpenSSH nel utilizzando Comando chiavi autorizzate SSH.
  6. Compute Engine concede la tua connessione.

gcloud

  1. Usa il comando gcloud compute ssh per connetterti alla VM.
  2. Compute Engine imposta un nome utente e crea una coppia di chiavi SSH permanente con il le seguenti configurazioni:
    • Il tuo nome utente è quello impostato da Cloud Identity della tua organizzazione oppure Amministratore di Google Workspace. Se la tua organizzazione non ha configurato nome utente, Compute Engine utilizza l'indirizzo email del tuo Account Google nel seguente formato:

      USERNAME_DOMAIN_SUFFIX
      Ad esempio, se l'indirizzo email associato al tuo Account Google è cloudysanfrancisco@gmail.com, il nome utente generato sarà cloudysanfrancisco_gmail_com.

    • La tua chiave SSH pubblica è archiviata nel tuo Account Google.
    • La chiave SSH privata è archiviata sulla macchina locale google_compute_engine.
    • La chiave SSH non ha scadenza. Viene utilizzato per tutte le connessioni SSH future che effettuerai, a meno che non ne configuri una nuova.
  3. Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM. utilizzando i moduli di servizio NSS.
  4. Compute Engine esegue l'autorizzazione IAM utilizzando le configurazioni PAM, per garantire di disporre delle autorizzazioni necessarie per la connessione.
  5. Compute Engine recupera la chiave SSH dall'account utente e la fornisce a OpenSSH nel utilizzando Comando chiavi autorizzate SSH.
  6. Compute Engine concede la tua connessione.

Strumenti di terze parti

  1. Crei una coppia di chiavi SSH. Consulta Crea chiavi SSH per maggiori dettagli.
  2. Carica la chiave SSH pubblica nel tuo profilo di OS Login. Consulta Aggiungi chiavi alle VM che utilizzano OS Login per maggiori dettagli.
    • Compute Engine archivia la chiave nel tuo Account Google.
    • Compute Engine configura il tuo nome utente nel formato predefinito:
          USERNAME_DOMAIN_SUFFIX
      Ad esempio, se l'indirizzo email associato al tuo Account Google è cloudysanfrancisco@gmail.com, poi il nome utente generato è cloudysanfrancisco_gmail_com.
  3. Facoltativamente, puoi impostare un nome utente con API Google Workspace Admin SDK Directory.
  4. Ti connetti alla VM.
  5. Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM. utilizzando i moduli di servizio NSS.
  6. Compute Engine esegue l'autorizzazione IAM utilizzando le configurazioni PAM, per garantire di disporre delle autorizzazioni necessarie per la connessione.
  7. Compute Engine recupera la chiave SSH dall'account utente e la fornisce a OpenSSH nel utilizzando Comando chiavi autorizzate SSH.
  8. Compute Engine concede la tua connessione.

Passaggi successivi