Compute Engine utilizza l'autenticazione SSH basata su chiavi per stabilire connessioni a tutte le istanze di macchine virtuali (VM) Linux. Facoltativamente, puoi attivare SSH per le VM Windows. Per impostazione predefinita, sulle VM Linux le password non sono configurate per gli utenti locali.
Prima di poterti connettere a una VM, devi eseguire una serie di configurazioni. Se utilizzi la console Google Cloud o Google Cloud CLI per connetterti alle VM, Compute Engine esegue queste configurazioni per tuo conto. Compute Engine esegue configurazioni diverse in base allo strumento di connessione utilizzato e alla gestione dell'accesso alle VM, che può avvenire tramite metadati o OS Login. OS Login è disponibile solo per le VM Linux.
Connessioni SSH gestite dai metadati
Per impostazione predefinita, Compute Engine utilizza i metadati personalizzati del progetto e/o dell'istanza per configurare le chiavi SSH e gestire l'accesso SSH. Tutte le VM Windows utilizzano metadati per gestire le chiavi SSH, mentre le VM Linux possono avvalersi di chiavi nei metadati o di OS Login. Se utilizzi OS Login, le chiavi SSH nei metadati sono disattivate.Fai clic su ogni scheda per scoprire di più sulle configurazioni eseguite da Compute Engine prima di concedere l'accesso alle connessioni SSH quando utilizzi la console Google Cloud , gcloud CLI o strumenti di terze parti per connetterti alle VM. Se ti connetti alle VM senza utilizzare la console Google Cloud o gcloud CLI, devi eseguire alcune configurazioni autonomamente.
Console
- Per connetterti alla VM utilizza il pulsante SSH nella console Google Cloud .
- Compute Engine imposta un nome utente e crea una coppia di chiavi SSH temporanea
con la seguente configurazione:
- Il tuo nome utente è impostato come tale nell'Account Google. Ad esempio, se l'indirizzo email associato al tuo Account Google è
[email protected]
, il tuo nome utente ècloudysanfrancisco
. - Le chiavi SSH pubbliche e private vengono archiviate nella sessione del browser.
- La chiave SSH ha una scadenza di tre minuti. Tre minuti dopo che Compute Engine ha creato la chiave, non puoi più utilizzarla per connetterti alla VM.
- Il tuo nome utente è impostato come tale nell'Account Google. Ad esempio, se l'indirizzo email associato al tuo Account Google è
- Compute Engine carica la chiave SSH pubblica e il nome utente nei metadati.
- Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un
account utente con il nome utente e, sulle VM Linux, archivia la chiave pubblica nel
file
~/.ssh/authorized_keys
dell'utente sulla VM. Nelle VM Windows, Compute Engine non archivia la chiave pubblica sulla VM. - Compute Engine concede l'accesso alla connessione.
gcloud
- Utilizza il comando
gcloud compute ssh
per connetterti alla VM. - Compute Engine imposta un nome utente e crea una coppia di chiavi SSH permanente con le seguenti
configurazioni:
- Il tuo nome utente è impostato come nome utente nella macchina locale.
- La chiave SSH pubblica viene archiviata nei metadati del progetto. Se non riesce ad archiviare la chiave SSH
nei metadati del progetto, ad esempio perché
block-project-ssh-keys
è impostato suTRUE
, Compute Engine esegue questa operazione nei metadati dell'istanza. - La chiave SSH privata è archiviata sulla tua macchina locale.
- La tua chiave SSH non ha una scadenza. Viene utilizzata per tutte le connessioni SSH future che effettui, a meno che non configuri una nuova chiave.
- Il tuo nome utente è impostato come nome utente nella macchina locale.
- Compute Engine carica la chiave SSH pubblica e il nome utente nei metadati.
- Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un
account utente con il nome utente e, sulle VM Linux, archivia la chiave pubblica nel
file
~/.ssh/authorized_keys
dell'utente sulla VM. Nelle VM Windows, Compute Engine non archivia la chiave pubblica sulla VM. - Compute Engine concede l'accesso alla connessione.
Strumenti di terze parti
- Crea una coppia di chiavi SSH e un nome utente. Per maggiori dettagli, vedi Crea chiavi SSH.
- Carica la chiave pubblica e il nome utente nei metadati. Per maggiori dettagli, vedi Aggiungi chiavi SSH alle VM che utilizzano chiavi SSH basate su metadati.
- Connettiti alla VM.
- Compute Engine recupera la chiave SSH e il nome utente dai metadati, crea un
account utente con il nome utente e, sulle VM Linux, archivia la chiave pubblica nel
file
~/.ssh/authorized_keys
dell'utente sulla VM. Nelle VM Windows, Compute Engine non archivia la chiave pubblica sulla VM. - Compute Engine concede l'accesso alla connessione.
Connessioni SSH gestite da OS Login
Quando imposti i metadati di OS Login, Compute Engine elimina i fileauthorized_keys
della VM
e non accetta più connessioni da chiavi SSH
archiviate nei metadati del progetto o dell'istanza.
Fai clic su ogni scheda per scoprire di più sulle configurazioni eseguite da Compute Engine prima di concedere l'accesso alle connessioni SSH quando utilizzi la console Google Cloud , gcloud CLI o strumenti di terze parti per connetterti alle VM. Se ti connetti alle VM senza utilizzare la console Google Cloud o gcloud CLI, devi eseguire alcune configurazioni autonomamente.
Console
- Per connetterti alla VM utilizza il pulsante SSH nella console Google Cloud .
- Compute Engine imposta un nome utente e crea una coppia di chiavi SSH temporanea
con la seguente configurazione:
- Il tuo nome utente è quello impostato dall'amministratore di Cloud Identity o Google Workspace
della tua organizzazione. Se la tua organizzazione non ha configurato un nome utente per te
o se il tuo progetto non appartiene a un'organizzazione, Compute Engine utilizza l'indirizzo email del tuo Account Google
nel seguente formato:
Ad esempio, se l'indirizzo email associato al tuo Account Google èUSERNAME_DOMAIN_SUFFIX
[email protected]
, il nome utente generato ècloudysanfrancisco_gmail_com
. - La chiave SSH pubblica viene archiviata nella sessione del browser e nel tuo Account Google.
- La chiave SSH privata viene archiviata nella sessione del browser.
- La chiave SSH ha una scadenza di tre minuti. Tre minuti dopo che Compute Engine ha creato chiave, non puoi più utilizzarla per connetterti alla VM.
- Il tuo nome utente è quello impostato dall'amministratore di Cloud Identity o Google Workspace
della tua organizzazione. Se la tua organizzazione non ha configurato un nome utente per te
o se il tuo progetto non appartiene a un'organizzazione, Compute Engine utilizza l'indirizzo email del tuo Account Google
nel seguente formato:
- Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM utilizzando i moduli di servizio NSS.
- Compute Engine esegue l'autorizzazione IAM utilizzando
AuthorizedKeysCommand
per assicurarsi che tu disponga delle autorizzazioni necessarie per la connessione. AuthorizedKeysCommand
recupera la chiave SSH dal tuo account utente per fornirla a OpenSSH nella VM.- Compute Engine concede l'accesso alla connessione.
gcloud
- Utilizza il comando
gcloud compute ssh
per connetterti alla VM. - Compute Engine imposta un nome utente e crea una coppia di chiavi SSH permanente con le seguenti
configurazioni:
- Il tuo nome utente è quello impostato dall'amministratore di Cloud Identity o Google Workspace
della tua organizzazione. Se la tua organizzazione non ha configurato un
nome utente per te, Compute Engine utilizza l'indirizzo email del tuo Account Google nel seguente formato:
Ad esempio, se l'indirizzo email associato al tuo Account Google èUSERNAME_DOMAIN_SUFFIX
[email protected]
, il nome utente generato ècloudysanfrancisco_gmail_com
. - La chiave SSH pubblica viene archiviata nel tuo Account Google.
- La chiave SSH privata viene archiviata nella macchina locale nel
file
google_compute_engine
. - La tua chiave SSH non ha una scadenza. Viene utilizzata per tutte le connessioni SSH future che effettui, a meno che non configuri una nuova chiave.
- Il tuo nome utente è quello impostato dall'amministratore di Cloud Identity o Google Workspace
della tua organizzazione. Se la tua organizzazione non ha configurato un
nome utente per te, Compute Engine utilizza l'indirizzo email del tuo Account Google nel seguente formato:
- Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM utilizzando i moduli di servizio NSS.
- Compute Engine esegue l'autorizzazione IAM utilizzando
AuthorizedKeysCommand
per assicurarsi che tu disponga delle autorizzazioni necessarie per la connessione. AuthorizedKeysCommand
recupera la chiave SSH dal tuo account utente per fornirla a OpenSSH nella VM.- Compute Engine concede l'accesso alla connessione.
Strumenti di terze parti
- Crea una coppia di chiavi SSH. Per maggiori dettagli, vedi Crea chiavi SSH.
- Carica la chiave SSH pubblica nel tuo profilo OS Login. Per maggiori dettagli, vedi Aggiungi chiavi alle VM che utilizzano OS Login.
- Compute Engine archivia la chiave nel tuo Account Google.
- Compute Engine configura il tuo nome utente nel formato predefinito:
Ad esempio, se l'indirizzo email associato al tuo Account Google èUSERNAME_DOMAIN_SUFFIX
[email protected]
, il nome utente generato ècloudysanfrancisco_gmail_com
. - Se vuoi, puoi impostare un nome utente con l' API Directory dell'SDK Admin di Google Workspace.
- Connettiti alla VM.
- Compute Engine risolve il nome utente fornito nel tuo account OS Login nella VM utilizzando i moduli di servizio NSS.
- Compute Engine esegue l'autorizzazione IAM utilizzando
AuthorizedKeysCommand
per assicurarsi che tu disponga delle autorizzazioni necessarie per la connessione. AuthorizedKeysCommand
recupera la chiave SSH dal tuo account utente per fornirla a OpenSSH nella VM.- Compute Engine concede l'accesso alla connessione.
Passaggi successivi
- Scopri di più sui vantaggi dell'utilizzo di OS Login.
- Configura OS Login per gestire l'accesso alle VM.
- Scopri come gestire le chiavi SSH nei metadati se non vuoi utilizzare OS Login.
- Scopri come connetterti alle VM.
- Per trovare metodi e strumenti per diagnosticare e risolvere le connessioni SSH non riuscite, vedi Risoluzione dei problemi relativi a SSH.