Guia de início rápido: use a CLI do Azure para criar uma rede virtual

Este guia de início rápido mostra como criar uma rede virtual usando a CLI do Azure, a interface de linha de comando do Azure. Em seguida, você cria duas máquinas virtuais (VMs) na rede, conecta-se com segurança às VMs a partir da Internet e inicia a comunicação privada entre as VMs.

Uma rede virtual é o bloco de construção fundamental para redes privadas no Azure. A Rede Virtual do Azure permite que recursos do Azure, como VMs, se comuniquem com segurança entre si e com a Internet.

Diagrama de recursos criados no início rápido da rede virtual.

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Criar um grupo de recursos

Use az group create para criar um grupo de recursos para hospedar a rede virtual. Use o código a seguir para criar um grupo de recursos chamado test-rg na região eastus2 Azure:

az group create \
    --name test-rg \
    --location eastus2

Criar uma rede virtual e uma sub-rede

Use az network vnet create para criar uma rede virtual chamada vnet-1 com uma sub-rede chamada subnet-1 no grupo de recursos test-rg :

az network vnet create \
    --name vnet-1 \
    --resource-group test-rg \
    --address-prefix 10.0.0.0/16 \
    --subnet-name subnet-1 \
    --subnet-prefixes 10.0.0.0/24

Implementar o Azure Bastion

O Azure Bastion usa seu navegador para se conectar a VMs em sua rede virtual por meio de Secure Shell (SSH) ou RDP (Remote Desktop Protocol) usando seus endereços IP privados. As VMs não precisam de endereços IP públicos, software cliente ou configuração especial.

O preço por hora começa a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para obter mais informações, consulte Preços e SKUs. Se você estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos excluir esse recurso depois de terminar de usá-lo. Para obter mais informações sobre Bastion, consulte O que é o Azure Bastion?.

  1. Use az network vnet subnet create para criar uma sub-rede Bastion para sua rede virtual. Esta sub-rede é reservada exclusivamente para recursos Bastion e deve ser chamada AzureBastionSubnet.

    az network vnet subnet create \
        --name AzureBastionSubnet \
        --resource-group test-rg \
        --vnet-name vnet-1 \
        --address-prefix 10.0.1.0/26
    
  2. Crie um endereço IP público para Bastion. Este endereço IP é usado para se conectar ao host Bastion a partir da internet. Use az network public-ip create para criar um endereço IP público chamado public-ip no grupo de recursos test-rg :

    az network public-ip create \
        --resource-group test-rg \
        --name public-ip \
        --sku Standard \
        --location eastus2 \
        --zone 1 2 3
    
  3. Use az network bastion create para criar um host Bastion no AzureBastionSubnet para sua rede virtual:

    az network bastion create \
        --name bastion \
        --public-ip-address public-ip \
        --resource-group test-rg \
        --vnet-name vnet-1 \
        --location eastus2
    

Leva cerca de 10 minutos para implantar os recursos do Bastion. Você pode criar VMs na próxima seção enquanto Bastion implanta em sua rede virtual.

Criar máquinas virtuais

Use az vm create para criar duas VMs chamadas vm-1 e vm-2 na sub-rede 1 da rede virtual. Quando lhe forem solicitadas credenciais, introduza nomes de utilizador e palavras-passe para as VMs.

  1. Para criar a primeira VM, use o seguinte comando:

    az vm create \
        --resource-group test-rg \
        --admin-username azureuser \
        --authentication-type password \
        --name vm-1 \
        --image Ubuntu2204 \
        --public-ip-address ""
    
  2. Para criar a segunda VM, use o seguinte comando:

    az vm create \
        --resource-group test-rg \
        --admin-username azureuser \
        --authentication-type password \
        --name vm-2 \
        --image Ubuntu2204 \
        --public-ip-address ""
    

Gorjeta

Você também pode usar a --no-wait opção para criar uma VM em segundo plano enquanto continua com outras tarefas.

A criação das VMs demora alguns minutos. Depois que o Azure cria cada VM, a CLI do Azure retorna uma saída semelhante à seguinte mensagem:

    {
      "fqdns": "",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/vm-2",
      "location": "eastus2",
      "macAddress": "00-0D-3A-23-9A-49",
      "powerState": "VM running",
      "privateIpAddress": "10.0.0.5",
      "publicIpAddress": "",
      "resourceGroup": "test-rg"
      "zones": ""
    }

