Proteger o acesso ao Red Hat OpenShift no Azure com o Azure Front Door

Este artigo explica como usar o Azure Front Door Premium para proteger o acesso ao Red Hat OpenShift no Azure.

Pré-requisitos

Os seguintes pré-requisitos são necessários:

  • Você tem um cluster Red Hat OpenShift no Azure existente. Siga este guia para criar um cluster privado do Red Hat OpenShift no Azure.

  • O cluster está configurado com a visibilidade de entrada privada.

  • Um nome de domínio personalizado é usado, por exemplo:

    example.com

Observação

O estado inicial não tem o DNS configurado. Nenhum aplicativo é exposto externamente do cluster do Red Hat OpenShift no Azure.

Esta seção explica como criar um serviço de Link Privado do Azure. Um serviço de Link Privado do Azure é a referência para o seu próprio serviço que é fornecido pelo Link Privado do Azure.

Seu serviço, que está sendo executado por trás do Azure Standard Load Balancer pode ser habilitado para acesso ao Link Privado para que os consumidores de seu serviço possam acessá-lo de forma privada em suas próprias VNets. Seus clientes podem criar um ponto de extremidade privado dentro de sua VNet e mapeá-lo para esse serviço.

Para obter mais informações sobre o serviço de Link Privado do Azure e como ele é usado, consulte Serviço de Link Privado do Azure.

Crie um AzurePrivateLinkSubnet. Essa sub-rede inclui uma máscara de rede que permite a visibilidade da sub-rede para o plano de controle e os nós de trabalho do cluster do Azure. Não delegue essa nova sub-rede a nenhum serviço ou configure os pontos de extremidade de serviços.

Por exemplo, se a rede virtual for 10.10.0.0/16 e:

  • Sub-rede do plano de controle do Red Hat OpenShift no Azure existente = 10.10.0.0/24
  • Sub-rede de trabalho do Red Hat OpenShift no Azure existente = 10.10.1.0/24
  • New AzurePrivateLinkSubnet = 10.10.2.0/24

Crie um novo link privado no serviço de Link Privado do Azure, conforme explicado nas seguintes etapas:

  1. Na guia Básico, configure os seguintes valores:

    • Detalhes do projeto
      • Selecione sua assinaturado Azure.
      • Selecione o grupo de recursos no qual o cluster do Red Hat OpenShift no Azure foi implantado.
    • Detalhes da Instância
      • Insira um Nome para seu serviço de Link Privado do Azure, como no exemplo a seguir: example-com-private-link.
      • Selecione uma Região para seu Link Privado.
  2. Na guia Configurações de saída:

    • Defina o Load Balancer para o balanceador de carga -internal do cluster para o qual você está habilitando o acesso externo. As opções são preenchias na lista suspensa.

    • Defina o endereço IP de front-end do Load Balancer como o endereço IP do controlador de entrada do Red Hat OpenShift no Azure, que normalmente termina em .254. Se não tiver certeza, use o comando a seguir.

      az aro show -n <cluster-name> -g <resource-group> -o tsv --query ingressProfiles[].ip
      
    • A sub-rede NAT de origem deve ser a AzurePrivateLinkSubnet, que você criou.

    • Nenhum item deve ser alterado nas Configurações de saída.

  3. Na guia Segurança de acesso, nenhuma alteração é necessária.

    • No prompt Quem pode solicitar acesso ao seu serviço?, selecione Qualquer pessoa com seu alias.
    • Não adicione nenhuma assinatura para aprovação automática.
  4. Na guia Marcações, selecione Revisar + criar.

  5. Selecione Criar para criar o serviço de Link Privado do Azure e aguarde a conclusão do processo.

  6. Quando a implantação for concluída, selecione Ir para o grupo de recursos em Próximas etapas.

No portal do Azure, insira o serviço de Link Privado do Azure que foi implantado. Mantenha o Alias que foi gerado para o serviço de Link Privado do Azure. Ele será usado mais tarde.

Registrar domínio no DNS do Azure

Esta seção explica como registrar um domínio no DNS do Azure.

  1. Crie uma zona DNS do Azure global para example.com.

  2. Crie uma zona DNS do Azure global para apps.example.com.

  3. Observe os quatro nameservers que estão presentes no DNS do Azure para apps.example.com.

  4. Crie um novo conjunto de registros NS na zona example.com que aponta para os aplicativos e especifique os quatro nameservers que estavam presentes quando a zona de aplicativos foi criada.

Criar um novo serviço do Azure Front Door Premium

Para criar um novo serviço do Azure Front Door Premium:

  1. Em Comparar ofertas do Microsoft Azure, selecione Azure Front Door e, em seguida, selecione Continuar para criar um Front Door.

  2. Na página Criar um perfil de Front Door em Assinatura>Grupo de recursos, selecione o grupo de recursos no qual o cluster do Red Hat OpenShift no Azure implantado para alojar o recurso Azure Front Door Premium.

  3. Nomeie o serviço de Azure Front Door Premium adequadamente. Por exemplo, no campo Nome, insira o seguinte nome:

    example-com-frontdoor

  4. Selecione a camada Premium. A camada Premium é a única opção que dá suporte ao Link Privado do Azure.

  5. Para Nome do ponto de extremidade, escolha um nome de ponto de extremidade apropriado para o Azure Front Door.

    Para cada aplicativo implantado, um CNAME será criado no DNS do Azure para apontar para esse nome de host. Portanto, é importante escolher um nome que seja independente dos aplicativos. Por segurança, o nome não deve sugerir os aplicativos ou a arquitetura que você implantou, como example01.

    O nome que você escolher será anexado ao domínio .z01.azurefd.net.

  6. Para Tipo de origem, selecione Personalizado.

  7. Para Nome de host de origem, insira o seguinte espaço reservado:

    changeme.com

    Esse espaço reservado será excluído mais tarde.

    Neste estágio, não habilite o serviço de Link Privado do Azure, o cache ou a política de Firewall de Aplicativo Web (WAF).

  8. Selecione Revisar + criar para criar o recurso Azure Front Door Premium e aguarde a conclusão do processo.

