Tutorial: Restringir o acesso de rede aos recursos de PaaS com pontos de extremidade do serviço de rede virtual
Artigo
Os pontos de extremidade de serviço de rede virtual permitem limitar o acesso à rede a alguns recursos de serviço do Azure para uma sub-rede da rede virtual. Você também pode remover o acesso à Internet para os recursos. Os pontos de extremidade de serviço fornecerão conexão direta de sua rede virtual a um serviço do Azure, permitindo que você use o espaço de endereço privado da sua rede virtual para acessar os serviços do Azure compatíveis. O tráfego destinado aos recursos do Azure por meio de pontos de extremidade de serviço sempre fica na rede de backbone do Microsoft Azure.
Neste tutorial, você aprenderá a:
Criar uma rede virtual com uma sub-rede
Adicionar uma sub-rede e habilitar um ponto de extremidade de serviço
Criar um recurso do Azure e permitir o acesso à rede para ele apenas de uma sub-rede
Implantar uma VM (máquina virtual) para cada sub-rede
Confirmar o acesso a um recurso por meio de uma sub-rede
Confirmar se o acesso é negado para um recurso por meio de uma sub-rede e da Internet
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Azure Cloud Shell
O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção
Exemplo/Link
Selecione Experimentar no canto superior direito de um bloco de código ou de comando. Selecionar Experimentar não copia automaticamente o código nem o comando para o Cloud Shell.
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador.
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure.
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou o comando.
Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e no Linux, ou selecionando Cmd+Shift+V no macOS.
Selecione Enter para executar o código ou o comando.
Se você optar por instalar e usar o PowerShell localmente, este artigo exigirá o módulo do Azure PowerShell versão 1.0.0 ou posterior. Execute Get-Module -ListAvailable Az para localizar a versão instalada. Se você precisa atualizar, consulte Instalar o módulo do Azure PowerShell. Se você estiver executando o PowerShell localmente, também precisará executar o Connect-AzAccount para criar uma conexão com o Azure.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
Este artigo exige a versão 2.0.28 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.
O seguinte procedimento cria uma rede virtual com uma sub-rede de recurso, uma sub-rede do Azure Bastion e um host do Bastion:
No portal do Azure, pesquise e selecione Redes virtuais.
Na página Redes virtuais, selecione + Criar.
Na guia Informações Básicas em Criar rede virtual, insira ou selecione as seguintes informações:
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione Criar novo. Insira test-rg para o nome. Selecione .
Detalhes da instância
Nome
Insira vnet-1.
Região
Selecione Leste dos EUA 2.
Selecione Avançar para prosseguir para a guia Segurança.
Na seção Azure Bastion, selecione Habilitar o Azure Bastion.
O Bastion usa seu navegador para se conectar às VMs em sua rede virtual por meio do Secure Shell (SSH) ou do Protocolo de Área de Trabalho Remota (RDP) usando os respectivos endereços IP privados. As VMs não precisam de endereços IP públicos, software cliente ou configuração especial. Para obter mais informações, confira O que é o Azure Bastion?.
Observação
Os preços por hora começam a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para saber mais, confira Preços e SKUs. Se estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos que você exclua esse recurso após terminar de usá-lo.
Em Azure Bastion, digite ou selecione as seguintes informações:
Configuração
Valor
Nome do host do Azure Bastion
Insira bastion.
Endereço IP público do Azure Bastion
Selecione Criar um endereço IP público. Insira public-ip-bastion em Nome. Selecione .
Selecione Avançar para prosseguir para a guia Endereços IP.
Na caixa de espaço de endereço em Sub-redes, selecione a sub-rede padrão.
Em Editar sub-rede, insira ou selecione as seguintes informações:
Configuração
Valor
Finalidade da sub-rede
Mantenha o padrão como Padrão.
Nome
Insira sub-rede-1.
IPv4
Intervalo de endereços IPv4
Mantenha o padrão de 10.0.0.0/16.
Endereço inicial
Deixe o padrão de 10.0.0.0.
Tamanho
Deixe o padrão de /24 (256 endereços).
Selecione Salvar.
Selecione Examinar + criar na parte inferior da página. Quando a validação for aprovada na validação, selecione Criar.
Pontos de extremidade de serviço são habilitados por serviço, por sub-rede.
Na caixa de pesquisa na parte superior do portal, pesquise Rede virtual. Selecione Redes virtuais nos resultados da pesquisa.
Em Redes virtuais, selecione vnet-1.
Na seção Configurações de vnet-1, selecione Sub-redes.
Selecione + Sub-rede.
Na página Adicionar sub-rede, insira ou selecione as seguintes informações:
Configuração
Valor
Nome
subnet-private
Intervalo de endereços da sub-rede
Matenha o padrão de 10.0.2.0/24.
PONTOS DE EXTREMIDADE DE SERVIÇO
Serviços
Selecione Microsoft.Storage
Selecione Salvar.
Cuidado
Antes de habilitar um ponto de extremidade de serviço para uma sub-rede existente que tenha recursos nela, consulte Alterar as configurações de sub-rede.
Criar uma rede virtual
Antes de criar uma rede virtual, será necessário criar um grupo de recursos para a rede virtual e todos os outros recursos criados neste artigo. Crie um grupo de recursos com New-AzResourceGroup. O seguinte exemplo cria um grupo de recursos chamado test-rg:
Crie uma configuração de sub-rede com New-AzureRmVirtualNetworkSubnetConfig. O seguinte exemplo cria uma configuração de sub-rede para uma sub-rede denominada subnet-public:
Crie a sub-rede na rede virtual gravando a configuração de sub-rede na rede virtual com Set-AzVirtualNetwork:
$virtualNetwork | Set-AzVirtualNetwork
Crie outra sub-rede na rede virtual. Neste exemplo, uma sub-rede denominada subnet-private é criada com um ponto de extremidade de serviço para Microsoft.Storage:
O Azure Bastion usa seu navegador para se conectar a VMs em sua rede virtual por Secure Shell (SSH) ou Remote Desktop Protocol (RDP) usando seus endereços IP privados. As VMs não precisam de endereços IP públicos, software cliente ou configuração especial. Para obter mais informações sobre o Bastion, consulte O que é o Azure Bastion?.
Os preços por hora começam a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para saber mais, confira Preços e SKUs. Se estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos que você exclua esse recurso após terminar de usá-lo.
Configure uma sub-rede do Bastion para sua rede virtual. Essa sub-rede é reservada exclusivamente para recursos do Bastion e deve ser chamada AzureBastionSubnet.
A implantação dos recursos do Bastion leva cerca de 10 minutos. É possível criar VMs na próxima seção enquanto o Bastion é implantado na rede virtual.
Criar uma rede virtual
Antes de criar uma rede virtual, será necessário criar um grupo de recursos para a rede virtual e todos os outros recursos criados neste artigo. Crie um grupo de recursos com az group create. O exemplo a seguir cria um grupo de recursos chamado test-rg na localização westus2.
az group create \
--name test-rg \
--location westus2
Você pode habilitar pontos de extremidade de serviço apenas para serviços que oferecem suporte a pontos de extremidade de serviço. Exiba os serviços habilitados para ponto de extremidade de serviço em um local do Azure com az network vnet list-endpoint-services. O exemplo a seguir retorna uma lista de serviços habilitados para ponto de extremidade de serviço disponíveis na região westus2. A lista de serviços retornados aumentará ao longo do tempo, visto que mais serviços do Azure se tornam habilitados para ponto de extremidade de serviço.
az network vnet list-endpoint-services \
--location westus2 \
--out table
Crie outra sub-rede adicional na rede virtual com az network vnet subnet create. Neste exemplo, um ponto de extremidade de serviço para Microsoft.Storage o qual é criado para a sub-rede:
Por padrão, todas as instâncias de máquina virtual em uma sub-rede podem se comunicar com qualquer recurso. Você pode limitar a comunicação com todos os recursos em uma sub-rede, criando um grupo de segurança de rede e o associando à sub-rede.
Na caixa de pesquisa na parte superior da página do portal, procure Grupo de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Em Grupos de segurança de rede, selecione + Criar.
Em Criar grupo de segurança de rede, insira ou selecione estas informações na guia Básico:
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Detalhes da instância
Nome
Insira nsg-storage.
Região
Selecione Leste dos EUA 2.
Selecione Examinar + criare Criar.
Crie um grupo de segurança de rede com New-AzNetworkSecurityGroup. O seguinte exemplo cria um grupo de segurança de rede chamado nsg-private.
Na caixa de pesquisa na parte superior da página do portal, procure Grupo de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Selecione nsg-storage.
Selecione Regras de segurança de saída em Configurações.
Selecione + Adicionar.
Crie uma regra que permita a comunicação de saída para o serviço de Armazenamento do Azure. Insira ou selecione as informações a seguir em Adicionar regra de segurança de saída:
Configuração
Valor
Fonte
selecione Marca de Serviço.
Marca de serviço de origem
Selecione VirtualNetwork.
Intervalos de portas de origem
Mantenha o padrão de *.
Destino
selecione Marca de Serviço.
Marca de serviço de destino
Selecione Armazenamento.
Serviço
Mantenha o padrão de Personalizado.
Intervalos de portas de destino
Insira 445.
Protocolo
Selecione Qualquer.
Ação
selecione Permitir.
Prioridade
Mantenha o padrão de 100.
Nome
Insira allow-storage-all.
Selecione + Adicionar.
Crie outra regra de segurança de saída que nega a comunicação com a Internet. Essa regra substitui uma regra padrão em todos os grupos de segurança de rede que permite a comunicação de saída à Internet. Conclua as etapas anteriores com os valores a seguir em Incluir regra de segurança de saída:
Configuração
Valor
Fonte
selecione Marca de Serviço.
Marca de serviço de origem
Selecione VirtualNetwork.
Intervalos de portas de origem
Mantenha o padrão de *.
Destino
selecione Marca de Serviço.
Marca de serviço de destino
selecione Internet.
Serviço
Mantenha o padrão de Personalizado.
Intervalos de portas de destino
Digite *.
Protocolo
Selecione Qualquer.
Ação
Selecione Negar.
Prioridade
Mantenha o padrão 110.
Nome
Insira deny-internet-all.
Selecione Adicionar.
Na caixa de pesquisa na parte superior da página do portal, procure Grupo de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Selecione nsg-storage.
Selecione Sub-redes em Configurações.
Selecione + Associar.
Em Sub-rede associada, selecione vnet-1 em Rede virtual. Selecione subnet-private na Sub-rede.
Selecione OK.
Crie regras de segurança de grupo de segurança de rede com New-AzNetworkSecurityRuleConfig. A seguinte regra permite o acesso de saída para os endereços IP públicos atribuídos ao serviço de Armazenamento do Microsoft Azure:
A regra a seguir nega acesso a todos os endereços IP públicos. A regra anterior substitui essa regra, devido à sua prioridade mais alta, o que permite acesso aos endereços IP públicos do Armazenamento do Microsoft Azure.
# Retrieve the existing network security group
$nsgpriv = @{
ResourceGroupName = 'test-rg'
Name = 'nsg-private'
}
$nsg = Get-AzNetworkSecurityGroup @nsgpriv
# Add the new rules to the security group
$nsg.SecurityRules += $rule1
$nsg.SecurityRules += $rule2
# Update the network security group with the new rules
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg
Associe o grupo de segurança de rede à sub-rede subnet-private com Set-AzVirtualNetworkSubnetConfig e grave a configuração de sub-rede para a rede virtual. O exemplo a seguir associa o grupo de segurança de rede nsg-private à sub-rede privada da sub-rede:
Crie regras de segurança com az network nsg rule create. A seguinte regra permite o acesso de saída para os endereços IP públicos atribuídos ao serviço de Armazenamento do Microsoft Azure:
Cada grupo de segurança de rede contém várias regras de segurança padrão. A regra a seguir substitui uma regra de segurança padrão que permite o acesso de saída a todos os endereços IP públicos. A opção destination-address-prefix "Internet" nega o acesso de saída a todos os endereços IP públicos. A regra anterior substitui essa regra, devido à sua prioridade mais alta, o que permite acesso aos endereços IP públicos do Armazenamento do Microsoft Azure.
A regra a seguir permite o tráfego SSH de entrada para a sub-rede de qualquer lugar. A regra substitui uma regra de segurança padrão que nega todo o tráfego da Internet. O SSH é permitido na sub-rede para que a conectividade possa ser testada em uma etapa posterior.
Associe o grupo de segurança de rede à sub-rede privada da sub-rede com az network vnet subnet update. O exemplo a seguir associa o grupo de segurança de rede nsg-private à sub-rede privada da sub-rede:
As etapas necessárias para restringir o acesso à rede a recursos criados por meio dos serviços do Azure, que são habilitados para pontos de extremidade de serviço, variam entre os serviços. Confira a documentação de serviços individuais para obter as etapas específicas para cada serviço. O restante deste tutorial inclui etapas para restringir o acesso de rede para uma conta de Armazenamento do Microsoft Azure como exemplo.
Criar uma conta de armazenamento
Crie uma conta de Armazenamento do Azure para as etapas neste artigo. Se você já tiver uma conta de armazenamento, poderá usá-la.
Na caixa de pesquisa na parte superior do portal, insira Conta de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione + Criar.
Na guia Noções Básicas de Criar uma conta de armazenamento, insira ou selecione as informações a seguir:
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura do Azure.
Grupo de recursos
Selecione test-rg.
Detalhes da instância
Nome da conta de armazenamento
Insira storage1. Se o nome não estiver disponível, insira um nome exclusivo.
Location
Selecione (EUA) Leste dos EUA 2.
Desempenho
Deixe o padrão Standard.
Redundância
Selecione LRS (armazenamento com redundância local).
Selecione Examinar.
Selecione Criar.
Crie uma conta de armazenamento do Azure com New-AzStorageAccount. Substitua <replace-with-your-unique-storage-account-name> por um nome que seja exclusivo em todos os locais do Azure, entre 3 a 24 caracteres de comprimento, usando apenas números e letras minúsculas.
Para fins deste tutorial, a cadeia de conexão é usada para se conectar à conta de armazenamento. A Microsoft recomenda usar o fluxo de autenticação mais seguro disponível. O fluxo de autenticação descrito neste procedimento requer um alto grau de confiança no aplicativo e traz riscos que não estão presentes em outros fluxos. Você só deve usar esse fluxo quando outros fluxos mais seguros, como identidades gerenciadas, não forem viáveis.
A chave é usada para criar um compartilhamento de arquivos em uma etapa posterior. Insira $storageAcctKey e anote o valor. Você o insere manualmente em uma etapa posterior ao mapear o compartilhamento de arquivos para uma unidade em uma máquina virtual.
As etapas necessárias para restringir o acesso de rede a recursos criados por meio de serviços do Azure habilitados para pontos de extremidade do serviço variam de acordo com os serviços. Confira a documentação de serviços individuais para obter as etapas específicas para cada serviço. O restante deste artigo inclui etapas para restringir o acesso de rede para uma conta de Armazenamento do Microsoft Azure, como exemplo.
Criar uma conta de armazenamento
Crie uma conta de Armazenamento do Azure com az storage account create. Substitua <replace-with-your-unique-storage-account-name> por um nome que seja exclusivo em todos os locais do Azure, entre 3 a 24 caracteres de comprimento, usando apenas números e letras minúsculas.
Depois de criar a conta de armazenamento, recupere a cadeia de conexão para a conta de armazenamento em uma variável com az storage account show-connection-string. A cadeia de conexão é usada para criar um compartilhamento de arquivos em uma etapa posterior.
Para fins deste tutorial, a cadeia de conexão é usada para se conectar à conta de armazenamento. A Microsoft recomenda usar o fluxo de autenticação mais seguro disponível. O fluxo de autenticação descrito neste procedimento requer um alto grau de confiança no aplicativo e traz riscos que não estão presentes em outros fluxos. Você só deve usar esse fluxo quando outros fluxos mais seguros, como identidades gerenciadas, não forem viáveis.
Na caixa de pesquisa na parte superior do portal, insira Conta de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Em Contas de armazenamento, selecione a conta de armazenamento que você criou na etapa anterior.
Em Armazenamento de dados, selecione Compartilhamentos de arquivos.
Selecione +Compartilhamento de arquivos.
Insira ou selecione as informações a seguir em Novo compartilhamento de arquivo:
Configuração
Valor
Nome
Insira compartilhamento de arquivo.
Camada
Mantenha o padrão de Transação otimizada.
Selecione Avançar: Backup.
Desmarque Habilitar backup.
Selecione Examinar + criare Criar.
Crie um contexto para sua conta de armazenamento e chave com New-AzStorageContext. O contexto encapsula o nome da conta de armazenamento e a chave da conta:
Crie um compartilhamento de arquivos na conta de armazenamento com az storage share create. Em uma etapa posterior, esse compartilhamento de arquivos é montado para confirmar o acesso à rede para ele.
Por padrão, as contas de armazenamento aceitam conexões de clientes em qualquer rede, incluindo a Internet. Você pode restringir o acesso à rede da Internet e todas as outras sub-redes em todas as redes virtuais (exceto a sub-rede subnet-private na rede virtual vnet-1.)
Para restringir o acesso à rede para uma sub-rede:
Na caixa de pesquisa na parte superior do portal, insira Conta de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione sua conta de armazenamento.
Em Segurança + rede, selecione Rede.
Na guia Firewalls e redes virtuais, selecione Habilitado em redes virtuais e endereços IP selecionados em Acesso à rede pública.
Em Redes virtuais, selecione + Adicionar rede virtual existente.
Em Adicionar redes, insira ou selecione as informações a seguir:
Configuração
Valor
Subscription
Selecione sua assinatura.
Redes virtuais
Selecione vnet-1.
Sub-redes
Selecione subnet-private.
Selecione Adicionar.
Selecione Salvar para salvar as configurações de rede virtual.
Por padrão, as contas de armazenamento aceitam conexões de clientes em qualquer rede. Para limitar o acesso às redes selecionadas, altere a ação padrão para Negar com Update-AzStorageAccountNetworkRuleSet. Depois que o acesso à rede for negado, a conta de armazenamento não estará acessível em nenhuma rede.
Por padrão, as contas de armazenamento aceitam conexões de clientes em qualquer rede. Para limitar o acesso às redes selecionadas, altere a ação padrão para Negar com az storage account update. Depois que o acesso à rede for negado, a conta de armazenamento não estará acessível em nenhuma rede.
Para testar o acesso da rede a uma conta de armazenamento, implante uma máquina virtual em cada sub-rede.
Criar máquina virtual de teste
O procedimento a seguir cria uma máquina virtual de teste (VM) chamada vm-1 na rede virtual.
No portal, pesquise e selecione Máquinas virtuais.
Em Máquinas virtuais, selecione + Criar e, em seguida, Máquina virtual do Azure.
Na guia Informações Básicas em Criar uma máquina virtual, insira ou selecione as informações a seguir:
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Detalhes da instância
Nome da máquina virtual
Insira vm-1.
Região
Selecione Leste dos EUA 2.
Opções de disponibilidade
Selecione Nenhuma redundância de infraestrutura necessária.
Tipo de segurança
Deixe o padrão de Standard.
Imagem
Selecione Windows Server 2022 Datacenter – x64 Gen2.
Arquitetura de VMs;
Mantenha o padrão x64.
Tamanho
Selecione um tamanho.
Conta de administrador
Tipo de autenticação
Selecione Senha.
Nome de Usuário
insira azureuser.
Senha
Digite uma senha.
Confirmar senha
Digitar novamente a senha.
Regras de porta de entrada
Porta de entrada públicas
Selecione Nenhum.
Selecione a guia Rede na parte superior da página.
Insira ou selecione as seguintes informações na guia Rede:
Configuração
Valor
Interface de rede
Rede virtual
Selecione vnet-1.
Sub-rede
Selecione sub-rede-1 (10.0.0.0/24).
IP público
Selecione Nenhum.
Grupo de segurança de rede da NIC
Selecione Avançado.
Configurar um grupo de segurança de rede
Selecione Criar novo. Insira nsg-1 no nome. Deixe os demais valores como padrão e selecione OK.
Deixe o restante das configurações nos padrões e selecione Revisar + criar.
Examine as configurações e selecione Criar.
Observação
Máquinas virtuais em uma rede virtual com um bastion host não precisam de endereços IP públicos. O 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, confira dissociar um endereço IP público de uma VM do Azure.
Observação
O Azure fornece um IP de acesso de saída padrão para VMs que não receberam um endereço IP público ou que estão no pool de back-end de um balanceador de carga do Azure básico interno. O mecanismo de 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 é desabilitado 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.
Crie uma segunda máquina virtual repetindo as etapas na seção anterior. Substitua os valores a seguir em Criar uma máquina virtual:
Configuração
Valor
Nome da máquina virtual
Insira vm-private.
Sub-rede
Selecione subnet-private.
IP público
Selecione Nenhum.
Grupo de segurança de rede da NIC
Selecione Nenhum.
Aviso
Não prossiga para a próxima etapa até que a implantação seja concluída.
Criar a primeira máquina virtual
Crie uma máquina virtual na sub-rede subnet-public com New-AzVM. Ao executar o comando a seguir, as credenciais serão solicitadas. Os valores que você inseriu são configurados como o nome de usuário e senha para a VM.
São necessários alguns minutos para o Azure criar a VM. Não prossiga para a próxima etapa até que o Azure termine de criar a VM e retorne a saída para o PowerShell.
Para testar o acesso à rede para uma conta de armazenamento, implante uma VM para cada sub-rede.
Criar a primeira máquina virtual
Crie uma VM na sub-rede subnet-public com az vm create. Se as chaves SSH ainda não existirem em uma localização de chave padrão, o comando as criará. Para usar um conjunto específico de chaves, use a opção --ssh-key-value.
A máquina virtual que você criou anteriormente atribuída à sub-rede subnet-private é usada para confirmar o acesso à conta de armazenamento. A máquina virtual que você criou na seção anterior atribuída à sub-rede subnet-1 é usada para confirmar que o acesso à conta de armazenamento está bloqueada.
Obter chave de acesso da conta de armazenamento
Na caixa de pesquisa na parte superior do portal, insira Conta de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Em Conta de armazenamento, selecione sua conta de armazenamento.
Em Segurança + rede, selecione Chaves de acesso.
Copie o valor de key1. Pode ser necessário selecionar o botão Mostrar para exibir a chave.
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-private.
Selecione Bastion em Operações.
Insira o nome de usuário e a senha que você especificou ao criar a máquina virtual. Selecione Conectar.
Abra o Windows PowerShell. Use o script a seguir para mapear o compartilhamento de arquivo do Azure para a unidade Z.
Substitua <storage-account-key> pela chave que você copiou na etapa anterior.
Substitua <storage-account-name> com o nome da sua conta de armazenamento. Neste exemplo, é storage8675.
O PowerShell retorna uma saída semelhante à seguinte saída de exemplo:
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Z FileSystem \\storage8675.file.core.windows.net\f...
O compartilhamento de arquivos do Azure foi mapeado com êxito para a unidade Z.
Feche a conexão do Bastion com vm-private.
A máquina virtual que você criou anteriormente atribuída à sub-rede subnet-private é usada para confirmar o acesso à conta de armazenamento. A máquina virtual que você criou na seção anterior atribuída à sub-rede subnet-1 é usada para confirmar que o acesso à conta de armazenamento está bloqueada.
O PowerShell retorna uma saída semelhante à seguinte saída de exemplo:
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Z FileSystem \\storage8675.file.core.windows.net\f...
O compartilhamento de arquivos do Azure foi mapeado com êxito para a unidade Z.
Confirme se a VM não tem nenhuma conectividade de saída com nenhum outro endereço IP público:
ping bing.com
Você não recebe nenhuma resposta, pois o grupo de segurança de rede associado à sub-rede Privada não permite acesso de saída para endereços IP públicos que não sejam os endereços atribuídos ao serviço de Armazenamento do Microsoft Azure.
Feche a conexão do Bastion com vm-private.
SSH na vm privada da VM.
Execute o seguinte comando para armazenar o endereço IP da VM como uma variável de ambiente:
export IP_ADDRESS=$(az vm show --show-details --resource-group test-rg --name vm-private --query publicIps --output tsv)
ssh -o StrictHostKeyChecking=no azureuser@$IP_ADDRESS
Crie uma pasta para um ponto de montagem:
sudo mkdir /mnt/file-share
Monte o compartilhamento de arquivos do Azure para o diretório que você criou. Antes de executar o comando a seguir, substitua <storage-account-name> pelo nome da conta e <storage-account-key> com a chave que você recuperou em Criar uma conta de armazenamento.
sudo mount --types cifs //<storage-account-name>.file.core.windows.net/my-file-share /mnt/file-share --options vers=3.0,username=<storage-account-name>,password=<storage-account-key>,dir_mode=0777,file_mode=0777,serverino
Você receberá o aviso user@vm-private:~$. O compartilhamento de arquivos do Azure montado com êxito para /mnt/file-share.
Confirme se a VM não tem nenhuma conectividade de saída com nenhum outro endereço IP público:
ping bing.com -c 4
Você não recebe nenhuma resposta, pois o grupo de segurança de rede associado à sub-rede privada da sub-rede, não permite acesso de saída para endereços IP públicos que não sejam os endereços atribuídos ao serviço de Armazenamento do Microsoft Azure.
Saia da sessão SSH para a vm privada da VM.
Confirmar que o acesso é negado para a conta de armazenamento
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Selecione Bastion em Operações.
Insira o nome de usuário e a senha que você especificou ao criar a máquina virtual. Selecione Conectar.
Repita o comando anterior para tentar mapear a unidade para o compartilhamento de arquivo na conta de armazenamento. Pode ser necessário copiar a chave de acesso da conta de armazenamento novamente para este procedimento:
Na caixa de pesquisa na parte superior do portal, insira Conta de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Em Conta de armazenamento, selecione sua conta de armazenamento.
Em Armazenamento de dados, selecione Compartilhamentos de arquivos.
Selecione file-share.
Selecione Procurar no menu à esquerda.
Você deve receber a seguinte mensagem de erro:
Observação
O acesso é negado porque seu computador não está na sub-rede privada subnet-private da rede virtual vnet-1.
Da vm-1
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Selecione Bastion em Operações.
Insira o nome de usuário e a senha que você especificou ao criar a máquina virtual. Selecione Conectar.
Repita o comando anterior para tentar mapear a unidade para o compartilhamento de arquivo na conta de armazenamento. Pode ser necessário copiar a chave de acesso da conta de armazenamento novamente para este procedimento:
Acesso negado. Você receberá uma saída semelhante ao exemplo a seguir.
Get-AzStorageFile : The remote server returned an error: (403) Forbidden. HTTP Status Code: 403 - HTTP Error Message: This request isn't authorized to perform this operation
O computador não está na sub-rede privada subnet-private da rede virtual vnet-1.
SSH na vm pública da VM.
Execute o seguinte comando para armazenar o endereço IP da VM como uma variável de ambiente:
export IP_ADDRESS=$(az vm show --show-details --resource-group test-rg --name vm-public --query publicIps --output tsv)
ssh -o StrictHostKeyChecking=no azureuser@$IP_ADDRESS
Crie um diretório para um ponto de montagem:
sudo mkdir /mnt/file-share
Tente montar o compartilhamento de arquivos do Azure para o diretório que você criou. Este artigo presume que você implantou a versão mais recente do Ubuntu. Caso esteja usando versões anteriores do Ubuntu, consulte Montar no Linux para obter mais instruções sobre como montar compartilhamentos de arquivos. Antes de executar o comando a seguir, substitua <storage-account-name> pelo nome da conta e <storage-account-key> com a chave que você recuperou em Criar uma conta de armazenamento:
sudo mount --types cifs //storage-account-name>.file.core.windows.net/file-share /mnt/file-share --options vers=3.0,username=<storage-account-name>,password=<storage-account-key>,dir_mode=0777,file_mode=0777,serverino
Acesso negado, e você recebe um erro mount error(13): Permission denied, porque a vm pública da VM é implantada na sub-rede públicada sub-rede. A sub-rede pública da sub-rede não tem um ponto de extremidade de serviço habilitado para o Armazenamento do Microsoft Azure, e a conta de armazenamento só permite o acesso à rede por meio da sub-rede privadada sub-rede, não da sub-rede públicada sub-rede.
Sia da sessão SSH para a vm pública da VM.
Em seu computador, tente exibir os compartilhamentos em sua conta de armazenamento com az storage share list. Substitua <account-name> e <account-key> pelo nome da conta de armazenamento e a chave de Criar uma conta de armazenamento:
az storage share list \
--account-name <account-name> \
--account-key <account-key>
Acesso negado, e você recebe um erro Esta solicitação não está autorizada a executar esta operação, porque o computador não está na sub-rede privada da sub-rede para vnet-1 da rede virtual.
Quando terminar de usar os recursos que criou, você poderá excluir o grupo de recursos e todos os seus recursos.
No portal do Azure, procure por Grupos de recursos e selecione essa opção.
Na página Grupos de recursos, selecione o grupo de recursos test-rg.
Na página test-rg, selecione Excluir grupo de recursos .
Insira test-rg em Inserir o nome do grupo de recursos para confirmar a exclusão e, em seguida, selecione Excluir.
Quando não for mais necessário, você poderá usar Remove-AzResourceGroup para remover o grupo de recursos e todos os recursos que ele contém:
$cleanup = @{
Name = "test-rg"
}
Remove-AzResourceGroup @cleanup -Force
Limpar os recursos
Quando não for mais necessário, use az group delete para remover o grupo de recursos e todos os recursos que ele contém.
az group delete \
--name test-rg \
--yes \
--no-wait
Próximas etapas
Neste tutorial:
Você habilitou um ponto de extremidade de serviço para uma sub-rede de rede virtual.
Você aprendeu que pode habilitar pontos de extremidade de serviço para recursos implantados a partir de vários serviços do Azure.
Você criou uma conta de Armazenamento do Microsoft Azure e restringiu o acesso à rede para conta de armazenamento apenas aos recursos em uma sub-rede de rede virtual.
Se você tiver várias redes virtuais na sua conta, talvez queira estabelecer a conectividade entre elas para que os recursos possam se comunicar entre si. Para saber mais sobre como conectar redes virtuais, siga para o próximo tutorial.