Questo documento descrive come connettersi alle istanze di macchine virtuali (VM) Linux con indirizzi IP esterni utilizzando SSH. Per connetterti alle VM che non dispongono di indirizzi IP esterni, consulta Scegli un'opzione di connessione per le VM solo interne. Per connetterti alle VM Linux utilizzando i certificati SSH, consulta Richiedi certificati SSH per le VM OS Login.
Per informazioni su come funzionano le connessioni SSH in Compute Engine, inclusa la configurazione e lo spazio di archiviazione delle chiavi SSH, consulta Connessioni SSH alle VM Linux.
Prima di iniziare
- Configura una regola firewall, ad esempio la regola
default-allow-ssh, nella rete Virtual Private Cloud (VPC) per la tua VM in modo da consentire il traffico TCP in entrata sulla porta22. - Configura l'accesso SSH alla VM utilizzando OS Login (consigliato) o le chiavi SSH basate su metadati e concedi i ruoli di Identity and Access Management (IAM) richiesti per il metodo scelto. Se ti connetti utilizzando la console Google Cloud o Google Cloud CLI, Compute Engine gestisce le chiavi SSH per te.
-
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 al modo in cui prevedi di utilizzare gli esempi in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi e alle API Google Cloud , 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.
Sistemi operativi supportati
Compute Engine supporta questi metodi di connessione per tutte le immagini Linux pubbliche. Per le immagini Fedora CoreOS, devi configurare l'accesso SSH prima di poter utilizzare questi metodi.
Connettiti alle VM
Per connetterti a una VM, completa i passaggi in una delle seguenti schede.
Console
Per connetterti a una VM utilizzando SSH nel browser dalla consoleGoogle Cloud , segui questi passaggi:
- Nella console Google Cloud , vai alla pagina Istanze VM.
-
Nell'elenco delle istanze della macchina virtuale, fai clic su SSH nella riga dell'istanza a cui vuoi connetterti.

gcloud
Connettiti a una VM tramite SSH eseguendo il
comando
gcloud compute ssh:
-
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.
Esegui questo comando:
gcloud compute ssh INSTANCE_NAME \ --project=PROJECT_ID \ --zone=ZONESostituisci quanto segue:
INSTANCE_NAME: il nome della VM.PROJECT_ID: l'ID del progetto che contiene la VM.ZONE: il nome della zona in cui si trova la VM.
Se hai impostato proprietà predefinite per Google Cloud CLI, puoi omettere i flag
--projecte--zoneda questo comando. Ad esempio:gcloud compute ssh INSTANCE_NAME
Client OpenSSH
Per connetterti a una VM tramite SSH da un client OpenSSH, segui questi passaggi:
- Se non l'hai ancora fatto, aggiungi una chiave SSH alla VM.
Nella console Google Cloud , vai alla pagina Istanze VM e individua l'indirizzo IP esterno della VM a cui vuoi connetterti.
- Apri un terminale sulla tua workstation.
Connettiti alla VM eseguendo questo comando:
ssh -i PATH_TO_PRIVATE_KEY USERNAME@EXTERNAL_IP
Sostituisci quanto segue:
PATH_TO_PRIVATE_KEY: il percorso del file della chiave SSH privata corrispondente alla chiave pubblica che hai aggiunto alla VM, ad esempio~/.ssh/my-ssh-keyo~/.ssh/google_compute_enginese la chiave è stata generata da Google Cloud CLI.USERNAME: il tuo nome utente. Se gestisci le chiavi SSH nei metadati, il nome utente è quello specificato quando hai creato la chiave SSH. Per gli account OS Login, il nome utente è definito nel tuo profilo Google, ad esempiocloudysanfrancisco_example_comocloudysanfrancisco.-
EXTERNAL_IP: l'indirizzo IP esterno della VM.
App PuTTY
Per connetterti a una VM tramite SSH dall'app PuTTY per Windows, segui questi passaggi:
- Se non l'hai ancora fatto, aggiungi una chiave SSH alla VM.
- Se l'app PuTTY non è già installata sulla tua workstation, scarica i file del pacchetto PuTTY.
Nella console Google Cloud , vai alla pagina Istanze VM e individua l'indirizzo IP esterno della VM a cui vuoi connetterti.
- Apri l'app PuTTY. Si apre una finestra di configurazione della connessione.
Nel campo Nome host (o indirizzo IP), inserisci il nome utente associato alla chiave SSH e l'indirizzo IP esterno della VM a cui vuoi connetterti. Utilizza il formato seguente:
USERNAME@EXTERNAL_IP
Sostituisci quanto segue:
USERNAME: il tuo nome utente. Se gestisci le chiavi SSH nei metadati, il nome utente è quello specificato quando hai creato la chiave SSH. Per gli account OS Login, il nome utente è definito nel tuo profilo Google, ad esempiocloudysanfrancisco_example_comocloudysanfrancisco.-
EXTERNAL_IP: l'indirizzo IP esterno della VM.
- Nel menu Category (Categoria), vai a Connection (Connessione) > SSH > Auth (Autenticazione) > Credentials (Credenziali) (o Connection (Connessione) > SSH > Auth (Autenticazione) nelle versioni di PuTTY precedenti alla 0.78).
- Nel campo File chiave privata per autenticazione, fai clic su Sfoglia e seleziona il file della chiave SSH privata (
.ppk) corrispondente alla chiave pubblica che hai aggiunto alla VM. - Fai clic su Apri per connetterti alla VM.
Risoluzione dei problemi
Per trovare metodi per diagnosticare e risolvere le connessioni SSH non riuscite, consulta Risoluzione dei problemi relativi a SSH.
Passaggi successivi
Scopri come gestire l'accesso alle VM.
Scopri come trasferire file alle VM.
Scopri come funzionano le connessioni SSH alle VM Linux su Compute Engine.