Integrar o Ambiente do Serviço de Aplicativo do ILB com o Gateway de Aplicativo do Azure
O Ambiente do Serviço de Aplicativo é uma implantação do Serviço de Aplicativo do Azure na sub-rede da rede virtual do Azure de um cliente. Ele pode ser implantado com um ponto de extremidade externo ou interno para acesso ao aplicativo. A implantação do App Service Environment com um ponto de extremidade interno é chamada de Serviço de Aplicativo Environment do balanceador de carga interno (ILB).
Firewalls do aplicativo Web ajudam na segurança do aplicativos Web ao inspecionar o tráfego de entrada da Web para bloquear injeções de SQL, script entre sites, uploads de malware, DDoS de aplicativo e outros ataques. Você pode obter um dispositivo WAF no Azure Marketplace ou usar o Gateway de Aplicativo do Azure.
O Gateway de Aplicativo do Azure é um dispositivo virtual que fornece balanceamento de carga de camada 7, descarregamento de TLS e proteção de firewall de aplicativo Web (WAF). Ele pode escutar em um endereço IP público e rotear tráfego para o ponto de extremidade do aplicativo. As informações a seguir descrevem como integrar um Gateway de Aplicativo com WAF configurado a um aplicativo em um ILB ASE.
A integração do gateway de aplicativo com o Ambiente do Serviço de Aplicativo do ILB é em um nível de aplicativo. Quando você configura o gateway de aplicativo com seu Ambiente do Serviço de Aplicativo do ILB, você faz isso para aplicativos específicos no Ambiente do Serviço de Aplicativo do ILB.
Neste passo a passo, você vai:
- Criar um Gateway de Aplicativo do Azure.
- Configure o gateway de aplicativo para apontar para um aplicativo em seu Ambiente do Serviço de Aplicativo do ILB.
- Editar o nome do host DNS público que aponta para o gateway de aplicativo.
Pré-requisitos
Para integrar o gateway de aplicativo ao Ambiente do Serviço de Aplicativo do ILB, você precisa de:
- Um Ambiente do Serviço de Aplicativo do ILB.
- Uma zona DNS privada para o ILB Serviço de Aplicativo Environment.
- Um aplicativo em execução no Ambiente do Serviço de Aplicativo do ILB.
- Um nome DNS público para seu gateway de aplicativo.
- Se você precisar usar criptografia TLS no gateway de aplicativo, será necessário um certificado público válido usado para vincular ao seu gateway de aplicativo.
Ambiente de Serviço de Aplicativo ILB
Para obter detalhes sobre como criar um Ambiente de Serviço de Aplicativo ILB, veja Criar um Ambiente de Serviço de Aplicativo no portal do Azure e Criar um Ambiente de Serviço de Aplicativo com o modelo do Azure Resource Manager.
Após a criação do ambiente de Serviço de Aplicativo ILB, o domínio padrão é
<YourAseName>.appserviceenvironment.net
.Um balanceador de carga interno é provisionado para acesso de entrada. Você pode verificar o endereço de entrada nos endereços IP em Configurações do ambiente do Serviço de Aplicativo. É possível criar uma zona DNS privada mapeada para esse endereço IP posteriormente.
Uma zona DNS privada
É necessário uma zona DNS privada para resolução interna de nomes. Crie-o usando o nome do Ambiente de Serviço de Aplicativo usando os conjuntos de registros mostrados na tabela a seguir (para obter instruções, veja Início Rápido - Criar uma zona DNS privada do Azure usando o portal do Azure).
Nome | Tipo | Valor |
---|---|---|
* | Um | Endereço de entrada do ambiente de Serviço de Aplicativo |
@ | Um | Endereço de entrada do ambiente de Serviço de Aplicativo |
@ | SOA | Nome DNS do ambiente do Serviço de Aplicativo |
*.scm | Um | Endereço de entrada do ambiente de Serviço de Aplicativo |
Serviço de aplicativo no ambiente de Serviço de Aplicativo ILB
Você precisa criar um plano de serviço de aplicativo e um aplicativo no seu ambiente de serviço de aplicativo do ILB. Ao criar o aplicativo no portal, selecione seu Ambiente de Serviço de Aplicativo ILB como a Região.
Um nome DNS público para o gateway de aplicativo
É necessário um nome de domínio roteável para se conectar ao gateway de aplicativo na Internet. Nesse caso, usei um nome de domínio estável asabuludemo.com
e planejamento para me conectar a um Serviço de Aplicativo com este nome de domínio app.asabuludemo.com
. O endereço IP mapeado para este nome de domínio de aplicativo precisa ser definido como o endereço IP público do gateway de aplicativo após a criação do gateway de aplicativo.
Com um domínio público mapeado para o gateway de aplicativo, não é preciso configurar um domínio personalizado no Serviço de Aplicativo. É possível comprar um nome de domínio personalizado nos Domínios do Serviço de Aplicativo.
Um certificado público válido
Para aumentar a segurança, vincule um certificado TLS para criptografia de sessão. Para vincular o certificado TLS ao gateway de aplicativo, é necessário um certificado público válido com as seguintes informações. Com certificados do Serviço de Aplicativo, você pode comprar um certificado TLS e exportá-lo no formato .pfx
.
Nome | Valor | Descrição |
---|---|---|
Nome comum | <yourappname>.<yourdomainname> , por exemplo: app.asabuludemo.com ou *.<yourdomainname> , por exemplo: *.asabuludemo.com |
Um certificado padrão ou um certificado curinga para o gateway de aplicativo |
Nome Alternativo da Entidade | <yourappname>.scm.<yourdomainname> , por exemplo: app.scm.asabuludemo.com ou *.scm.<yourdomainname> , por exemplo: *.scm.asabuludemo.com |
A rede SAN que permite se conectar ao serviço kudu do Serviço de Aplicativo. Trata-se de uma configuração opcional caso não queira publicar o serviço kudu do Serviço de Aplicativo na Internet. |
O arquivo de certificado deve ter uma chave privada e ser salvo no formato .pfx
. O certificado é importado para o gateway de aplicativo posteriormente.
Criar um Gateway de Aplicativo
Confira uma criação básica do gateway de aplicativo no Tutorial: Criar um gateway de aplicativo com um Firewall de Aplicativo Web usando o portal do Azure.
Nesse tutorial, usamos o portal do Azure para criar um gateway de aplicativo com o ILB App Service Environment.
No portal do Azure, selecione Novo>Rede>Gateway de Aplicativo para criar um gateway de aplicativo.
Configuração básica
Na lista suspensa Camada, selecione Standard V2 ou WAF V2 para habilitar o recurso WAF no gateway de aplicativo.
Configuração de front-ends
Selecione o tipo de endereço IP de front-end como Público, Privado ou Ambos. Se definir como Privado ou Ambos, será preciso atribuir um endereço IP estático no intervalo de sub-rede do gateway de aplicativo. Nesse caso, definimos como IP público apenas para o ponto de extremidade público.
Endereço IP público – é preciso associar um endereço IP público para o acesso público do gateway de aplicativo. Grave esse endereço IP, pois será preciso adicionar um registro em seu serviço DNS posteriormente.
Configuração de back-ends
Digite um nome de pool de back-end e selecione os Serviços de Aplicativos ou o endereço IP ou o FQDN no Tipo de destino. Nesse caso, definimos como Serviços de aplicativos e selecionamos o nome do Serviço de Aplicativo na lista suspensa de destino.
Definição de configuração
Na definição de Configuração, é preciso adicionar uma regra de roteamento selecionando o ícone Adicionar uma regra de roteamento.
É necessário configurar um Ouvinte e Destinos de back-end em uma regra de roteamento. É possível adicionar um ouvinte HTTP para a implantação de prova de conceito ou adicionar um ouvinte HTTPS para aprimoramento de segurança.
Para se conectar ao gateway de aplicativo com o protocolo HTTP, pode-se criar um ouvinte com as seguintes configurações:
Parâmetro Valor Descrição Nome da regra Por exemplo: http-routingrule
Nome do roteamento Nome do ouvinte Por exemplo: http-listener
Nome do ouvinte IP de front-end Público Para acesso à Internet, defina como Público Protocolo HTTP Não use criptografia TLS Porta 80 Porta HTTP padrão Tipo de ouvinte Multissite Permite a escuta de vários sites no gateway de aplicativo Tipo de Host Múltiplos/Curinga Defina como vários ou nome de site curinga se o tipo de ouvinte estiver definido como vários sites. Nome do host Por exemplo: app.asabuludemo.com
Defina como um nome de domínio roteável para o Serviço de Aplicativo Para se conectar ao gateway de aplicativo com criptografia TLS, você pode criar um ouvinte com as seguintes configurações:
Parâmetro Valor Descrição Nome da regra Por exemplo: https-routingrule
Nome do roteamento Nome do ouvinte Por exemplo: https-listener
Nome do ouvinte IP de front-end Público Para acesso à Internet, defina como Público Protocolo HTTPS Uso de criptografia do TLS Porta 443 Porta HTTPS padrão Configurações de https Carregar um certificado Carregar um certificado contém o CN e a chave privada com o formato .pfx. Tipo de ouvinte Multissite Permite a escuta de vários sites no gateway de aplicativo Tipo de Host Múltiplos/Curinga Defina como vários ou nome de site curinga se o tipo de ouvinte estiver definido como vários sites. Nome do host Por exemplo: app.asabuludemo.com
Defina como um nome de domínio roteável para o Serviço de Aplicativo É preciso configurar um Pool de back-end e uma configuração http em Destinos de back-end. O pool de back-end foi configurado em etapas anteriores. Selecione o link Adicionar novo para adicionar uma configuração HTTP.
Configurações HTTP listadas na tabela a seguir:
Parâmetro Valor Descrição Nome da configuração de HTTP Por exemplo: https-setting
Nome da configuração de HTTP Protocolo de back-end HTTPS Uso de criptografia do TLS Porta de back-end 443 Porta HTTPS padrão Usar um Certificado de Autoridade de Certificação conhecido Sim O nome de domínio padrão do ILB Serviço de Aplicativo Environment é .appserviceenvironment.net
. O certificado desse domínio é emitido por uma autoridade raiz pública confiável. Na configuração de certificado raiz confiável, pode-se definir o uso de um certificado raiz confiável bem conhecido de autoridade de certificação.Substituir por um novo nome do host Sim O cabeçalho do nome do host é substituído ao conectar-se ao aplicativo no ILB Serviço de Aplicativo Environment Substituir o nome do host Escolher o nome do host do destino de back-end Ao definir o pool de back-end para o Serviço de Aplicativo, o host pode ser escolhido no destino de back-end Criar investigações personalizadas Não Use investigação de integridade padrão
Configurar uma integração de gateway de aplicativo com o ILB Serviço de Aplicativo Environment
Para acessar o ILB Serviço de Aplicativo Environment a partir do gateway de aplicativo, você precisa verificar se há um link de rede virtual para a zona DNS privada. Se não houver uma rede virtual vinculada à rede virtual do seu gateway de aplicativo, adicione um link de rede virtual seguindo as etapas a seguir.
Configurar links de rede virtual com uma zona DNS privada
- Para configurar o link de rede virtual com a zona DNS privada, acesse o plano de configuração da zona DNS privada. Selecione os Links da rede virtual>Adicionar
- Insira o Nome do link e selecione a assinatura e rede virtual respectiva em que o gateway de aplicativo reside.
- O status de integridade do back-end pode ser confirmado na Integridade do back-end no plano do gateway de aplicativo.
Adicionar um registro DNS público
É preciso configurar um mapeamento DNS adequado ao acessar um gateway de aplicativo da Internet.
- O endereço IP público do gateway de aplicativo pode ser encontrado em Configurações de IP de front-end no plano do gateway de aplicativo.
- Tomando o serviço DNS do Azure como exemplo, você pode adicionar um conjunto de registros para mapear o nome de domínio do aplicativo para o endereço IP público do gateway de aplicativo.
Validar conexão
- Em um acesso por computador da Internet, você pode verificar a resolução de nome do nome de domínio do aplicativo para o endereço IP público do gateway de aplicativo.
- Em um acesso por computador da Internet, teste o acesso à Web em um navegador.