Nota

As VMs em uma rede virtual com um host Bastion não precisam de endereços IP públicos. Bastion fornece o IP público, e as VMs usam IPs privados para se comunicar dentro da rede. Você pode remover os IPs públicos de qualquer VM em redes virtuais hospedadas no Bastion. Para obter mais informações, consulte Dissociar um endereço IP público de uma VM do Azure.

Nota

O Azure fornece um IP de acesso de saída padrão para VMs que não recebem um endereço IP público ou estão no pool de back-end de um balanceador de carga básico interno do Azure. O mecanismo IP de acesso de saída padrão fornece um endereço IP de saída que não é configurável.

O IP de acesso de saída padrão é desativado quando um dos seguintes eventos acontece:

  • Um endereço IP público é atribuído à VM.
  • A VM é colocada no pool de back-end de um balanceador de carga padrão, com ou sem regras de saída.
  • Um recurso do Gateway NAT do Azure é atribuído à sub-rede da VM.

As VMs que você cria usando conjuntos de dimensionamento de máquina virtual no modo de orquestração flexível não têm acesso de saída padrão.

Para obter mais informações sobre conexões de saída no Azure, consulte Acesso de saída padrão no Azure e Usar SNAT (Conversão de Endereço de Rede de Origem) para conexões de saída.

Ligar a uma máquina virtual

  1. No portal, procure e selecione Máquinas virtuais.

  2. Na página Máquinas virtuais, selecione vm-1.

  3. Nas informações de visão geral do vm-1, selecione Conectar.

  4. Na página Conectar à máquina virtual, selecione a guia Bastion.

  5. Selecione Usar bastião.

  6. Introduza o nome de utilizador e a palavra-passe que criou quando criou a VM e, em seguida, selecione Ligar.

Iniciar a comunicação entre VMs

  1. No prompt bash para vm-1, digite ping -c 4 vm-2.

    Você recebe uma resposta semelhante à seguinte mensagem:

    azureuser@vm-1:~$ ping -c 4 vm-2
    PING vm-2.3bnkevn3313ujpr5l1kqop4n4d.cx.internal.cloudapp.net (10.0.0.5) 56(84) bytes of data.
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=1 ttl=64 time=1.83 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=2 ttl=64 time=0.987 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=3 ttl=64 time=0.864 ms
    64 bytes from vm-2.internal.cloudapp.net (10.0.0.5): icmp_seq=4 ttl=64 time=0.890 ms
    
  2. Feche a conexão Bastion para vm-1.

  3. Repita as etapas em Conectar a uma máquina virtual para se conectar ao vm-2.

  4. No prompt bash para vm-2, digite ping -c 4 vm-1.

    Você recebe uma resposta semelhante à seguinte mensagem:

    azureuser@vm-2:~$ ping -c 4 vm-1
    PING vm-1.3bnkevn3313ujpr5l1kqop4n4d.cx.internal.cloudapp.net (10.0.0.4) 56(84) bytes of data.
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=1 ttl=64 time=0.695 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=2 ttl=64 time=0.896 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=3 ttl=64 time=3.43 ms
    64 bytes from vm-1.internal.cloudapp.net (10.0.0.4): icmp_seq=4 ttl=64 time=0.780 ms
    
  5. Feche a conexão Bastion para vm-2.

Clean up resources (Limpar recursos)

Quando terminar com a rede virtual e as VMs, use az group delete para remover o grupo de recursos e todos os seus recursos:

az group delete \
    --name test-rg \
    --yes

Próximos passos

Neste início rápido, você criou uma rede virtual com uma sub-rede padrão que contém duas VMs. Você implantou o Bastion e o usou para se conectar às VMs e estabelecer comunicação entre as VMs. Para saber mais sobre as configurações de rede virtual, consulte Criar, alterar ou excluir uma rede virtual.

A comunicação privada entre VMs em uma rede virtual não é restrita por padrão. Para saber mais sobre como configurar vários tipos de comunicações de rede VM, continue para o próximo artigo: