Neste documento, descrevemos como se conectar a uma instância de máquina virtual (VM) usando o endereço IP interno dela usando o encaminhamento de TCP do Identity-Aware Proxy (IAP).
O encaminhamento de TCP do IAP permite que você estabeleça um túnel criptografado para encaminhar conexões SSH para VMs. Quando você se conecta a uma VM que usa o IAP, o IAP encapsula a conexão SSH no HTTPS antes de encaminhar a conexão à VM. Em seguida, o IAP verifica se você tem as permissões necessárias do IAM e, se tiver, concede acesso à VM.
Se você precisar se conectar a uma VM que não tenha endereços IP externos e não puder usar o IAP, analise os outros métodos listados em Opções de conexão para VMs somente internas.
Antes de começar
- Crie uma regra de firewall para ativar as conexões do IAP.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud .
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Sistemas operacionais compatíveis
Esses métodos de conexão são compatíveis com todas as imagens públicas do Linux disponíveis no Compute Engine. Para imagens do Fedora CoreOS, é necessário configurar o acesso SSH antes de usar esses métodos.
Conectar-se às VMs
Para se conectar a uma VM, conclua as etapas em uma das guias a seguir.
Permissões exigidas para a tarefa
Para executar esta tarefa, é necessário ter as seguintes permissões:
- Todas as permissões incluídas nos papéis do IAP.
Para encapsular conexões SSH pelo endereço IP interno de uma VM usando o SSH no navegador, faça o seguinte:
- In the Google Cloud console, go to the VM instances page.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
Faça o encapsulamento de conexões SSH pelo endereço IP interno de uma VM usando o
comando gcloud compute ssh
com a
sinalização --tunnel-through-iap
:
Conecte-se à VM executando o seguinte comando:
gcloud compute ssh
VM-NAME \ --tunnel-through-iap
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.
Substitua VM_NAME
pelo nome da VM a que você quer se conectar.
Para se conectar a uma VM usando o IAP Desktop, faça o seguinte:
-
Instale o IAP Desktop na sua estação de trabalho, se ainda não tiver feito isso.
-
Abra o IAP Desktop. A janela Adicionar projetos será aberta.
-
Quando solicitado, faça login usando a Conta do Google que tem acesso ao projeto com as VMs a que você quer se conectar.
-
Na janela Adicionar projetos, insira o ID ou o nome do projeto que contém as VMs a que você quer se conectar.
-
Na janela Project Explorer, clique com o botão direito do mouse no nome da VM novamente e selecione Conectar para se conectar à VM.
Faça o encapsulamento de conexões SSH por meio do endereço IP interno de uma VM usando o PuTTY. Para isso, faça o seguinte:
- Adicione uma chave SSH à VM, se ainda não tiver feito isso.
- Se a estação de trabalho ainda não tiver o app PuTTY instalado, faça o download dos arquivos do pacote PuTTY.
No console do Google Cloud, acesse a página Instâncias de VM e encontre o nome da VM a que você quer se conectar.
- Abra o app PuTTY. Uma janela de configuração de conexão será aberta.
No campo
Host Name
, insira o nome de usuário associado à chave SSH e o nome da VM à qual você quer se conectar. Use o seguinte formato:USERNAME @VM_NAME Substitua:
USERNAME
: seu nome de usuário. Se você gerencia suas chaves SSH em metadados, o nome de usuário será aquele que você especificou quando criou a chave SSH. Para contas do Login do SO, o nome de usuário é definido no seu perfil do Google. Por exemplo,cloudysanfrancisco_example_com
oucloudysanfrancisco
.-
NAME
: o nome da VM.
- No menu Category, navegue até Connection > SSH > Auth.
- No campo Arquivo de chave privada para autenticação, selecione o arquivo da chave SSH privada que corresponde à chave pública adicionada à VM.
- No menu Categoria, navegue até Conexão > Proxy.
- Na seção Tipo de proxy, selecione Local.
No campo Comando Telnet ou comando proxy local, digite este comando:
gcloud.cmd compute start-iap-tunnel
VM_NAME PORT_NUMBER --listen-on-stdin --project=PROJECT_ID --zone=ZONE Substitua:
VM_NAME
: o nome da VM a que você quer se conectar.PORT_NUMBER
: a porta em que o daemon sshd é executado. O padrãoPORT_NUMBER
é22
.PROJECT_ID
: o projeto que hospeda a VM a que você quer se conectar.ZONE
: é a zona em que a VM está localizada
- Clique em Abrir para se conectar à VM.
Solução de problemas
Para encontrar métodos de diagnóstico e resolução de conexões SSH com falha, consulte Solução de problemas de SSH.
A seguir
- Saiba como gerenciar o acesso às VMs.
- Saiba como transferir arquivos para VMs.
- Saiba como as conexões SSH com VMs do Linux funcionam no Compute Engine