Implementação de padrão para entrada segura de rede

A entrada segura de rede encapsula vários padrões de design, incluindo os padrões de roteamento global, descarregamento global e monitoramento de integridade de serviços. Você pode usar a implementação de padrão neste artigo como um gateway para qualquer carga de trabalho HTTP ou HTTPS que exija alta disponibilidade ou confiabilidade fornecendo roteamento global seguro para cargas de trabalho em regiões diferentes com failover de baixa latência.

Vídeo: Implementação de entrada segura de rede

Requisitos de padrão

Este artigo descreve três requisitos nos quais a implementação de padrão para entrada segura de rede se concentra: roteamento global, failover de baixa latência e mitigação de ataques na borda.

Roteamento global

O padrão de entrada segura de rede encapsula o padrão de roteamento global. Dessa forma, a implementação pode rotear solicitações para cargas de trabalho em regiões diferentes.

Diagrama que mostra uma solicitação HTTPS sendo roteada para duas cargas de trabalho em regiões diferentes.

Failover de baixa latência

A implementação deve ser capaz de identificar cargas de trabalho saudáveis e não saudáveis e ajustar o roteamento adequadamente em tempo hábil. A latência deve ser capaz de dar suporte ao ajuste do roteamento em questão de minutos.

Diagrama que mostra uma solicitação HTTPS não sendo roteada para uma carga de trabalho não íntegra.

Como mitigar ataques na borda

A mitigação de ataques na borda requer a parte "segurança de rede" da implementação. As cargas de trabalho ou os serviços de PaaS (plataforma como serviço) não devem estar acessíveis pela Internet. O tráfego da Internet só deve ser capaz de rotear pelo gateway. O gateway deve ter a capacidade de mitigar explorações.

Diagrama que mostra uma solicitação HTTPS com uma instrução SQL na cadeia de consulta de uma solicitação que não está sendo interrompida na borda.

Padrões

Esta solução implementa os seguintes padrões de design:

Projetar

Diagrama que mostra uma solicitação fluindo pelo Azure Front Door Premium para selos regionais.

O diagrama mostra uma solicitação HTTPS fluindo para uma caixa do Azure Front Door Premium, que tem um firewall de aplicativo Web. Isso ilustra a integração entre o Azure Front Door Premium e o Firewall do Aplicativo Web do Azure. Em seguida, o diagrama mostra a solicitação fluindo pelo Link Privado para dois selos em regiões diferentes. Cada carimbo tem um site estático e um balanceador de carga interno. As solicitações fluem por meio do Private Link para os sites estáticos e os balanceadores de carga nas duas instâncias.

Essa implementação inclui os seguintes detalhes:

  • Ele usa contas do Armazenamento de Blobs do Azure para simular cargas de trabalho da Web estáticas em execução em duas regiões. Essa implementação não inclui cargas de trabalho em execução por trás de um ILB (balanceador de carga interno). O diagrama mostra um ILB para ilustrar que essa implementação funcionará para cargas de trabalho privadas executadas com a proteção de um ILB.
  • Ele usa a camada do Azure Front Door Premium como porta de entrada global.
  • A instância do Azure Front Door tem uma política de WAF (firewall de aplicativo Web) global configurada com regras gerenciadas que ajudam a proteger contra explorações comuns.
  • As contas de armazenamento não são expostas pela Internet.
  • A camada Premium do Azure Front Door acessa as contas de armazenamento por meio do Link Privado do Azure.
  • A instância do Azure Front Door tem a seguinte configuração de alto nível:
    • Um ponto de extremidade com uma única rota que aponta para um único grupo de origem. Um grupo de origem é uma coleção de origens ou back-ends.
    • O grupo de origem tem uma origem configurada para apontar cada conta de armazenamento.
    • Cada origem solicita acesso ao Link Privado à conta de armazenamento.
    • O grupo de origem tem investigações de integridade configuradas para acessar uma página HTML nas contas de armazenamento. A página HTML está agindo como o ponto de verificação de integridade para cargas estáticas de trabalho. Se as investigações puderem acessar com êxito a origem em três das últimas quatro tentativas, a origem será considerada íntegra.

Componentes

Solicitação da Web

  • O Firewall do Aplicativo Web do Azure é um serviço de segurança que protege aplicativos Web contra ameaças e vulnerabilidades comuns usando conjuntos de regras gerenciados pela Microsoft. Nessa arquitetura, a camada Premium se integra ao Azure Front Door Premium para inspecionar e bloquear o tráfego HTTP e HTTPS mal-intencionados antes de atingir os serviços de back-end.
  • O Link Privado do Azure é um serviço que permite conectividade privada com os serviços de PaaS do Azure pela rede de backbone da Microsoft. Nessa arquitetura, ele permite que o Azure Front Door acesse com segurança contas de armazenamento sem expô-las à Internet pública.
  • O Azure Front Door Premium é uma rede global de entrega de aplicativos que fornece recursos de segurança, balanceamento de carga, roteamento e camada 7. Nessa arquitetura, ele serve como o gateway global seguro. Ele roteia o tráfego para cargas de trabalho regionais e impõe políticas de Firewall de Aplicativo Web enquanto se comunica de forma privada por meio do Link Privado. A camada Premium dá suporte aos seguintes componentes:
    • O Link Privado permite que o Azure Front Door se conecte a serviços de PaaS ou cargas de trabalho em uma rede virtual privada pela rede de backbone da Microsoft.
    • Os conjuntos de regras gerenciados pela Microsoft estão disponíveis apenas na camada Premium do Azure Front Door, que se integra à camada Premium do Firewall de Aplicativo Web para proteção contra explorações comuns.
  • O Armazenamento do Azure é um serviço de armazenamento em nuvem escalonável para dados estruturados e não estruturados. Nessa arquitetura, o Armazenamento de Blobs conta para ativos da Web estáticos e serve como destinos de origem para o roteamento do Azure Front Door.
  • Um ILB distribui o tráfego IP privado em uma rede virtual ou em redes conectadas. Essa implementação não usa diretamente um ILB, mas é representada na arquitetura para mostrar como as cargas de trabalho privadas por trás de um ILB podem ser roteadas de forma semelhante às contas de armazenamento.

Operações

Proteger recursos de uma perspectiva de rede ajuda a proteger contra explorações, mas também isola os recursos de processos ou administradores que talvez precisem acessar esses recursos. Por exemplo, um agente de build em um pipeline de DevOps pode precisar acessar a conta de armazenamento para implantar uma atualização no aplicativo Web. Além disso, talvez um administrador precise acessar o recurso para fins de solução de problemas.

Para ilustrar o fornecimento de acesso seguro à rede para fins operacionais, essa implementação implanta uma VM (máquina virtual) em uma rede virtual que tem acesso de Link Privado às contas de armazenamento. Essa implementação implanta o Azure Bastion, que o administrador pode usar para se conectar à VM. Para o cenário de implantação, um agente de build privado pode ser implantado na rede virtual, de forma semelhante à máquina virtual.

Aqui estão os detalhes sobre os componentes das operações:

  • A Rede Virtual do Azure é um serviço de rede que permite a comunicação segura entre recursos. Nessa arquitetura, a rede virtual contém os componentes necessários para que um administrador se comunique com segurança com a conta de armazenamento pela rede privada de backbone da Microsoft.
  • As Máquinas Virtuais do Azure são uma oferta de IaaS (infraestrutura como serviço) que fornece recursos de computação escalonáveis. Nessa arquitetura, uma VM serve como um jump box para os administradores acessarem com segurança os recursos protegidos pela rede.
  • O Azure Bastion é um PaaS gerenciado que fornece acesso rdp (Protocolo de Área de Trabalho Remota) e SSH (Secure Shell) a VMs sem expor endereços IP públicos. Nessa arquitetura, ele permite que os administradores se conectem à VM jump box por SSH para operações seguras.
  • Um ponto de extremidade de Link Privado é uma interface de rede que se conecta aos serviços do Azure por meio do Link Privado e atribui um endereço IP privado da rede virtual. Nessa arquitetura, o ponto de extremidade privado se conecta ao serviço PaaS da conta de armazenamento. Essa conexão permite que os recursos na rede virtual privada se comuniquem com a conta de armazenamento pelo endereço IP privado.
  • Uma zona DNS privada do Azure é um serviço DNS (Sistema de Nomes de Domínio) que resolve nomes de domínio para endereços IP privados em uma rede virtual. Nessa arquitetura, ele resolve o nome do host de Link Privado da conta de armazenamento para seu endereço IP privado, o que permite o acesso seguro da VM.

Fluxo de solicitação da Web

Diagrama que mostra o fluxo de uma solicitação da Web.

O diagrama mostra um usuário fazendo uma solicitação da Web para o Azure Front Door. Na caixa do Azure Front Door, o diagrama mostra cada uma das etapas do fluxo de roteamento do Azure Front Door. Realçada no fluxo está a etapa em que as regras do WAF são avaliadas, uma correspondência da rota do Azure Front Door é encontrada, um grupo de origem é selecionado e a origem é selecionada no grupo de origem. A última parte realçada é o ponto em que o Azure Front Door se conecta à conta de Armazenamento de Blobs do Azure por meio do Link Privado.

  1. O usuário faz uma solicitação HTTP ou HTTPS para um endpoint do Azure Front Door.

  2. As regras do WAF são avaliadas. As regras que têm correspondências são sempre registradas. Se o modo de política do WAF do Azure Front Door estiver definido como prevenção e a regra de correspondência tiver uma ação definida para bloquear a anomalia, a solicitação será bloqueada. Caso contrário, a solicitação continuará ou será redirecionada ou as regras subsequentes serão avaliadas.

  3. A rota configurada no Azure Front Door é identificada e o grupo de origem correto é escolhido. Neste exemplo, o caminho era para o conteúdo estático no site.

  4. A origem é selecionada do grupo de origem.

    uma. Neste exemplo, as verificações de integridade consideraram o site não saudável, portanto, ele é eliminado das origens possíveis.
    b. Este site está selecionado.

  5. A solicitação é roteada para a conta de armazenamento do Azure por meio do Link Privado pela rede de backbone da Microsoft.

