Implementar segurança de rede

Concluído

A segurança de rede é definida como o processo de proteção de recursos contra acesso ou ataque não autorizado aplicando controles ao tráfego de rede. Embora os controles possam ser aplicados de várias maneiras, a meta é garantir que apenas o tráfego legítimo seja permitido.

Veja abaixo uma representação de arquitetura de exemplo de um cluster do HDInsight implantado com segurança de rede e uma discussão relacionada sobre como isso é obtido. As setas pretas representam o tráfego de entrada e as setas azuis representam o tráfego de saída

Network Security

A meta do design acima é garantir que apenas o tráfego de rede proveniente de fontes confiáveis possa alcançar o cluster do HDInsight e o tráfego de rede que sai do cluster do HDInsight vá para um destino confiável. Além disso, o tráfego de rede que alcança os serviços de Armazenamento e Metastore é restrito ao tráfego originado do HDInsight.

Vamos fazer drill down dos detalhes do design acima examinando as seguintes áreas

  1. Segurança de entrada e acesso ao cluster
  2. Segurança de saída
  3. Pontos de extremidade de serviço de VNet.

Segurança de entrada

A segurança de rede de entrada é obtida usando um NSG (grupo de segurança de rede) atribuído à sub-rede. O NSG usa marcas de serviços do HDInsight e intervalos de IP para restringir o tráfego de entrada a fontes confiáveis.

Inbound network security

Na representação acima, dois conjuntos de regras de segurança de entrada são criados no grupo de segurança de rede. A primeira regra de segurança de entrada usa a marca de serviço do HDInsight para permitir o tráfego de entrada dos serviços de integridade e gerenciamento do HDInsight. A segunda regra de segurança de entrada é um intervalo de IP que permite que os usuários em um determinado intervalo de endereços IP acessem portas específicas no HDInsight (exemplo: porta SSH 22).

A segurança de rede de entrada é obtida usando regras de NSG na sub-rede na qual o cluster HDInsight é implantado. Veja a seguir um exemplo de como essas regras do NSG podem ser criadas.

  • Crie uma VNet com várias sub-redes, conforme necessário. Uma dessas sub-redes destina-se a hospedar o cluster do HDInsight e será associada ao NSG.

    Creating a Vnet

  • Crie um NSG (grupo de segurança de rede). No NSG, há dois conjuntos de regras de segurança, Entrada e Saída, na seção Configurações à esquerda. Nós usaríamos a seção Regras de segurança de entrada e adicionaríamos mais regras ao conjunto de regras atual.

    Creating a Network Security Group

  • Identifique a região na qual seu serviço do HDInsight será implantado e, com base na região, identifique as marcas de serviço que precisam ser usadas. Dependendo da região e do nível de permissões restritivas, pode haver permutações e combinações de marcas de serviço que você precisa aplicar para alcançar o objetivo. Clique em Adicionar para criar mais regras de segurança de entrada no grupo de segurança de rede e atribuir marcas de serviço com base na região de implantação.

    Creating a service tags

  • Abaixo está um exemplo da combinação de região para marca de serviço. A lista exaustiva de combinações de regiões para marcas de serviço pode ser encontrada em Marcas de serviço do NSG (grupo de segurança de rede) para o Azure HDInsight.

Tipo de marca de serviço País Região Marca de serviço Descrição
Global NA NA HDInsight Marca de serviço global única para o HDInsight
Regional Estados Unidos Oeste dos EUA 2 HDInsight.WestUS2 Marca de serviço única
Regional Estados Unidos Leste dos EUA 2 HDInsight.EastUS2 HDInsight.WestUS HDInsight.EastUS Combinação de marcas de serviço
Regional China Norte da China HDInsight.ChinaNorth HDInsight.ChinaEast Combinação de marcas de serviço
  • Com base nos requisitos de design, agora você pode adicionar mais regras à seção Regras de entrada para permitir o tráfego de entrada de outras fontes confiáveis.

Acesso ao cluster do HDInsight implantado com uma VNet

De um ponto de vista de segurança, normalmente nenhum ponto de extremidade público para o cluster HDInsight está acessível, caso em que há várias maneiras alternativas de acessar um cluster do HDInsight em uma VNet, que são descritas na representação de exemplo abaixo. Os clusters do HDInsight, quando criados em uma VNet, expõem pontos de extremidade com balanceamento de carga públicos e privados.

