Tutorial: Configurar uma Gateway de Aplicação com a terminação TLS com o portal do Azure

Pode utilizar o portal do Azure para configurar um gateway de aplicação com um certificado para terminação TLS que utiliza máquinas virtuais para servidores de back-end.

Neste tutorial, ficará a saber como:

  • Criar um certificado autoassinado
  • Criar um gateway de aplicação com o certificado
  • Criar as máquinas virtuais utilizadas como servidores de back-end
  • Testar o gateway de aplicação

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

Nota

Recomendamos que utilize o módulo Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Pré-requisitos

  • Uma subscrição do Azure

Criar um certificado autoassinado

Nesta secção, vai utilizar New-SelfSignedCertificate para criar um certificado autoassinado. O certificado é carregado para o portal do Azure quando cria o serviço de escuta do gateway de aplicação.

No seu computador local, abra uma janela de Windows PowerShell como administrador. Execute o seguinte comando para criar o certificado:

New-SelfSignedCertificate `
  -certstorelocation cert:\localmachine\my `
  -dnsname www.contoso.com

Deverá ver algo semelhante a esta resposta:

PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\my

Thumbprint                                Subject
----------                                -------
E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630  CN=www.contoso.com

Utilize Export-PfxCertificate com o Thumbprint que foi devolvido para exportar um ficheiro pfx do certificado. Os algoritmos PFX suportados estão listados na função PFXImportCertStore. Certifique-se de que a sua palavra-passe tem entre 4 e 12 carateres:

$pwd = ConvertTo-SecureString -String <your password> -Force -AsPlainText
Export-PfxCertificate `
  -cert cert:\localMachine\my\E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 `
  -FilePath c:\appgwcert.pfx `
  -Password $pwd

Iniciar sessão no Azure

Inicie sessão no portal do Azure.

Criar um gateway de aplicação

  1. No menu portal do Azure, selecione + Criar um recurso>Rede>Gateway de Aplicação ou procure Gateway de Aplicação na caixa de pesquisa do portal.

  2. Selecione Criar.

Separador Informações Básicas

  1. No separador Informações Básicas , introduza ou selecione estes valores:

    • Grupo de recursos: selecione myResourceGroupAG para o grupo de recursos. Se não existir, selecione Criar novo para criá-lo.

    • Nome do gateway de aplicação: introduza myAppGateway para o nome do gateway de aplicação.

      Criar novo gateway de aplicação: Noções básicas

  2. Para que o Azure comunique entre os recursos que cria, precisa de uma rede virtual. Pode criar uma nova rede virtual ou utilizar uma existente. Neste exemplo, irá criar uma nova rede virtual ao mesmo tempo que cria o gateway de aplicação. Gateway de Aplicação instâncias são criadas em sub-redes separadas. Neste exemplo, vai criar duas sub-redes: uma para o gateway de aplicação e outra para os servidores de back-end.

    Em Configurar rede virtual, crie uma nova rede virtual ao selecionar Criar nova. Na janela Criar rede virtual que é aberta, introduza os seguintes valores para criar a rede virtual e duas sub-redes:

    • Nome: introduza myVNet para o nome da rede virtual.

    • Nome da sub-rede (Gateway de Aplicação sub-rede): a grelha Sub-redes mostrará uma sub-rede denominada Predefinição. Altere o nome desta sub-rede para myAGSubnet.
      A sub-rede do gateway de aplicação só pode conter gateways de aplicação. Não são permitidos outros recursos.

    • Nome da sub-rede (sub-rede do servidor de back-end): na segunda linha da grelha Sub-redes , introduza myBackendSubnet na coluna Nome da sub-rede .

    • Intervalo de endereços (sub-rede do servidor de back-end): na segunda linha da Grelha de Sub-redes , introduza um intervalo de endereços que não se sobreponha ao intervalo de endereços de myAGSubnet. Por exemplo, se o intervalo de endereços de myAGSubnet for 10.0.0.0/24, introduza 10.0.1.0/24 para o intervalo de endereços de myBackendSubnet.

    Selecione OK para fechar a janela Criar rede virtual e guardar as definições de rede virtual.

    Criar novo gateway de aplicação: rede virtual

  3. No separador Informações Básicas , aceite os valores predefinidos para as outras definições e, em seguida, selecione Seguinte: Front-ends.

Separador Front-ends

  1. No separador Front-ends , verifique se o tipo de endereço IP de Front-end está definido como Público.
    Pode configurar o IP de Front-end para ser Público ou Privado de acordo com o seu caso de utilização. Neste exemplo, irá escolher um IP de Front-end Público.

    Nota

    Para o SKU Gateway de Aplicação v2, só pode escolher Configuração de IP de front-end público. A configuração de IP de front-end privado não está atualmente ativada para este SKU v2.

  2. Selecione Adicionar novo para o endereço IP público, introduza myAGPublicIPAddress para o nome do endereço IP público e, em seguida, selecione OK.

    Criar novo gateway de aplicação: front-ends

  3. Selecione Seguinte: Back-ends.

Separador Back-ends

O conjunto de back-end é utilizado para encaminhar pedidos para os servidores de back-end que servem o pedido. Os conjuntos de back-end podem ser compostos por NICs, conjuntos de dimensionamento de máquinas virtuais, IPs públicos, IPs internos, nomes de domínio completamente qualificados (FQDN) e back-ends multi-inquilino, como Serviço de Aplicações do Azure. Neste exemplo, irá criar um conjunto de back-end vazio com o gateway de aplicação e, em seguida, adicionar destinos de back-end ao conjunto de back-end.

  1. No separador Back-ends , selecione Adicionar um conjunto de back-end.

  2. Na janela Adicionar um conjunto de back-end que é aberta, introduza os seguintes valores para criar um conjunto de back-end vazio:

    • Nome: introduza myBackendPool para o nome do conjunto de back-end.
    • Adicionar conjunto de back-end sem destinos: selecione Sim para criar um conjunto de back-end sem destinos. Irá adicionar destinos de back-end depois de criar o gateway de aplicação.
  3. Na janela Adicionar um conjunto de back-end , selecione Adicionar para guardar a configuração do conjunto de back-end e regressar ao separador Back-ends .

    Criar novo gateway de aplicação: back-ends

  4. No separador Back-ends , selecione Seguinte: Configuração.

Separador Configuração

No separador Configuração , irá ligar o conjunto de front-end e back-end que criou com uma regra de encaminhamento.

  1. Selecione Adicionar uma regra de encaminhamento na coluna Regras de encaminhamento .

  2. Na janela Adicionar uma regra de encaminhamento que é aberta, introduza myRoutingRule para o Nome da regra.

  3. Uma regra de encaminhamento requer um serviço de escuta. No separador Serviço de Escuta na janela Adicionar uma regra de encaminhamento , introduza os seguintes valores para o serviço de escuta:

    • Nome do serviço de escuta: introduza myListener no nome do serviço de escuta.
    • IP de front-end: selecione Público para escolher o IP público que criou para o front-end.
    • Protocolo: selecione HTTPS.
    • Porta: verifique se a porta 443 foi introduzida.

    Em Definições https:

    • Escolha um certificado – selecione Carregar um certificado.

    • Ficheiro de certificado PFX – navegue até e selecione o ficheiro c:\appgwcert.pfx que criou anteriormente.

    • Nome do certificado – escreva mycert1 para o nome do certificado.

    • Palavra-passe – escreva a palavra-passe que utilizou para criar o certificado.

      Aceite os valores predefinidos para as outras definições no separador Serviço de Escuta e, em seguida, selecione o separador Destinos de back-end para configurar o resto da regra de encaminhamento.

    Criar novo gateway de aplicação: serviço de escuta

  4. No separador Destinos de back-end, selecione myBackendPool para o destino de Back-end.

  5. Para a definição HTTP, selecione Adicionar novo para criar uma nova definição de HTTP. A definição HTTP determinará o comportamento da regra de encaminhamento. Na janela Adicionar uma definição de HTTP que é aberta, introduza myHTTPSetting para o nome da definição http. Aceite os valores predefinidos para as outras definições na janela Adicionar uma definição http e, em seguida, selecione Adicionar para regressar à janela Adicionar uma regra de encaminhamento .

    Captura de ecrã a mostrar a definição Adicionar H T T P no separador configuração de Criar nova Gateway de Aplicação

  6. Na janela Adicionar uma regra de encaminhamento , selecione Adicionar para guardar a regra de encaminhamento e regressar ao separador Configuração .

    Criar novo gateway de aplicação: regra de encaminhamento

  7. Selecione Seguinte: Etiquetas e , em seguida, Seguinte: Rever + criar.

Separador Rever + criar

Reveja as definições no separador Rever + criar e, em seguida, selecione Criar para criar a rede virtual, o endereço IP público e o gateway de aplicação. O Azure pode demorar vários minutos a criar o gateway de aplicação. Aguarde até que a implementação seja concluída com êxito antes de avançar para a secção seguinte.

Adicionar destinos de back-end

Neste exemplo, irá utilizar máquinas virtuais como o back-end de destino. Pode utilizar máquinas virtuais existentes ou criar novas. Vai criar duas máquinas virtuais que o Azure utiliza como servidores de back-end para o gateway de aplicação.

Para tal, irá:

  1. Crie duas VMs novas, myVM e myVM2, para serem utilizadas como servidores de back-end.
  2. Instale o IIS nas máquinas virtuais para verificar se o gateway de aplicação foi criado com êxito.
  3. Adicione os servidores de back-end ao conjunto de back-end.

Criar uma máquina virtual

  1. No menu portal do Azure, selecione + Criar um recurso>ComputaçãoWindows Server 2016 Datacenter ou procure Windows Server na caixa de pesquisa do portal e selecione >Windows Server 2016 Datacenter.

  2. Selecione Criar.

    Gateway de Aplicação pode encaminhar o tráfego para qualquer tipo de máquina virtual utilizada no conjunto de back-end. Neste exemplo, vai utilizar um Windows Server 2016 Datacenter.

  3. Introduza estes valores no separador Noções Básicas para as seguintes definições de máquina virtual:

    • Grupo de recursos: selecione myResourceGroupAG para o nome do grupo de recursos.
    • Nome da máquina virtual: introduza myVM para o nome da máquina virtual.
    • Nome de utilizador: introduza um nome para o nome de utilizador do administrador.
    • Palavra-passe: introduza uma palavra-passe para a conta de administrador.
  4. Aceite as outras predefinições e, em seguida, selecione Seguinte: Discos.

  5. Aceite as predefinições do separador Discos e, em seguida, selecione Seguinte: Rede.

  6. No separador Rede , verifique se myVNet está selecionado para a Rede virtual e se a Sub-rede está definida como myBackendSubnet. Aceite as outras predefinições e, em seguida, selecione Seguinte: Gestão.

    Gateway de Aplicação pode comunicar com instâncias fora da rede virtual em que se encontra, mas tem de garantir que existe conectividade IP.

  7. No separador Gestão , defina Diagnóstico de arranque comoDesativar. Aceite as outras predefinições e, em seguida, selecione Rever + criar.

  8. No separador Rever + criar , reveja as definições, corrija todos os erros de validação e, em seguida, selecione Criar.

  9. Aguarde pela conclusão da implementação antes de continuar.

Instalar o IIS para teste

Neste exemplo, vai instalar o IIS nas máquinas virtuais apenas para verificar se o Azure criou o gateway de aplicação com êxito.

  1. Abra Azure PowerShell. Para tal, selecione Cloud Shell na barra de navegação superior do portal do Azure e, em seguida, selecione PowerShell na lista pendente.

    Instalar uma extensão personalizada

  2. Altere a definição de localização do seu ambiente e, em seguida, execute o seguinte comando para instalar o IIS na máquina virtual:

           Set-AzVMExtension `
             -ResourceGroupName myResourceGroupAG `
             -ExtensionName IIS `
             -VMName myVM `
             -Publisher Microsoft.Compute `
             -ExtensionType CustomScriptExtension `
             -TypeHandlerVersion 1.4 `
             -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
             -Location <location>
    
  3. Crie uma segunda máquina virtual e instale o IIS com os passos que concluiu anteriormente. Utilize myVM2 para o nome da máquina virtual e para a definição VMName do cmdlet Set-AzVMExtension .