Para obter mais informações sobre a arquitetura de roteamento do Azure Front Door, consulte a visão geral da arquitetura de roteamento.

Fluxo operacional

Diagrama que mostra o fluxo que um administrador usaria para se conectar a um recurso protegido.

O diagrama tem três partes. A primeira parte mostra o Armazenamento de Blobs do Azure atuando como um site estático. O Azure Front Door se conecta por meio do Link Privado à conta de armazenamento. A segunda parte é uma caixa que representa uma rede virtual. A rede virtual tem sub-redes e seu conteúdo. Essas sub-redes incluem uma sub-rede de ponto de extremidade privado que contém um ponto de extremidade de Link Privado com um endereço IP de 10.0.2.5, uma sub-rede jump box com uma máquina virtual jump box e uma sub-rede do Azure Bastion com o Azure Bastion nela. A terceira parte é um usuário administrativo que está usando o SSH para acessar a VM jump box na rede virtual por meio do Azure Bastion. Uma seta vai da VM para a zona DNS privada do Azure. A última seta vai da VM para o endpoint de link privado e depois para a conta de armazenamento.

  1. Um administrador se conecta à instância do Azure Bastion implantada na rede virtual.

  2. O Azure Bastion fornece conectividade SSH à VM jump box.

  3. O administrador na caixa de salto tenta acessar a conta de armazenamento por meio da CLI do Azure. O jump box consulta o DNS para o ponto de extremidade da conta publicamente acessível do Armazenamento Blob do Azure: storageaccountname.blob.core.windows.net.

    O DNS privado no final se resolve para storageaccountname.privatelink.blob.core.windows.net. A função retorna o endereço IP privado do ponto de extremidade do Link Privado, que é 10.0.2.5 neste exemplo.

  4. Uma conexão privada com a conta de armazenamento é estabelecida através do endpoint Private Link.

Considerações

Lembre-se dos seguintes pontos ao usar essa solução.

Fiabilidade

A confiabilidade garante que seu aplicativo possa cumprir os compromissos que você assume com os seus clientes. Para obter mais informações, confira Visão geral do pilar de confiabilidade.

Esse cenário aborda os seguintes pontos-chave sobre confiabilidade:

  • O roteamento global com baixa latência, por meio do uso de sondas de saúde, permite maior confiabilidade ao proteger o aplicativo contra interrupções regionais.
  • O Firewall de Aplicativo Web no Azure Front Door fornece proteção centralizada para solicitações HTTP e HTTPS.

Segurança

A segurança fornece garantias contra ataques deliberados e o abuso de seus dados e sistemas valiosos. Para saber mais, confira Visão geral do pilar de segurança.

Esse cenário aborda os seguintes pontos-chave sobre segurança:

Otimização de custo

A otimização de custos é sobre a busca de maneiras de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Embora o Azure Front Door Premium e o Firewall do Aplicativo Web Premium forneçam recursos de segurança avançados na camada Standard, há um custo adicional para ambos. Examine os seguintes recursos para saber mais sobre os preços do Azure Front Door e do Firewall do Aplicativo Web:

Excelência operacional

A excelência operacional abrange os processos de operações que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, confira Visão geral do pilar de excelência operacional.

Implementar limites de segurança de rede adiciona complexidade às operações e à implantação. Lembre-se destes pontos:

  • Os intervalos de IP para agentes hospedados pela Microsoft variam ao longo do tempo. Considere implementar agentes auto-hospedados em sua rede virtual.
  • Implemente o Azure Bastion para cenários em que as equipes de operações precisam acessar recursos seguros de rede.
  • O uso do Firewall de Aplicativo Web no Azure Front Door para fornecer proteção centralizada para solicitações HTTP e HTTPS é um exemplo do padrão de descarregamento do gateway. A responsabilidade de analisar as solicitações de explorações é descarregada para o Firewall do Aplicativo Web no Azure Front Door. O benefício de uma perspectiva de excelência operacional é que você precisa gerenciar as regras em apenas um só lugar.

Eficiência de desempenho

A eficiência de desempenho é a capacidade da carga de trabalho de dimensionar para atender às demandas que os usuários colocam nela. Para saber mais, confira Visão geral do pilar de eficiência de desempenho.

O roteamento global permite o dimensionamento horizontal por meio da implantação de mais recursos na mesma região ou regiões diferentes.