Questo documento descrive come utilizzare le chiavi di sicurezza fisiche registrate nel tuo Account Google per connetterti alle istanze di macchine virtuali (VM) che utilizzano lOS Login.
Le chiavi di sicurezza fisiche vengono utilizzate per generare file di chiavi SSH private per la connessione alle VM. Quando utilizzi lo strumento SSH nel browser della console Google Cloud o Google Cloud CLI per connetterti alle VM utilizzando i token di sicurezza, OS Login recupera il file della chiave SSH privata associato al token di sicurezza e lo configura per te. Quando utilizzi strumenti di terze parti per collegarti, devi utilizzare l'API OS Login per recuperare le informazioni sulla chiave SSH e configurare autonomamente il file della chiave SSH.
Prima di iniziare
- Aggiungi un token di sicurezza al tuo Account Google.
- Configura OS Login.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Le VM con i token di sicurezza abilitati accettano solo connessioni da chiavi SSH collegate ai token di sicurezza fisici registrati nel tuo Account Google.
- Non puoi utilizzare Cloud Shell per connetterti alle VM con i token di sicurezza attivati.
Sia la VM a cui ti connetti sia la workstation da cui ti connetti devono utilizzare una versione di OpenSSH 8.2 o successive che supporti i tipi di chiavi di sicurezza SSH. I seguenti sistemi operativi delle VM Compute Engine supportano le chiavi di sicurezza:
- Debian 11 (o versioni successive)
- SUSE Linux Enterprise Server (SLES) 15 (o versioni successive)
- Ubuntu 20.04 LTS (o versioni successive)
- Container-Optimized OS 93 LTS (o versioni successive)
- Rocky Linux 9 (o versioni successive)
Per verificare se il tuo ambiente supporta le chiavi di sicurezza, esegui il seguente comando:
ssh -Q key | grep ^sk-
Se il comando non restituisce alcun output, il tuo ambiente non supporta le chiavi di sicurezza.
Il client SSH sulla workstation da cui ti connetti deve supportare le chiavi di sicurezza e includere le librerie richieste, ad esempio
libfido2
.Vai alla pagina Metadati.
Fai clic su Modifica.
Fai clic su Aggiungi elemento.
- Nel campo Key (Chiave), inserisci
enable-oslogin
. - Nel campo Valore, inserisci
TRUE
.
- Nel campo Key (Chiave), inserisci
Fai clic su Aggiungi elemento.
- Nel campo Key (Chiave), inserisci
enable-oslogin-sk
. - Nel campo Valore, inserisci
TRUE
.
- Nel campo Key (Chiave), inserisci
Fai clic su Salva.
Vai alla pagina Istanze VM.
Fai clic sul nome della VM per cui vuoi attivare le chiavi di sicurezza.
Fai clic su Modifica.
Nella sezione Metadati, fai clic su Aggiungi elemento.
- Nel campo Key (Chiave), inserisci
enable-oslogin
. - Nel campo Valore, inserisci
TRUE
.
- Nel campo Key (Chiave), inserisci
Fai clic su Aggiungi elemento.
- Nel campo Key (Chiave), inserisci
enable-oslogin-sk
. - Nel campo Valore, inserisci
TRUE
.
- Nel campo Key (Chiave), inserisci
Fai clic su Salva.
Nella console Google Cloud, vai alla pagina Istanze VM.
Nell'elenco delle VM, fai clic su SSH nella riga della VM a cui vuoi connetterti.
Quando richiesto, tocca il token di sicurezza.
Se non l'hai ancora fatto, installa la libreria client di Google per Python eseguendo il seguente comando:
pip3 install google-api-python-client
Salva il seguente script Python di esempio, che recupera le chiavi private associate alle tue chiavi di sicurezza, configura i file delle chiavi private e si connette alla VM.
Esegui lo script per configurare le chiavi e, facoltativamente, connettiti alla VM.
python3 SCRIPT_NAME.py --user_key=USER_KEY --ip_address=IP_ADDRESS [--dryrun]
Sostituisci quanto segue:
SCRIPT_NAME
: il nome dello script di configurazione.USER_KEY
: il tuo indirizzo email principale.IP_ADDRESS
: l'indirizzo IP esterno della VM a cui ti connetti.[--dryrun]
: (Facoltativo) aggiungi il flag--dryrun
per stampare il comando di connessione senza connetterti alla VM. Se non specifichi questo flag, lo script esegue il comando di connessione.
- Scopri come configurare OS Login con la verifica in due passaggi.
- Scopri come gestire OS Login in un'organizzazione.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per saperne di più, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Limitazioni
Attivare le chiavi di sicurezza con OS Login
Puoi attivare l'utilizzo dei token di sicurezza per tutte le VM che utilizzano OS Login nel tuo progetto o per singole VM.
Abilita i token di sicurezza per tutte le VM con OS Login abilitato in un progetto
Per attivare i token di sicurezza su tutte le VM che utilizzano OS Login nel tuo progetto, utilizza la console Google Cloud o lgcloud CLI.
Console
Per attivare le chiavi di sicurezza per tutte le VM con OS Login abilitato, utilizza la console Google Cloud per impostare
enable-oslogin
eenable-oslogin-sk
suTRUE
nei metadati del progetto:gcloud
Per attivare le chiavi di sicurezza per tutte le VM con OS Login abilitato, utilizza il comando
gcloud compute project-info add-metadata
per impostareenable-oslogin=TRUE
eenable-oslogin-sk=TRUE
nei metadati del progetto:gcloud compute project-info add-metadata \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUE
Attivare le chiavi di sicurezza su una singola VM con OS Login abilitato
Per attivare le chiavi di sicurezza su una VM che utilizza OS Login, utilizza la console Google Cloud o lgcloud CLI.
Console
Per attivare le chiavi di sicurezza su una singola VM, utilizza la console Google Cloud per impostare
enable-oslogin
eenable-oslogin-sk
suTRUE
nei metadati dell'istanza:gcloud
Per attivare i token di sicurezza su una singola VM, utilizza il comando
gcloud compute instances add-metadata
per impostareenable-oslogin=TRUE
eenable-oslogin-sk=TRUE
nei metadati dell'istanza:gcloud compute instances add-metadata VM_NAME \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUE
Sostituisci
VM_NAME
con il nome della VM.Connettiti a una VM utilizzando un token di sicurezza
Puoi connetterti a una VM che utilizza chiavi di sicurezza utilizzando la console Google Cloud, lgcloud CLI o strumenti di terze parti. Se ti connetti alle VM utilizzando la console Google Cloud o l'gcloud CLI, Compute Engine configura la chiave SSH per te. Se ti connetti alle VM utilizzando strumenti di terze parti, devi eseguire la configurazione autonomamente.
Console
Quando ti connetti alle VM utilizzando lo strumento SSH nel browser della console Google Cloud, lo strumento recupera le chiavi private associate alle tue chiavi di sicurezza.
Per connetterti a una VM con i token di sicurezza abilitati:
gcloud
Quando ti connetti alle VM utilizzando gcloud CLI, questo recupera le chiavi private associate alle tue chiavi di sicurezza e configura i file delle chiavi private. Questa configurazione è permanente e si applica a tutte le VM che utilizzano token di sicurezza.
Utilizza il comando
gcloud beta compute ssh
per connetterti a una VM con i token di sicurezza abilitati:gcloud beta compute ssh VM_NAME
Strumenti di terze parti
Prima di connetterti a una VM con i token di sicurezza abilitati, devi recuperare le chiavi private associate ai token di sicurezza e configurare i file delle chiavi private. Questo esempio utilizza la libreria client Python per eseguire la configurazione.
Devi eseguire questa configurazione solo la prima volta che ti colleghi a una VM. La configurazione è permanente e si applica a tutte le VM che utilizzano token di sicurezza nel progetto.
Da un terminale sulla tua workstation, svolgi i seguenti passaggi:
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-11-23 UTC.
-