Adicionar servidores de back-end ao conjunto de back-end

  1. Selecione Todos os recursos e, em seguida, selecione myAppGateway.

  2. Selecione Conjuntos de back-end no menu esquerdo.

  3. Selecione myBackendPool.

  4. Em Tipo de destino, selecione Máquina virtual na lista pendente.

  5. Em Destino, selecione a interface de rede em myVM na lista pendente.

  6. Repita para adicionar a interface de rede para myVM2.

    Adicionar servidores back-end

  7. Selecione Guardar.

  8. Aguarde até que a implementação seja concluída antes de avançar para o passo seguinte.

Testar o gateway de aplicação

  1. Selecione Todos os recursos e, em seguida, selecione myAGPublicIPAddress.

    Registar o endereço IP público do gateway de aplicação

  2. Na barra de endereço do browser, escreva https://< o endereço> IP do gateway de aplicação.

    Para aceitar o aviso de segurança se tiver utilizado um certificado autoassinado, selecione Detalhes (ou Avançadas no Chrome) e, em seguida, aceda à página Web:

    Aviso de segurança

    O site IIS protegido é apresentado como no exemplo seguinte:

    Testar o URL base no gateway de aplicação

Limpar os recursos

Quando já não for necessário, elimine o grupo de recursos e todos os recursos relacionados. Para tal, selecione o grupo de recursos e selecione Eliminar grupo de recursos.

Passos seguintes

Neste tutorial:

  • Criou um certificado autoassinado
  • Criou um gateway de aplicação com o certificado

Para saber mais sobre Gateway de Aplicação suporte TLS, veja TLS ponto a ponto com Gateway de Aplicação e Gateway de Aplicação política TLS.

Para saber como criar e configurar um Gateway de Aplicação para alojar vários sites com o portal do Azure, avance para o próximo tutorial.