HDInsight cluster access with deployed with a VNet

No caminho de rede 1, o acesso ao cluster é bloqueado na Internet pública geral, mas é possível criar regras do NSG para permitir que clientes específicos externos do Azure tenham acesso seguro ao cluster por meio de um ponto de extremidade público usando https na porta 443 com https://<clustername>.azurehdinsight.net.

No caminho de rede 2, para ignorar o NSG, um jumpbox é criado dentro da VNet na qual a sub-rede do HDInsight está. Os usuários podem usar RDP nesse jumpbox e depois acessar o ponto de extremidade privado do HDInsight com <clustername> na porta 443 usando https://<clustername>.azurehdinsight.net.

No caminho de rede 3, as regras do NSG são modificadas para um cliente externo do Azure para obter acesso SSH ao cluster por meio do ponto de extremidade público pela porta 22 usando https://<clustername>-ssh.azurehdinsight.net.

Segurança de saída

O tráfego originário do HDInsight deve ter permissão para vários destinos para que o serviço funcione corretamente. No entanto, também é necessário ter cuidado para garantir que esses destinos sejam confiáveis.
As dependências de tráfego de saída do HDInsight são definidas usando FQDNs (nomes de domínio totalmente qualificados) e não têm endereços IP estáticos. Considerando que os endereços IP dos FQDNs estão sujeitos a alterações, os NSGs não podem ser usados para controlar o tráfego de saída de um cluster do HDInsight. Portanto, o serviço de Firewall do Azure (ou uma solução de virtualização de rede hospedada pelo cliente) é usado para controlar o tráfego de saída proveniente de um cluster. Em cenários práticos, o tráfego que flui da sub-rede do HDInsight é canalizado usando uma UDR (rota definida pelo usuário) em uma solução de virtualização de rede ou em um Firewall do Azure que permite o tráfego de saída com base nas regras de segurança definidas com a marca de serviço do HDInsight.

No exemplo a seguir, você pode ver que o tráfego de saída da sub-rede do HDInsight flui para um Firewall do Azure, em que uma avaliação da marca de serviço do HDInsight é executada para garantir que o tráfego de saída seja encaminhado a um destino confiável. Embora o tráfego seja permitido para Metastores, Armazenamento e IP de Gerenciamento do HDInsight etc., o tráfego para destinos de Internet não aprovados é bloqueado. Embora a Microsoft faça a manutenção dos destinos na marca de serviço do HDInsight, clientes com requisitos específicos para tráfego de saída que não sejam atendidos pela marca de serviço do HDInsight podem optar por criar a própria marca de serviço com base em FQDNs publicado listado para HDInsight que eles podem manter e atualizar. Detalhes sobre configurações de tabela de rotas e configurações de firewall podem ser examinados na página Restringir Tráfego de Saída para o HDInsight

Outbound Security Rules

As seguintes etapas são necessárias para habilitar as restrições de tráfego de saída:

  1. Criar um Firewall do Azure
  2. Adicionar regras de rede de segurança de saída e do aplicativo ao firewall
  3. Criar uma rota definida pelo usuário

Pontos de extremidade de Serviço de Rede Virtual

Os Pontos de Extremidade de Serviço de Rede Virtual estendem a identidade de uma VNet para um Serviço do Azure. Habilitar pontos de extremidade de serviço de VNet em um serviço concede acesso ao serviço de uma combinação específica de VNet/sub-rede e roteia o tráfego dessa sub-rede para o serviço por meio de um caminho ideal e seguro. Recursos como conta de armazenamento e metastores do SQL aos quais o serviço HDInsight precisa de acesso podem ser protegidos por meio de pontos de extremidade de serviço de VNet, conforme mostrado na arquitetura de exemplo abaixo.

Neste exemplo, os pontos de extremidade do serviço de VNet são configurados no armazenamento ADLS Gen2 e no Serviço Metastore do Hive (no SQL Server do Azure) e permitirão o tráfego da VNet do HDInsight.

As etapas para criar pontos de extremidade de serviço da VNet são abordadas com mais detalhes na seção Segurança de acesso a dados.

VNet Service Endpoints