Este documento descreve como usar as chaves de segurança físicas registadas na sua Conta Google para se ligar a instâncias de máquinas virtuais (VM) que usam o Início de sessão no SO.
As chaves de segurança físicas são usadas para gerar ficheiros de chaves SSH privadas para estabelecer ligação a VMs. Quando usa a ferramenta Google Cloud SSH na consola no navegador ou a CLI Google Cloud para estabelecer ligação a VMs através de chaves de segurança, o Início de sessão do SO obtém o ficheiro de chave SSH privada associado à sua chave de segurança e configura o ficheiro de chave SSH por si. Quando usa ferramentas de terceiros para se ligar, tem de usar a API OS Login para obter as informações da chave SSH e configurar o ficheiro de chave SSH.
Antes de começar
- Adicione uma chave de segurança à sua Conta Google.
- Configure o Início de sessão do SO.
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Limitações
- As VMs que têm chaves de segurança ativadas só aceitam ligações de chaves SSH anexadas às chaves de segurança físicas registadas na sua Conta Google.
- Não pode usar o Cloud Shell para estabelecer ligação a VMs com chaves de segurança ativadas.
Tanto a VM à qual está a estabelecer ligação como a estação de trabalho a partir da qual está a estabelecer ligação têm de usar uma versão do OpenSSH 8.2 ou posterior que suporte tipos de SSH de chave de segurança. Os seguintes sistemas operativos de VMs do Compute Engine suportam chaves de segurança:
- Debian 11 (ou posterior)
- SUSE Linux Enterprise Server (SLES) 15 (ou posterior)
- Ubuntu 20.04 LTS (ou posterior)
- SO otimizado para contentores 93 LTS (ou posterior)
- Rocky Linux 9 (ou posterior)
Para verificar se o seu ambiente suporta chaves de segurança, execute o seguinte comando:
ssh -Q key | grep ^sk-
Se o comando não devolver qualquer resultado, o seu ambiente não suporta chaves de segurança.
O cliente SSH na estação de trabalho a partir da qual está a estabelecer ligação tem de suportar chaves de segurança e incluir as bibliotecas necessárias, como
libfido2
.
Ative as chaves de segurança com o Início de sessão do SO
Pode ativar a utilização de chaves de segurança para todas as VMs que utilizam o Início de sessão no SO no seu projeto ou para VMs individuais.
Ative as chaves de segurança para todas as VMs com o Início de sessão do SO ativado num projeto
Para ativar as chaves de segurança em todas as VMs que usam o Início de sessão do SO no seu projeto, use a consolaGoogle Cloud ou a CLI gcloud.
Consola
Para ativar as chaves de segurança para todas as VMs com início de sessão no SO ativado, use a consola para definir
enable-oslogin
eenable-oslogin-sk
comoTRUE
nos metadados do projeto:Google CloudAceda à página Metadados.
Clique em Edit.
Clique em Adicionar item.
- No campo Chave, introduza
enable-oslogin
. - No campo Valor, introduza
TRUE
.
- No campo Chave, introduza
Clique em Adicionar item.
- No campo Chave, introduza
enable-oslogin-sk
. - No campo Valor, introduza
TRUE
.
- No campo Chave, introduza
Clique em Guardar.
gcloud
Para ativar as chaves de segurança para todas as VMs com o Início de sessão do SO ativado, use o comando
gcloud compute project-info add-metadata
para definirenable-oslogin=TRUE
eenable-oslogin-sk=TRUE
nos metadados do projeto:gcloud compute project-info add-metadata \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUE
Ative as chaves de segurança numa única VM com o Início de sessão do SO ativado
Para ativar as chaves de segurança numa VM que usa o Início de sessão do SO, use a Google Cloud consola ou a CLI gcloud.
Consola
Para ativar as chaves de segurança numa única VM, use a Google Cloud consola para definir
enable-oslogin
eenable-oslogin-sk
comoTRUE
nos metadados da instância:Aceda à página Instâncias de VM.
Clique no nome da VM para a qual quer ativar as chaves de segurança.
Clique em Edit.
Na secção Metadados, clique em Adicionar item.
- No campo Chave, introduza
enable-oslogin
. - No campo Valor, introduza
TRUE
.
- No campo Chave, introduza
Clique em Adicionar item.
- No campo Chave, introduza
enable-oslogin-sk
. - No campo Valor, introduza
TRUE
.
- No campo Chave, introduza
Clique em Guardar.
gcloud
Para ativar as chaves de segurança numa única VM, use o comando
gcloud compute instances add-metadata
para definirenable-oslogin=TRUE
eenable-oslogin-sk=TRUE
nos metadados da instância:gcloud compute instances add-metadata VM_NAME \ --metadata enable-oslogin=TRUE,enable-oslogin-sk=TRUE
Substitua
VM_NAME
pelo nome da sua VM.Ligue-se a uma VM através de uma chave de segurança
Pode ligar-se a uma VM que usa chaves de segurança através da Google Cloud consola, da CLI gcloud ou de ferramentas de terceiros. Se estabelecer ligação a VMs através da consola ou da CLI gcloud, o Compute Engine configura a sua chave SSH automaticamente. Google Cloud Se estabelecer ligação a VMs através de ferramentas de terceiros, tem de fazer a configuração.
Consola
Quando estabelece ligação a VMs através da ferramenta Google Cloud consolaSSH no navegador, o SSH no navegador obtém as chaves privadas associadas às suas chaves de segurança.
Para estabelecer ligação a uma VM com chaves de segurança ativadas, faça o seguinte:
Na Google Cloud consola, aceda à página Instâncias de VM.
Na lista de VMs, clique em SSH na linha da VM à qual quer estabelecer ligação.
Quando lhe for pedido, toque na chave de segurança.
gcloud
Quando se liga a VMs através da CLI gcloud, a CLI gcloud obtém as chaves privadas associadas às suas chaves de segurança e configura os ficheiros de chaves privadas. Esta configuração é persistente e aplica-se a todas as VMs que usam chaves de segurança.
Use o comando
gcloud beta compute ssh
para se ligar a uma VM que tenha chaves de segurança ativadas:gcloud beta compute ssh VM_NAME
Ferramentas de terceiros
Antes de se ligar a uma VM com chaves de segurança ativadas, tem de obter as chaves privadas associadas às suas chaves de segurança e configurar os ficheiros de chaves privadas. Este exemplo usa a biblioteca cliente Python para fazer a configuração.
Só tem de fazer esta configuração na primeira vez que se liga a uma VM. A configuração é persistente e aplica-se a todas as VMs que usam chaves de segurança no seu projeto.
Num terminal da sua estação de trabalho, faça o seguinte:
Se ainda não o fez, instale a biblioteca cliente Google para Python executando o seguinte comando:
pip3 install google-api-python-client
Guarde o seguinte script Python de exemplo, que obtém as chaves privadas associadas às suas chaves de segurança, configura os ficheiros de chaves privadas e estabelece ligação à VM.
Execute o script para configurar as chaves e, opcionalmente, estabelecer ligação à VM.
python3 SCRIPT_NAME.py --user_key=USER_KEY --ip_address=IP_ADDRESS [--dryrun]
Substitua o seguinte:
SCRIPT_NAME
: o nome do script de configuração.USER_KEY
: o seu endereço de email principal.IP_ADDRESS
: o endereço IP externo da VM à qual se está a ligar.[--dryrun]
: (opcional) adicione a flag--dryrun
para imprimir o comando de ligação sem estabelecer ligação à VM. Se não especificar esta flag, o script executa o comando de ligação.
O que se segue?
- Saiba como configurar o início de sessão no SO com a validação em dois passos.
- Saiba como gerir o início de sessão no SO numa organização.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-19 UTC.
-