O Compute Engine usa a autenticação SSH baseada em chave para estabelecer conexões com instâncias de máquina virtual (VM) do Linux e também oferece suporte à autenticação baseada em certificado para VMs do Login do SO (prévia). Também é possível ativar o SSH para VMs do Windows. Por padrão, as senhas não são configuradas para usuários locais em VMs do Linux.
Antes de você se conectar a uma VM, várias configurações precisam ser realizadas. Se você usar o console Google Cloud ou a Google Cloud CLI para se conectar às VMs, o Compute Engine vai realizar essas configurações por você. O Compute Engine realiza configurações diferentes, de acordo com a ferramenta usada para a conexão e o uso de metadados ou do Login do SO para gerenciar o acesso às VMs. O Login do SO só está disponível para VMs do Linux.
Conexões SSH gerenciadas por metadados
Por padrão, o Compute Engine usa metadados personalizados do projeto e/ou da instância para configurar chaves SSH e gerenciar o acesso SSH. No caso do Windows, todas as VMs usam metadados para gerenciar chaves SSH. No caso do Linux, elas podem usar chaves de metadados ou o Login do SO. Se você usar o Login do SO, as chaves SSH de metadados serão desativadas.Clique em cada guia para saber mais sobre as configurações do Compute Engine antes de conceder conexões SSH ao usar o console Google Cloud , a CLI gcloud ou ferramentas de terceiros para se conectar a VMs. Se você se conectar a VMs sem usar o console Google Cloud ou a CLI gcloud, será necessário executar algumas configurações.
Console
- Use o botão SSH no Google Cloud console para conectar à VM.
- O Compute Engine define um nome de usuário e cria um par de chaves SSH temporárias com a
seguinte configuração:
- Seu nome de usuário é definido como o nome de usuário da sua Conta do Google. Por exemplo, se o endereço de
e-mail associado à sua Conta do Google for
cloudysanfrancisco@gmail.com
, o nome de usuário serácloudysanfrancisco
. - Suas chaves SSH públicas e privadas são armazenadas na sessão do navegador.
- Sua chave SSH tem uma validade de três minutos. Três minutos após o Compute Engine criar a chave, não será mais possível usá-la para se conectar à VM.
- Seu nome de usuário é definido como o nome de usuário da sua Conta do Google. Por exemplo, se o endereço de
e-mail associado à sua Conta do Google for
- O Compute Engine autentica sua chave SSH e concede sua conexão.
- O Compute Engine faz upload da chave SSH pública e do nome de usuário para os metadados.
- O Compute Engine recupera a chave SSH e o nome de usuário dos metadados, cria uma
conta de usuário com o nome de usuário e a chave pública e armazena a chave pública no arquivo
~/.ssh/authorized_keys
do usuário na VM. Nas VMs do Windows, o Compute Engine não armazena a chave pública na VM. - O Compute Engine concede sua conexão.
gcloud
- Use o comando
gcloud compute ssh
para conectar-se à VM. - O Compute Engine define um nome de usuário e cria um par de chaves SSH permanentes com as
seguintes configurações:
- O nome de usuário é definido como o nome de usuário da sua máquina local.
- Sua chave SSH pública é armazenada nos metadados do projeto. Se o Compute Engine não puder armazenar a chave
SSH nos metadados do projeto, por exemplo, porque
block-project-ssh-keys
está definido comoTRUE
, o Compute Engine armazenará a chave SSH nos metadados da instância. - A chave SSH privada é armazenada na máquina local.
- Sua chave SSH não tem um prazo de validade. Ela será usada para todas as conexões SSH futuras que você fizer, a menos que você configure uma nova chave.
- O nome de usuário é definido como o nome de usuário da sua máquina local.
- O Compute Engine autentica sua chave SSH e concede sua conexão.
- O Compute Engine faz upload da chave SSH pública e do nome de usuário para os metadados.
- O Compute Engine recupera a chave SSH e o nome de usuário dos metadados, cria uma
conta de usuário com o nome de usuário e a chave pública e armazena a chave pública no arquivo
~/.ssh/authorized_keys
do usuário na VM. Nas VMs do Windows, o Compute Engine não armazena a chave pública na VM. - O Compute Engine concede sua conexão.
Ferramentas de terceiros
- Você cria um par de chaves SSH e nome de usuário. Consulte os detalhes em Criar chaves SSH.
- Você faz o upload da chave pública e do nome de usuário para os metadados. Para saber mais detalhes, consulte Adicionar chaves SSH a VMs que usam chaves SSH baseadas em metadados.
- Você se conecta à VM.
- O Compute Engine recupera a chave SSH e o nome de usuário dos metadados, cria uma
conta de usuário com o nome de usuário e a chave pública e armazena a chave pública no arquivo
~/.ssh/authorized_keys
do usuário na VM. Nas VMs do Windows, o Compute Engine não armazena a chave pública na VM. - O Compute Engine concede sua conexão.
Conexões SSH gerenciadas pelo login do SO
Quando você define os metadados do Login do SO, o Compute Engine exclui os arquivos authorized_keys
da VM e não aceita mais conexões das chaves SSH armazenadas nos metadados do projeto ou da instância. O Login do SO aceita conexões de chaves SSH associadas à sua Conta do Google e certificados SSH (prévia) assinados pela autoridade de certificação do Login do SO. Você pode exigir o Login do SO para permitir apenas conexões usando certificados SSH, conforme descrito em Exigir certificados SSH com o Login do SO.
Conexões de chaves SSH
Clique em cada guia para saber mais sobre as configurações que o Compute Engine executa antes de conceder conexões SSH ao usar chaves SSH para se conectar a VMs. O Compute Engine executa configurações diferentes, dependendo do uso do console, da CLI gcloud ou de ferramentas de terceiros para se conectar a VMs. Google Cloud Se você se conectar usando ferramentas de terceiros, será necessário executar algumas configurações.
Console
- Use o botão SSH no Google Cloud console para conectar à VM.
- O Compute Engine define um nome de usuário e cria um par de chaves SSH temporárias com a
seguinte configuração:
- O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou
do Google Workspace da sua organização. Caso sua organização não tenha configurado um nome de usuário para você ou
o projeto não pertença a uma organização, o Compute Engine usará o e-mail da Conta do Google
no seguinte formato:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - A chave SSH pública é armazenada na sessão do navegador e na sua Conta do Google.
- Sua chave SSH privada é armazenada na sessão do navegador.
- Sua chave SSH tem uma validade de três minutos. Três minutos após o Compute Engine criar a chave, não será mais possível usá-la para se conectar à VM.
- O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou
do Google Workspace da sua organização. Caso sua organização não tenha configurado um nome de usuário para você ou
o projeto não pertença a uma organização, o Compute Engine usará o e-mail da Conta do Google
no seguinte formato:
- O Compute Engine autentica sua chave SSH e concede sua conexão.
gcloud
- Use o comando
gcloud compute ssh
para conectar-se à VM. - O Compute Engine define um nome de usuário e cria um par de chaves SSH permanentes com as
seguintes configurações:
- O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou
do Google Workspace da sua organização. Caso a organização não tenha configurado
um nome de usuário para você, o Compute Engine usará o e-mail da sua Conta do Google no seguinte formato:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - Sua chave SSH pública é armazenada na sua Conta do Google.
- Sua chave SSH privada é armazenada na máquina local no
arquivo
google_compute_engine
. - Sua chave SSH não tem um prazo de validade. Ela será usada para todas as conexões SSH futuras que você fizer, a menos que você configure uma nova chave.
- O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou
do Google Workspace da sua organização. Caso a organização não tenha configurado
um nome de usuário para você, o Compute Engine usará o e-mail da sua Conta do Google no seguinte formato:
- O Compute Engine autentica sua chave SSH e concede sua conexão.
Ferramentas de terceiros
- Você cria um par de chaves SSH. Consulte os detalhes em Criar chaves SSH.
- Você faz upload da sua chave SSH pública para seu perfil de Login do SO. Para mais detalhes, consulte Adicionar chaves a VMs que usam o Login do SO.
- O Compute Engine armazena a chave na sua Conta do Google.
- O Compute Engine configura seu nome de usuário no formato padrão:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - Se quiser, defina um nome de usuário com a API Google Workspace Admin SDK Directory.
- Você se conecta à VM.
- O Compute Engine autentica sua chave SSH e concede sua conexão.
Conexões de certificado SSH
Clique em cada guia para saber mais sobre as configurações do Compute Engine antes de conceder conexões SSH ao usar certificados SSH para se conectar a VMs. O Compute Engine realiza configurações diferentes dependendo se você usa o console Google Cloud , a CLI gcloud ou ferramentas de terceiros para se conectar a VMs. Se você se conectar usando ferramentas de terceiros, será preciso executar algumas configurações por conta própria.
Console
- Use o botão SSH no Google Cloud console para se conectar à VM.
- O Compute Engine define um nome de usuário e cria um par de chaves SSH temporárias. O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou do Google Workspace da sua organização. Caso sua
organização não tenha configurado um nome de usuário para você ou seu projeto não pertença a uma
organização, o Compute Engine usará o e-mail da sua Conta do Google no seguinte formato:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - O Compute Engine envia sua chave pública para a autoridade certificadora do Login do SO e realiza a autorização do IAM para garantir que você tenha as permissões necessárias para se conectar à VM.
- A autoridade certificadora do Login do SO fornece um certificado SSH assinado de curta duração.
- O Compute Engine autentica seu certificado de curta duração e concede sua conexão.
gcloud
- Use o
comando
gcloud beta compute ssh
para se conectar à VM. - O Compute Engine define um nome de usuário e cria um par de chaves SSH temporárias. O nome de usuário é o que foi definido pelo administrador do Cloud Identity ou do Google Workspace da sua organização. Caso sua
organização não tenha configurado um nome de usuário para você ou seu projeto não pertença a uma
organização, o Compute Engine usará o e-mail da sua Conta do Google no seguinte formato:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - O Compute Engine envia sua chave pública para a autoridade certificadora do Login do SO e realiza a autorização do IAM para garantir que você tenha as permissões necessárias para se conectar à VM.
- A autoridade certificadora do Login do SO fornece um certificado SSH assinado de curta duração.
- O Compute Engine autentica seu certificado de curta duração e concede sua conexão.
Ferramentas de terceiros
- Você cria um par de chaves SSH. Consulte os detalhes em Criar chaves SSH.
- Se você nunca se conectou a uma VM que usa o login do SO, provisione uma conta POSIX.
- O Compute Engine configura seu nome de usuário no formato padrão:
Por exemplo, se o e-mail associado à sua Conta do Google forUSERNAME_DOMAIN_SUFFIX
cloudysanfrancisco@gmail.com
, seu nome de usuário gerado serácloudysanfrancisco_gmail_com
. - Se quiser, seu administrador pode definir um nome de usuário com a API Directory do SDK Admin do Google Workspace. Se a sua organização usa a federação de identidade de colaboradores, entre em contato com o administrador para mudar seu nome de usuário.
- Você envia sua chave pública para a autoridade de certificação do Login do SO.
- A autoridade certificadora do Login do SO fornece um certificado SSH assinado de curta duração.
- Use o certificado para se conectar à VM.
- O Compute Engine autentica seu certificado de curta duração e concede sua conexão.
A seguir
- Saiba mais sobre os benefícios de usar o Login do SO.
- Configure o Login do SO para gerenciar o acesso às VMs.
- Saiba como exigir certificados SSH com o login do SO (prévia).
- Saiba como gerenciar chaves SSH em metadados, caso não queira usar o Login do SO.
- Saiba como conectar-se a VMs.
- Encontre métodos e ferramentas para diagnosticar e resolver conexões SSH com falha, consulte Solução de problemas de SSH.