Configuração inicial do Azure Front Door Premium

Para configurar o Azure Front Door Premium:

  1. No portal do Azure, insira o serviço de Azure Front Door Premium que foi implantado.

  2. Na janela Endpoint Manager, modifique o ponto de extremidade selecionando Editar ponto de extremidade.

  3. Exclua a rota padrão, que foi criada como default-route.

  4. Feche a janela Endpoint Manager.

  5. Na janela Grupos de origem, exclua o grupo de origem padrão denominado default-origin-group.

Expondo uma rota de aplicativo no Red Hat OpenShift no Azure

O Red Hat OpenShift no Azure deve ser configurado para atender ao aplicativo com o mesmo nome de host ao qual o Azure Front Door será exposto externamente (*.apps.example.com). Em nosso exemplo, vamos expor o aplicativo Reservations com o seguinte nome de host:

reservations.apps.example.com

Além disso, crie uma rota segura no Red Hat OpenShift no Azure que expõe o nome do host.

Configurar o DNS do Azure

Para configurar o DNS do Azure:

  1. Insira a zona DNS apps pública criada anteriormente.

  2. Crie um novo conjunto de registros CNAME chamado reservation. Este conjunto de registros CNAME é um alias para nosso exemplo de ponto de extremidade do Azure Front Door:

    example01.z01.azurefd.net

Configurar o Azure Front Door Premium

As etapas a seguir explicam como configurar o Azure Front Door Premium.

  1. No portal do Azure, entre no serviço de Azure Front Door Premium que você criou anteriormente:

    example-com-frontdoor

Na janela Domínios:

  1. Como todos os servidores DNS são hospedados no Azure, deixe Gerenciamento de DNS definido como DNS gerenciado do Azure.

  2. Selecione o domínio de exemplo:

    apps.example.com

  3. Selecione o CNAME em nosso exemplo:

    reservations.apps.example.com

  4. Use os valores padrão para HTTPS e Versão mínima do TLS.

  5. Selecione Adicionar.

  6. Quando Estatísticas de validação mudar para Pendente, selecione Pendente.

  7. Para autenticar a propriedade da zona DNS, para Status do registro DNS, selecione Adicionar.

  8. Selecione Fechar.

  9. Continue selecionando Atualizar até que o Estado de validação do domínio mude para Aprovado e a Associação do ponto de extremidade mude para Não associado.

Na janela Grupos de origem:

  1. Selecione Adicionar.

  2. Dê ao Grupo de origem um nome apropriado, como Reservations-App.

  3. Selecione Adicionar uma origem.

  4. Insira o nome da origem, como ARO-Cluster-1.

  5. Escolha um Tipo de origem de Personalizado.

  6. Insira o nome de host do FQDN (nome de domínio totalmente qualificado) que foi exposto em seu cluster do Red Hat OpenShift no Azure, como:

    reservations.apps.example.com

  7. Habilitar o serviço de Link Privado.

  8. Insira o Alias obtido do serviço Link Privado do Azure.

  9. Selecione Adicionar para retornar à janela de criação do grupo de origem.

  10. Selecione Adicionar para adicionar o grupo de origem e retornar ao portal do Azure.

Para conceder aprovação a example-com-private-link, que é o serviço de Link Privado do Azure criado anteriormente, conclua as etapas a seguir.

  1. Na guia Conexões de ponto de extremidade privado, marque a caixa de seleção que agora existe no recurso descrito como fazer no AFD.

  2. Selecione Aprovar e, em seguida, selecione Sim para verificar a aprovação.

Concluir a configuração do Azure Front Door Premium

As etapas a seguir explicam como concluir a configuração do Azure Front Door Premium.

  1. No portal do Azure, entre no serviço de Azure Front Door Premium que você criou anteriormente:

    example-com-frontdoor

  2. Na janela Endpoint Manager, selecione Editar ponto de extremidade para modificar o ponto de extremidade.

  3. Selecione +Adicionar em Rotas.

  4. Dê um nome apropriado à sua rota, como Reservations-App-Route-Config.

  5. Em Domínios, em Domínios validados disponíveis, selecione o nome de domínio totalmente qualificado, por exemplo:

    reservations.apps.example.com

  6. Para redirecionar o tráfego HTTP para usar HTTPS, deixe a caixa de seleção Redirecionar selecionada.

  7. Em Grupo de origem, selecione Reservations-App, o grupo de origem criado anteriormente.

  8. Você pode habilitar o cache, se apropriado.

  9. Selecione Adicionar para criar a rota. Depois que a rota é configurada, o Endpoint Manager preenche os painéis Domínios e Grupos de origem com os outros elementos criados para esse aplicativo.

Como o Azure Front Door é um serviço global, o aplicativo pode levar até 30 minutos para ser implantado. Durante esse tempo, você pode optar por criar um WAF para seu aplicativo. Quando o seu aplicativo ficar ativo, ele poderá ser acessado usando a URL utilizada neste exemplo:

https://reservations.apps.example.com

Próximas etapas

Criar um Firewall de Aplicativo Web do Azure no Azure Front Door usando o portal do Azure: