Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Como recuperar o acesso ao Windows Server pelo Console Serial do Google Cloud

By Garrett SchaefferMay 6, 20204 min read

Esta página também está disponível em English, Deutsch, Español, Français, Italiano e 日本語.

Recentemente, nos deparamos com uma situação em que um cliente havia perdido o acesso a uma instância do Windows Server hospedada na nuvem. Um usuário da empresa fez uma alteração indevida na configuração do Firewall do Windows e, como resultado, ninguém conseguia mais acessar a máquina, seja por RDP ou de qualquer outra forma.

Infelizmente, isso é mais comum do que gostaríamos, mas a boa notícia é que tem solução. Na esperança de que este artigo ajude outras pessoas, vou descrever os passos simples que você pode seguir para resolver situações parecidas.

Sem conseguir acessar a máquina por outros meios, optamos por usar a opção de conexão via porta serial disponível no Console Web do Google Cloud.

Para restaurar o acesso à instância do Windows, vamos passar por três etapas. Primeiro, conectamos à máquina. Depois, abrimos um prompt de comando do Windows. Por último, desativamos o firewall para liberar o acesso RDP. Vamos partir do ponto em que você já está autenticado no Console Web do Google Cloud.

Para executar os passos deste artigo, você vai precisar das seguintes permissões no Google Cloud Platform (GCP):

  • compute.instances.setMetadata
  • compute.projects.setCommonInstanceMetadata

Passo 1: navegar até a instância e conectar pelo console serial

Depois de entrar no Console Web do Google Cloud, abra a página do Compute Engine para ver a lista de instâncias. Pesquise e selecione a instância afetada para abrir a página de detalhes.

Detalhes da instância de VM

Confira se o acesso ao console serial está habilitado, verificando o atributo "Habilitar conexão com portas seriais". Se não estiver, será preciso ativá-lo. Para isso, clique em "Editar", marque a opção "Habilitar conexão com portas seriais" e salve a alteração.

Editar conectividade da porta serial

Com o acesso à porta serial habilitado, o botão "Conectar ao console serial" também é liberado. Clique nele para abrir uma janela do console serial. Uma nova janela será exibida com o Special Administration Console (SAC) do Windows.

Detalhes da instância de VM — console serial habilitado

O SAC do Windows permite interagir com o sistema operacional (SO). Ele oferece acesso ao SO mesmo quando a rede não está funcionando e disponibiliza um conjunto bem básico de comandos para gerenciamento.

Special Administration Console, SAC

Dica: para saber mais sobre o terminal SAC, use o comando ? ou help para exibir a lista de comandos disponíveis.

Passo 2: conectar ao prompt de comando do Windows

Precisamos usar comandos de firewall que não estão disponíveis no SAC. Para isso, vamos criar um novo canal que dá acesso ao bom e velho prompt de comando do Windows.

No terminal SAC, use o comando cmd para iniciar outro canal. O sistema responde com uma mensagem de confirmação. O novo canal se chama "Cmd0001", e alternamos para ele com o comando ch -sn Cmd0001.

Criar e alternar para o novo canal

O sistema exibe os detalhes do novo canal. Pressione qualquer tecla, exceto as combinações <esc><tab> listadas, para visualizar o canal.

Digite ch -sn seguido do nome do canal, por exemplo ch -sn Cmd0001. Esse comando alterna o console serial para o canal especificado.

O prompt de comando do Windows dá acesso total à máquina. O sistema solicita credenciais para autenticar como um usuário autorizado. Informe o nome de usuário, o domínio e a senha. Se a máquina não estiver em um domínio, deixe esse campo em branco.

Autenticação no prompt de comando

Passo 3: desativar o firewall

Agora que estamos autenticados, podemos executar o passo final e desabilitar as regras de firewall que estão bloqueando o acesso. Para isso, use o comando netsh advfirewall set allprofiles state off. O sistema responde com uma breve mensagem "Ok." indicando que as regras foram desativadas. Pronto, agora dá para conectar à máquina e ajustar as configurações como quiser. E claro, não se esqueça de reativar o firewall depois.

Mensagem de confirmação do comando netsh

Resumo

Nos passos acima, mostramos como restaurar o acesso a uma instância do Windows Server bloqueada pelo firewall do sistema operacional. Lembre-se de desabilitar o acesso ao console serial depois, para proteger o recurso. O GCP também oferece um controle de segurança para proteger esse acesso em todas as máquinas: definir uma política da organização para o acesso à porta serial sobrescreve as configurações individuais de cada máquina. Para isso, use a opção "Disable VM serial port access" na página de Políticas da Organização.

Além disso, o GCP registra todos os acessos ao console serial nos cloud logs. Para consultá-los, vá até o menu Logs no console web do GCP. Na página de logs, filtre pelo recurso "GCE VM Instance" e pesquise por ssh-serialport-googleapis.com. Você precisa ter permissões de visualização de logs na sua conta de usuário para acessar.

Existem algumas medidas preventivas básicas para evitar esse tipo de situação. Manter um processo de controle de mudanças garante um histórico das ações realizadas, o que ajuda a identificar a causa dos incidentes, a resolução aplicada e acelera a recuperação. Também vale garantir que backups consistentes estejam sendo feitos. O Google Cloud Platform oferece um excelente serviço de agendamento de snapshots para instâncias.

Quer mais conteúdos como este? Confira nosso blog no Medium ou siga o Garrett no Twitter