Questo documento descrive come connettersi alle istanze di macchine virtuali (VM) Linux come utente root, che abilita i privilegi super user sulla VM. Per impostazione predefinita, VM di Compute Engine create da immagini pubbliche e la maggior parte dei sistemi operativi più comuni non consentono l'accesso root con una password su 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.
Abilita 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
. Abilita l'accesso root seguendo le istruzioni per la tua VM:
VM con accesso al sistema operativo
Abilita l'accesso root procedendo nel seguente modo:
Crea una chiave SSH. Copia il chiave SSH pubblica per un secondo momento.
Connettiti alla VM come faresti di solito.
Cambia
PermitRootLogin no
inPermitRootLogin prohibit-password
in/etc/ssh/sshd_config
, eseguendo questo 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 questo comando:sudo chmod 700 /root/.ssh
Crea il file
authorized_keys
eseguendo questo 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 di accesso non OS
Per abilitare l'accesso come utente root:
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 riavvio per il sistema operativo della tua VM. Attendi il riavvio della VM, quindi connettiti come utente root.
Connettiti come utente root
Dopo aver abilitato l'accesso root, connettiti alla VM come utente root. Se ti stai connettendo a una VM in cui è abilitato OS Login, devi utilizzare anziché con gcloud CLI.
gcloud
Nota: devi utilizzare strumenti di terze parti per connetterti come utente root se la VM ti stai collegando con OS Login abilitato.
Connettiti alle VM come utente root utilizzando
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 contenente 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 utente root. Il nome utente della 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 i file alle VM.
- Scopri come funzionano le connessioni SSH alle VM Linux su Compute Engine.