Conecte-se a VMs do Windows usando o PowerShell


Este documento descreve como se conectar a uma instância de máquina virtual (VM) do Windows usando o PowerShell.

Antes de começar

  • Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar 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

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.

Conecte-se usando PowerShell

Se você tiver uma estação de trabalho Windows com PowerShell, poderá conectar-se às instâncias do Windows Server por meio de uma sessão remota do PowerShell.

  1. Se você ainda não criou um nome de usuário e uma senha na instância remota do Windows, crie ou redefina sua senha do Windows .

  2. Adicione uma regra de firewall que abra a porta 5986 no Google Cloud Rede VPC onde sua instância do Windows Server está localizada.

  3. Na sua estação de trabalho local, abra o terminal do PowerShell.

  4. Opcional: você pode inicializar uma variável para armazenar suas credenciais de usuário para que não seja necessário inseri-las sempre que se conectar à instância. Se você pular esta etapa, receberá uma solicitação de nome de usuário e senha posteriormente.

    $credentials = Get-Credential
    
  5. Escolha se deseja estabelecer uma sessão interativa do Powershell ou invocar comandos em sua VM do Windows Server remotamente .

Estabeleça uma sessão interativa do PowerShell

Para estabelecer uma sessão do PowerShell, execute o seguinte comando:

Enter-PSSession -ComputerName IP_ADDRESS -UseSSL -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck) -Credential $credentials

Substitua IP_ADDRESS pelo endereço IP externo, nome DNS ou nome do computador Windows da instância à qual você deseja se conectar.

Após a conexão, o prompt de comando muda para incluir o endereço IP da instância remota do Windows. Agora você pode usar o terminal para executar comandos do PowerShell na instância remota do Windows Server.

Invoque comandos em sua VM do Windows Server remotamente

Como alternativa ao comando Enter-PSSession , você pode executar Invoke-Command com o sinalizador -ScriptBlock para executar comandos do PowerShell na instância remota sem estabelecer uma sessão interativa.

Invoke-Command -ComputerName IP_ADDRESS -ScriptBlock { SCRIPT } -UseSSL -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck) -Credential $credentials

Substitua o seguinte:

  • IP_ADDRESS : o endereço IP, o nome DNS ou o nome do computador Windows da instância à qual você deseja se conectar.
  • SCRIPT : um ou mais comandos a serem executados na instância remota. Por exemplo, especifique Get-EventLog -log "Windows PowerShell" para obter uma lista de eventos de log.

O que vem a seguir