Ligar a uma VM do Linux

Ao hospedar uma máquina virtual Linux no Azure, o método mais comum para acessar essa VM é por meio do Secure Shell Protocol (SSH). Qualquer cliente SSH padrão comumente encontrado no Linux e Windows permite que você se conecte. Você também pode usar o Azure Cloud Shell de qualquer navegador.

Este documento descreve como se conectar, via SSH, a uma VM que tenha um IP público. Se você precisar se conectar a uma VM sem um IP público, consulte Azure Bastion Service.

Pré-requisitos

  • Você precisa de um par de chaves SSH. Se você ainda não tiver um, o Azure criará um par de chaves durante o processo de implantação. Se precisar de ajuda para criar um manualmente, consulte Criar e usar um par de chaves público-privado SSH para VMs Linux no Azure.

  • Você precisa de um NSG (Network Security Group) existente. A maioria das VMs tem um NSG por padrão, mas se você ainda não tiver um, poderá criar um e anexá-lo manualmente. Para obter mais informações, consulte Criar, alterar ou excluir um grupo de segurança de rede.

  • Para se conectar a uma VM Linux, você precisa da porta apropriada aberta. Normalmente, o SSH usa a porta 22. As instruções a seguir assumem a porta 22, mas o processo é o mesmo para outros números de porta. Você pode validar que uma porta apropriada está aberta para SSH usando a solução de problemas ou verificando manualmente nas configurações da VM. Para verificar se a porta 22 está aberta:

    1. Na página da VM, selecione Rede no menu à esquerda.

    2. Na página Rede, verifique se há uma regra que permita o TCP na porta 22 a partir do endereço IP do computador que você está usando para se conectar à VM. Se a regra existir, você pode passar para a próxima seção.

      Screenshot showing how to check to see if there's already a rule allowing S S H connections.

    3. Se não houver uma regra, adicione uma selecionando Adicionar regra de porta de entrada.

    4. Em Serviço, selecione SSH na lista suspensa.

      Screenshot showing where to choose S S H when creating a new N S G rule.

    5. Editar prioridade e origem, se necessário

    6. Em Nome, digite SSH.

    7. Quando terminar, selecione Adicionar.

    8. Agora você deve ter uma regra SSH na tabela de regras de porta de entrada.

  • Sua VM deve ter um endereço IP público. Para verificar se sua VM tem um endereço IP público, selecione Visão geral no menu à esquerda e veja a seção Rede . Se você vir um endereço IP ao lado de Endereço IP público, sua VM terá um IP público

    Se a sua VM não tiver um endereço IP público, terá o seguinte aspeto:

    Screenshot of how the networking section looks when you don't have a public I P.

    Para saber mais sobre como adicionar um endereço IP público a uma VM existente, consulte Associar um endereço IP público a uma máquina virtual

  • Verifique se sua VM está em execução. Na guia Visão geral, na seção Essenciais , verifique se o status da VM está em execução. Para iniciar a VM, selecione Iniciar na parte superior da página.

    Screenshot showing how to check to make sure your virtual machine is in the running state.

Se você estiver tendo problemas para se conectar, você também pode usar o portal:

  1. Vá para o portal do Azure para se conectar a uma VM. Procure e selecione Máquinas virtuais.
  2. Selecione a máquina virtual na lista.
  3. Selecione Conectar no menu à esquerda.
  4. Selecione a opção que se adapta à sua forma preferida de ligação. O portal ajuda a orientá-lo através dos pré-requisitos para a conexão.

Ligar-se à VM

Assim que os pré-requisitos acima forem atendidos, você estará pronto para se conectar à sua VM. Abra o seu cliente SSH de escolha. O comando SSH client é normalmente incluído no Linux, macOS e Windows. Se você estiver usando o Windows 7 ou anterior, onde o Win32 OpenSSH não está incluído por padrão, considere instalar o WSL ou usar o Azure Cloud Shell a partir do navegador.

Nota

Os exemplos a seguir assumem que a chave SSH está no formato key.pem. Se você usou a CLI ou o Azure PowerShell para baixar suas chaves, elas podem estar no formato id_rsa.

