Questo documento descrive come connettersi alle istanze di macchine virtuali (VM) Linux come utente root, il che abilita i privilegi di superutente sulla VM. Per impostazione predefinita, le VM Compute Engine create da immagini pubbliche e la maggior parte dei sistemi operativi comuni non consentono l'accesso come utente root con una password tramite SSH.
Un'alternativa per connettersi alle VM come utente root è eseguire i comandi tramite sudo
, che consigliamo di utilizzare anziché attivare l'accesso come utente root.
Sistemi operativi supportati
Questi metodi di connessione sono supportati per tutte le immagini Linux pubbliche disponibili su Compute Engine. Per le immagini Fedora CoreOS, devi configurare l'accesso SSH prima di poter utilizzare questi metodi.
Attiva l'accesso come utente root
Per impostazione predefinita, le VM Compute Engine impostano il parametro PermitRootLogin
su
prohibit-password
o no
nel file di configurazione SSH /etc/ssh/sshd_config
. Attiva l'accesso come utente root seguendo le istruzioni per la tua VM:
VM con accesso al sistema operativo
Attiva l'accesso come utente root nel seguente modo:
Crea una chiave SSH. Copia la chiave pubblica SSH per utilizzarla in un secondo momento.
Connettiti alla VM come faresti di solito.
Sostituisci
PermitRootLogin no
conPermitRootLogin prohibit-password
nel/etc/ssh/sshd_config
file, eseguendo il seguente comando:sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
Crea la directory
/root/.ssh
utilizzando il seguente comando:sudo mkdir /root/.ssh
Imposta le autorizzazioni per la directory
.ssh
eseguendo il seguente comando:sudo chmod 700 /root/.ssh
Crea il file
authorized_keys
eseguendo il seguente comando:sudo touch /root/.ssh/authorized_keys
Imposta le autorizzazioni sul file
authorized_keys
eseguendo il seguente comando:sudo chmod 600 /root/.ssh/authorized_keys
Incolla la chiave pubblica SSH nel file
/root/.ssh/authorized_keys
.Riavvia il daemon
sshd
riavviando la VM o eseguendo il comando di riavvio per il sistema operativo della VM. Attendi il riavvio della VM, quindi connettiti come utente root.
VM senza accesso al sistema operativo
Attiva l'accesso come utente root nel seguente modo:
Connettiti alla VM come faresti di solito.
Sostituisci
PermitRootLogin no
conPermitRootLogin prohibit-password
nel/etc/ssh/sshd_config
file, eseguendo il seguente comando:sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
Riavvia il daemon
sshd
riavviando la VM o eseguendo il comando di riavvio per il sistema operativo della VM. Attendi il riavvio della VM, quindi connettiti come utente root.
Connettiti come utente root
Dopo aver attivato l'accesso come utente root, connettiti alla VM come utente root. Se ti connetti a una VM in cui è attivato l'accesso come OS Login, devi utilizzare strumenti di terze parti invece dell'interfaccia a riga di comando gcloud.
gcloud
Nota: devi utilizzare strumenti di terze parti per connetterti come utente root se nella VM a cui ti connetti è abilitato l'accesso all'OS Login.
Connettiti alle VM come utente root utilizzando il
comando gcloud compute ssh
con
root@
specificato prima del nome della VM:
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Connettiti alla VM eseguendo il seguente comando:
gcloud compute ssh \ --project=PROJECT_ID \ --zone=ZONE \ root@VM_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che contiene la VMZONE
: il nome della zona in cui si trova la VMVM_NAME
: il nome della VM
Strumenti di terze parti
Connettiti alle VM come utente root seguendo le istruzioni per la tua VM:
VM OS Login
Esegui la connessione utilizzando strumenti di terze parti e specifica quanto segue:
- Chiave privata: la chiave privata corrispondente alla chiave pubblica
che hai aggiunto al file
authorized_keys
- Nome utente: il nome utente deve essere
root
- Chiave privata: la chiave privata corrispondente alla chiave pubblica
che hai aggiunto al file
VM senza accesso al sistema operativo
Crea una chiave SSH per l'utente root. Il nome utente per la chiave deve essere
root
.Esegui la connessione utilizzando strumenti di terze parti e specifica quanto segue:
Chiave privata: la chiave privata per l'utente root
Nome utente: il nome utente deve essere
root
Risoluzione dei problemi
Per trovare metodi per diagnosticare e risolvere le connessioni SSH non riuscite, consulta la sezione 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.