Configurar o túnel forçado utilizando o modelo de implementação clássico

O túnel forçado permite redirecionar ou “forçar” todo o tráfego associado à Internet novamente para a localização no local através de um túnel de VPN site a site para inspeção e auditoria. Este é um requisito de segurança crítico para a maioria das políticas de TI empresariais. Sem túnel forçado, o tráfego vinculado à Internet a partir das VMs no Azure atravessará sempre a partir da infraestrutura de rede do Azure diretamente para a Internet, sem a opção de permitir que inspecione ou audite o tráfego. O acesso não autorizado à Internet pode potencialmente levar à divulgação de informações ou a outros tipos de falhas de segurança.

Os passos neste artigo aplicam-se ao modelo de implementação clássica (legada) e não se aplicam ao modelo de implementação atual, Resource Manager. A menos que pretenda trabalhar especificamente no modelo de implementação clássica, recomendamos que utilize a versão Resource Manager deste artigo.

Nota

Este artigo é escrito para o modelo de implementação clássico (legado). Recomendamos que utilize o modelo de implementação mais recente do Azure. O modelo de implementação Resource Manager é o modelo de implementação mais recente e oferece mais opções e compatibilidade de funcionalidades do que o modelo de implementação clássica. Para compreender a diferença entre estes dois modelos de implementação, veja Compreender os modelos de implementação e o estado dos seus recursos.

Se quiser utilizar uma versão diferente deste artigo, utilize o índice no painel esquerdo.

Requisitos e considerações

O túnel forçado no Azure é configurado através de rotas definidas pelo utilizador (UDR) de rede virtual. O redirecionamento do tráfego para um site no local é expresso como uma Rota Predefinida para o gateway de VPN do Azure. A secção seguinte lista a limitação atual da tabela de encaminhamento e as rotas de um Rede Virtual do Azure:

  • Cada sub-rede de rede virtual tem uma tabela de encaminhamento de sistema incorporada. A tabela de encaminhamento do sistema tem os seguintes três grupos de rotas:

    • Rotas da VNet local: Diretamente para as VMs de destino na mesma rede virtual.
    • Rotas no local: Para o gateway de VPN do Azure.
    • Rota predefinida: Diretamente para a Internet. Os pacotes destinados aos endereços IP privados não abrangidos pelas duas rotas anteriores serão removidos.
  • Com a versão das rotas definidas pelo utilizador, pode criar uma tabela de encaminhamento para adicionar uma rota predefinida e, em seguida, associar a tabela de encaminhamento às sub-redes da VNet para ativar o túnel forçado nessas sub-redes.

  • Tem de definir um "site predefinido" entre os sites locais em vários locais ligados à rede virtual.

  • O túnel forçado tem de estar associado a uma VNet que tenha um gateway de VPN de encaminhamento dinâmico (não um gateway estático).

  • O túnel forçado do ExpressRoute não está configurado através deste mecanismo, mas, em vez disso, é ativado através da publicidade de uma rota predefinida através das sessões de peering BGP do ExpressRoute. Para obter mais informações, consulte o artigo O que é o ExpressRoute?

Descrição geral da configuração

No exemplo seguinte, a sub-rede de Front-end não é forçada a fazer um túnel. As cargas de trabalho na sub-rede de Front-end podem continuar a aceitar e responder diretamente aos pedidos dos clientes da Internet. As sub-redes de camada média e back-end são forçadas a fazer túneis. Quaisquer ligações de saída destas duas sub-redes para a Internet são forçadas ou redirecionadas de volta para um site no local através de um dos túneis VPN S2S.

Isto permite-lhe restringir e inspecionar o acesso à Internet a partir das suas máquinas virtuais ou serviços cloud no Azure, continuando a ativar a arquitetura de serviço de várias camadas necessária. Também pode aplicar túneis forçados a toda a rede virtual se não existirem cargas de trabalho com acesso à Internet nas suas redes virtuais.

Diagrama a mostrar a arquitetura de túnel forçado.

Pré-requisitos

Antes de iniciar a configuração, verifique se tem os seguintes itens:

  • Uma subscrição do Azure. Se ainda não tiver uma subscrição do Azure, pode ativar os Benefícios de subscritor do MSDN ou inscrever-se numa conta gratuita.
  • Uma rede virtual configurada.
  • Ao trabalhar com o modelo de implementação clássica, não pode utilizar o Azure Cloud Shell. Em vez disso, tem de instalar a versão mais recente dos cmdlets do PowerShell do Azure Service Management (SM) localmente no seu computador. Estes cmdlets são diferentes dos cmdlets do AzureRM ou do Az. Para instalar os cmdlets de SM, veja Instalar cmdlets da Gestão de Serviços. Para obter mais informações sobre Azure PowerShell em geral, veja a documentação do Azure PowerShell.

