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 alla modalità di utilizzo degli esempi in questa pagina:
Console
Quando utilizzi la Google Cloud console per accedere a Google Cloud servizi e 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 le credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non devi 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 nelle seguenti VM:- VM Windows Server e SQL Server.
- VM Fedora CoreOS. Per gestire l'accesso delle istanze alle VM create utilizzando queste immagini, utilizza il sistema di ignizione Fedora CoreOS.
- VM SLES-16. Per gestire l'accesso delle istanze alle VM create utilizzando queste immagini, utilizza lo 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/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 in 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 Google Cloud console 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 Google Cloud console, attiva Cloud Shell.
Nella parte inferiore della Google Cloud console, 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à inclusa e 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
gcloud compute instance createcomando: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.
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 sui propri account. Per informazioni sui metodi di autenticazione a due fattori supportati, consulta Informazioni su OS Login.
Prima di attivare l'autenticazione a due fattori, assicurati che OS Login sia attivato come descritto in Attiva OS Login. Per attivare l'autenticazione a due fattori 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 di OS Login venga applicata, i metadati sia per OS Login (enable-oslogin)
sia per l'autenticazione a due fattori 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.