SSH com um novo par de chaves

  1. Verifique se as chaves pública e privada estão no diretório correto. O diretório é geralmente ~/.ssh.

    Se você gerou chaves manualmente ou as gerou com a CLI, então as chaves provavelmente já estão lá. No entanto, se você os baixou em formato pem do portal do Azure, talvez seja necessário movê-los para o local certo. Mover as teclas é feito com a seguinte sintaxe: mv PRIVATE_KEY_SOURCE PRIVATE_KEY_DESTINATION

    Por exemplo, se a Downloads chave estiver na pasta e myKey.pem for o nome da sua chave SSH, digite:

    mv /Downloads/myKey.pem ~/.ssh
    

    Nota

    Se você estiver usando WSL, os mnt/c/ arquivos locais serão encontrados no diretório. Assim, o caminho para a pasta de downloads e chave SSH seria /mnt/c/Users/{USERNAME}/Downloads/myKey.pem

  2. Certifique-se de ter acesso somente leitura à chave privada executando

    chmod 400 ~/.ssh/myKey.pem
    
  3. Execute o comando SSH com a seguinte sintaxe: ssh -i PATH_TO_PRIVATE_KEY USERNAME@EXTERNAL_IP

    Por exemplo, se o seu azureuser for o nome de usuário que você criou e 20.51.230.13 for o endereço IP público da sua VM, digite:

    ssh -i ~/.ssh/myKey.pem azureuser@20.51.230.13
    
  4. Valide a impressão digital devolvida.

    Se você nunca se conectou a essa VM antes, será solicitado que você verifique a impressão digital dos hosts. É tentador aceitar a impressão digital apresentada, mas isso expõe você a uma pessoa em potencial no ataque do meio. Deve sempre validar a impressão digital dos anfitriões. Você só precisa fazer isso na primeira vez que se conectar a partir de um cliente. Para obter a impressão digital do host através do portal, use o recurso Executar comando para executar o comando:

    ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'
    
  5. Êxito! Agora você deve estar conectado à sua VM. Se você não conseguir se conectar, consulte Solucionar problemas de conexões SSH.

SSH com chave pública existente

  1. Execute o seguinte comando no seu cliente SSH. Neste exemplo, 20.51.230.13 é o endereço IP público da sua VM e azureuser é o nome de usuário que você criou quando criou a VM.

    ssh azureuser@20.51.230.13
    
  2. Valide a impressão digital devolvida.

    Se você nunca se conectou à VM desejada a partir do seu cliente SSH atual antes de ser solicitado a verificar a impressão digital do host. Embora a opção padrão seja aceitar a impressão digital apresentada, você está exposto a uma possível "pessoa no ataque do meio". Você deve sempre validar a impressão digital do host, o que só precisa ser feito na primeira vez que seu cliente se conectar. Para obter a impressão digital do host através do portal, use o recurso Executar comando para executar o comando:

    ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'
    
  3. Êxito! Agora você deve estar conectado à sua VM. Se você não conseguir se conectar, consulte nosso guia de solução de problemas.

Autenticação da palavra-passe

Aviso

Esse tipo de método de autenticação não é tão seguro quanto um par de chaves SSH e não é recomendado.

  1. Execute o seguinte comando no seu cliente SSH. Neste exemplo, 20.51.230.13 é o endereço IP público da sua VM e azureuser é o nome de usuário que você criou quando criou a VM.

    ssh azureuser@20.51.230.13
    

    Se se esqueceu da palavra-passe ou do nome de utilizador, consulte Repor o acesso a uma VM do Azure

  2. Valide a impressão digital devolvida.

    Se você nunca se conectou à VM desejada a partir do seu cliente SSH atual antes de ser solicitado a verificar a impressão digital do host. Embora a opção padrão seja aceitar a impressão digital apresentada, você está exposto a uma possível "pessoa no ataque do meio". Você deve sempre validar a impressão digital do host, o que só precisa ser feito na primeira vez que seu cliente se conectar. Para obter a impressão digital do host através do portal, use o recurso Executar comando para executar o comando:

    ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'
    
  3. Êxito! Agora você deve estar conectado à sua VM. Se você não conseguir se conectar, consulte Solucionar problemas de conexões SSH.

Próximos passos

Saiba como transferir arquivos para uma VM existente, consulte Usar o SCP para mover arquivos de e para uma VM.