Configurar túnel forçado

O procedimento seguinte ajuda-o a especificar o túnel forçado para uma rede virtual. Os passos de configuração correspondem ao ficheiro de configuração da rede VNet. Neste exemplo, a rede virtual "MultiTier-VNet" tem três sub-redes: sub-redes Front-end, Midtier e Back-end, com quatro ligações em vários locais: "DefaultSiteHQ" e três Ramos.

<VirtualNetworkSite name="MultiTier-VNet" Location="North Europe">
     <AddressSpace>
      <AddressPrefix>10.1.0.0/16</AddressPrefix>
        </AddressSpace>
        <Subnets>
          <Subnet name="Frontend">
            <AddressPrefix>10.1.0.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="Midtier">
            <AddressPrefix>10.1.1.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="Backend">
            <AddressPrefix>10.1.2.0/23</AddressPrefix>
          </Subnet>
          <Subnet name="GatewaySubnet">
            <AddressPrefix>10.1.200.0/28</AddressPrefix>
          </Subnet>
        </Subnets>
        <Gateway>
          <ConnectionsToLocalNetwork>
            <LocalNetworkSiteRef name="DefaultSiteHQ">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch1">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch2">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch3">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
        </Gateway>
      </VirtualNetworkSite>
    </VirtualNetworkSite>

Os passos seguintes definem "DefaultSiteHQ" como a ligação de site predefinida para túnel forçado e configure as sub-redes Midtier e Back-end para utilizar o túnel forçado.

  1. Abra a consola do PowerShell com direitos elevados. Ligue-se à sua conta com o seguinte exemplo:

    Add-AzureAccount
    
  2. Criar uma tabela de encaminhamento. Utilize o seguinte cmdlet para criar a tabela de rotas.

    New-AzureRouteTable –Name "MyRouteTable" –Label "Routing Table for Forced Tunneling" –Location "North Europe"
    
  3. Adicione uma rota predefinida à tabela de encaminhamento.

    O exemplo seguinte adiciona uma rota predefinida à tabela de encaminhamento criada no Passo 1. A única rota suportada é o prefixo de destino "0.0.0.0/0" para o "VPNGateway" NextHop.

    Get-AzureRouteTable -Name "MyRouteTable" | Set-AzureRoute –RouteTable "MyRouteTable" –RouteName "DefaultRoute" –AddressPrefix "0.0.0.0/0" –NextHopType VPNGateway
    
  4. Associe a tabela de encaminhamento às sub-redes.

    Depois de criar uma tabela de encaminhamento e de adicionar uma rota, utilize o seguinte exemplo para adicionar ou associar a tabela de rotas a uma sub-rede VNet. O exemplo adiciona a tabela de rotas "MyRouteTable" às sub-redes Midtier e Back-end da VNet MultiTier-VNet.

    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Midtier" -RouteTableName "MyRouteTable"
    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Backend" -RouteTableName "MyRouteTable"
    
  5. Atribuir um site predefinido para túnel forçado.

    No passo anterior, os scripts de cmdlets de exemplo criaram a tabela de encaminhamento e associaram a tabela de rotas a duas das sub-redes da VNet. O passo restante é selecionar um site local entre as ligações de vários sites da rede virtual como o site ou túnel predefinido.

    $DefaultSite = @("DefaultSiteHQ")
    Set-AzureVNetGatewayDefaultSite –VNetName "MultiTier-VNet" –DefaultSite "DefaultSiteHQ"
    

Cmdlets adicionais do PowerShell

Para eliminar uma tabela de rotas

Remove-AzureRouteTable -Name <routeTableName>

Para listar uma tabela de rotas

Get-AzureRouteTable [-Name <routeTableName> [-DetailLevel <detailLevel>]]

Para eliminar uma rota de uma tabela de rotas

Remove-AzureRouteTable –Name <routeTableName>

Para remover uma rota de uma sub-rede

Remove-AzureSubnetRouteTable –VirtualNetworkName <virtualNetworkName> -SubnetName <subnetName>

Para listar a tabela de rotas associada a uma sub-rede

Get-AzureSubnetRouteTable -VirtualNetworkName <virtualNetworkName> -SubnetName <subnetName>

Para remover um site predefinido de um gateway de VPN da VNet

Remove-AzureVnetGatewayDefaultSite -VNetName <virtualNetworkName>