Questo documento descrive come configurare OS Login.
OS Login ti consente di controllare l'accesso alle istanze di macchine virtuali (VM) in base alle autorizzazioni IAM. Per scoprire di più su OS Login, consulta Informazioni su OS Login.
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione verifica la tua identità per l'accesso ad API e servizi Google Cloud . Per eseguire
codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su
Compute Engine selezionando una delle seguenti opzioni:
Seleziona la scheda relativa a come intendi utilizzare i campioni in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi Google Cloud e alle API, non devi configurare l'autenticazione.
gcloud
-
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:
gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
- Imposta una regione e una zona predefinite.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Se utilizzi una shell locale, crea credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non è necessario eseguire questa operazione se utilizzi Cloud Shell.
Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.
Terraform
Per utilizzare gli esempi di Terraform in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Limitazioni
OS Login non è supportato con quanto segue:- Profili OS Login con una dimensione totale superiore a 32 KiB. Il profilo OS Login include i dati dell'account POSIX e le chiavi SSH pubbliche.
- Istanza di computing che utilizza le seguenti immagini del sistema operativo:
- Windows Server e SQL Server.
- Fedora CoreOS. Per gestire l'accesso delle istanze alle istanze di computing create utilizzando queste immagini, utilizza il sistema di ignizione Fedora CoreOS.
- SLES 16. Per gestire l'accesso delle istanze alle istanze di Compute create utilizzando queste immagini, utilizza SSH basato su metadati.
Per verificare il supporto di OS Login per distribuzioni Linux specifiche, consulta Dettagli del sistema operativo.
Assegna i ruoli IAM per 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
oppure roles/compute.osAdminLogin |
Tutti gli utenti |
Se un utente richiede l'accesso SSH dalla console Google Cloud o da Google Cloud CLI,
devi concedere questi ruoli a livello di progetto oppure concedere un altro ruolo a livello di progetto contenente
l'autorizzazione |
roles/iap.tunnelResourceAccessor |
Tutti gli utenti che richiedono l'accesso SSH utilizzando l'inoltro TCP di IAP | |
roles/iam.serviceAccountUser |
Tutti gli utenti, se la VM ha un service account | In Service account. |
roles/compute.osLoginExternalUser |
Utenti di un'organizzazione diversa da quella della VM a cui si connettono | In Organizzazione. Questo ruolo deve essere concesso da un amministratore dell'organizzazione. |
Attiva OS Login
Puoi attivare OS Login per una singola VM o per tutte le VM di un progetto impostando
enable-oslogin su TRUE nei metadati del progetto o dell'istanza.
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 del progetto o dell'istanza.
Attiva OS Login per tutte le VM di un progetto
Per attivare OS Login per tutte le VM di un progetto, imposta il seguente valore nei metadati del progetto:
- Chiave:
enable-oslogin - Valore:
TRUE
Attiva OS Login per una singola VM
Per attivare OS Login per una singola VM, imposta il seguente valore nei metadati dell'istanza:
- Chiave:
enable-oslogin - Valore:
TRUE
Attiva OS Login durante la creazione della VM
Attiva OS Login durante la creazione di una VM utilizzando la console Google Cloud o gcloud CLI.
Console
Crea una VM che attivi OS Login all'avvio creando una VM da un'immagine pubblica e specificando le seguenti configurazioni:
- Espandi la sezione Opzioni avanzate.
- Espandi la sezione Sicurezza.
- Espandi la sezione Gestisci accesso.
- Seleziona Controllo dell'accesso alle VM tramite autorizzazioni IAM.
- Fai clic su Crea per creare e avviare la VM.
gcloud
-
Nella console Google Cloud , attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.
Crea una VM che attivi OS Login all'avvio eseguendo il seguente comando
gcloud compute instance create:gcloud compute instances create VM_NAME \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --metadata enable-oslogin=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, la VM viene creata dall'immagine sistema operativo più recente e non deprecata. Per tutte le famiglie di immagini pubbliche, consulta Dettagli del sistema operativo.IMAGE_PROJECT: il progetto di immagini che contiene la famiglia di immagini. Ogni sistema operativo ha il proprio progetto di immagini. Per tutti i progetti di immagini pubbliche, consulta Dettagli del sistema operativo.
Terraform
Puoi applicare i valori dei metadati ai tuoi progetti o alle tue VM utilizzando una delle seguenti opzioni:
Opzione 1: imposta
enable-osloginnei metadati a livello di progetto, in modo che sia applicato a tutte le VM del progetto.Utilizza la risorsa Terraform
google_compute_project_metadatae imposta un valore dei metadati in cuioslogin=TRUE:In alternativa, puoi impostare
enable-osloginsuFALSEper disattivare OS Login.Opzione 2: imposta
enable-osloginnei metadati di una VM nuova o esistente.Utilizza la risorsa Terraform
google_compute_instancee impostaoslogin=TRUE. Sostituiscioslogin_instance_namecon il nome della tua VM.In alternativa, puoi impostare
enable-osloginsuFALSEper escludere la VM dall'utilizzo di OS Login.
Disattiva OS Login
Puoi disattivare OS Login impostando enable-oslogin su FALSE nei
metadati del progetto o dell'istanza.
Quando OS Login è disattivato, puoi connetterti alle VM utilizzando le chiavi SSH archiviate nei metadati.
Disattiva OS Login per tutte le VM di un progetto
Per disattivare OS Login per tutte le VM di un progetto, imposta il seguente valore nei metadati del progetto:
- Chiave:
enable-oslogin - Valore:
FALSE
Disattiva OS Login per una singola VM
Per disattivare OS Login per una singola VM, imposta il seguente valore nei metadati dell'istanza:
- Chiave:
enable-oslogin - Valore:
FALSE
L'impostazione di enable-oslogin su FALSE nei metadati dell'istanza disattiva OS Login per la VM anche se enable-oslogin è impostato su TRUE nei metadati del progetto.
Connettiti alle VM in cui è abilitato OS Login
Connettiti alle VM in cui è attivato OS Login utilizzando i metodi descritti in Connettiti alle VM Linux.
Quando ti connetti alle VM in cui è attivato OS Login, Compute Engine utilizza il
nome utente configurato per te dall'amministratore dell'organizzazione.
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, consulta Come funziona OS Login.
Attiva OS Login con l'autenticazione a due fattori
Per una maggiore sicurezza, puoi richiedere agli utenti di utilizzare l'autenticazione a due fattori (2FA) quando si connettono alle VM in cui è abilitato OS Login. Se prevedi di utilizzare OS Login con l'autenticazione a due fattori, gli utenti devono configurare la verifica in due passaggi nei propri account. Per informazioni sui metodi di autenticazione a due fattori (2FA) supportati, consulta Informazioni su OS Login.
Prima di attivare l'autenticazione a due fattori (2FA), assicurati che OS Login sia attivato come descritto in Attivare OS Login. Per attivare l'autenticazione a due fattori (2FA) di OS Login, imposta il seguente valore dei metadati nei metadati dell'istanza o del progetto:
- Chiave:
enable-oslogin-2fa - Valore:
TRUE
Affinché l'autenticazione a due fattori (2FA) di OS Login venga applicata, i metadati sia di OS Login (enable-oslogin) sia dell'autenticazione a due fattori (2FA) di OS Login (enable-oslogin-2fa) devono essere impostati su TRUE.
Quando ti connetti alle VM in cui è attivata l'autenticazione a due fattori (2FA) di OS Login, viene visualizzato anche un messaggio basato sul metodo di verifica in due passaggi o sul tipo di verifica selezionato. Per il metodo di richiesta sullo smartphone, accetta le richieste sullo smartphone o sul tablet per continuare. Per gli altri metodi, inserisci il codice di sicurezza o la password monouso.
Risolvi i problemi relativi a OS Login
Per trovare metodi per diagnosticare e risolvere gli errori di OS Login, consulta Risoluzione dei problemi relativi a OS Login.
Passaggi successivi
- Scopri come funzionano le connessioni SSH alle VM Linux su Compute Engine.
- Scopri come utilizzare i certificati SSH (anteprima) per connetterti alle VM.
- Scopri come utilizzare SSH con i token di sicurezza (anteprima) per limitare ulteriormente l'accesso alle VM.