Esta página explica como o isolamento de rede e os controles de acesso funcionam para o plano de controle e os nós de cluster do Google Kubernetes Engine (GKE). Esta página substitui a página que descreve o conceito de clusters particulares.
Há dois aspectos a serem considerados ao decidir como configurar o isolamento de rede:
- Acesso ao plano de controle, que se relaciona a quem pode acessar o plano de controle do cluster.
- Rede de cluster, que se relaciona ao isolamento de nodes.
Nesta página, mostramos como controlar e personalizar quem pode acessar o plano de controle e os nós do cluster (em um cluster padrão) ou as cargas de trabalho (em um cluster do Autopilot). Essa personalização é relevante quando você decide a configuração de rede do cluster. Para definir diretamente a configuração de rede, consulte Personalizar o isolamento de rede.
Planeje e projete a configuração de isolamento de rede com arquitetos de rede, engenheiros de rede, administradores de rede ou outra equipe responsável pela definição, implementação e manutenção da arquitetura de rede da organização.
Controle o acesso ao plano de controle
Nesta seção, você vai considerar quem pode acessar seu plano de controle.
Todos cluster do GKE têm um plano de controle que processa as solicitações da API Kubernetes. O plano de controle é executado em uma máquina virtual (VM) que está em uma rede VPC em um projeto gerenciado pelo Google. Um cluster regional tem várias réplicas do plano de controle, cada uma executada na própria VM.
O plano de controle tem dois tipos de endpoints para acesso ao cluster:
- Endpoint baseado em DNS
- Endpoints baseados em IP
Use apenas o endpoint baseado em DNS para acessar o plano de controle e simplificar a configuração e ter uma camada de segurança flexível e baseada em políticas.
Endpoint baseado em DNS
O endpoint baseado em DNS fornece um DNS exclusivo ou um nome de domínio totalmente qualificado (FQDN, na sigla em inglês) para cada plano de controle de cluster. Esse nome DNS pode ser usado para acessar seu plano de controle. O nome DNS é resolvido para um endpoint acessível em qualquer rede acessível pelas APIs Google Cloud , incluindo redes locais ou outras redes de nuvem. Ativar o endpoint baseado em DNS elimina a necessidade de um Bastion Host ou nós de proxy para acessar o plano de controle de outras redes VPC ou locais externos.
Para acessar o endpoint do plano de controle, é necessário configurar políticas e papéis do IAM e tokens de autenticação. Para mais detalhes sobre as permissões exatas necessárias, consulte Personalizar o isolamento de rede.
Além das políticas e dos tokens do IAM, também é possível configurar os seguintes atributos de acesso:
Controles baseados em IP ou rede com VPC Service Controls: para proteger o acesso ao plano de controle. O VPC Service Controls adiciona outra camada de segurança de acesso com acesso baseado no contexto com base em atributos, como a origem da rede. Os VPC Service Controls permitem configurar quais redes podem acessar o endpoint DNS. O uso de políticas do IAM e do VPC Service Controls para proteger o acesso ao endpoint baseado em DNS oferece um modelo de segurança em várias camadas para o plano de controle do cluster. O VPC Service Controls é usado por todas as APIs do Google Cloud , alinhando a configuração de segurança dos clusters com os dados hospedados em todas as outras APIs do Google Cloud .
Private Service Connect ou Cloud NAT: para acessar o endpoint baseado em DNS de clientes que não têm acesso público à Internet. Por padrão, o endpoint baseado em DNS é acessível pelas APIs do Google Cloud que estão disponíveis na Internet pública. Para saber mais, consulte Endpoint baseado em DNS na página "Personalizar o isolamento de rede".
Endpoints baseados em IP
Opcionalmente, você também pode configurar o acesso ao plano de controle usando endpoints baseados em IP.
Terminologia relacionada a clusters e endereços IP
Google Cloud endereços IP externos:
Endereços IP externos atribuídos a qualquer VM usada por qualquer cliente hospedado no Google Cloud. Google Cloud são proprietários desses endereços IP. Para saber mais, consulte Onde posso encontrar os intervalos de IP do Compute Engine?.
Endereços IP externos usados por Google Cloud produtos, como o Cloud Run ou as funções do Cloud Run. Qualquer cliente hospedado no Google Cloud pode instanciar esses endereços IP. O Google Cloud é o proprietário desses endereços IP.
Endereços IP reservados pelo Google: endereços IP externos para gerenciamento de cluster do GKE. Esses endereços IP incluem processos gerenciados pelo GKE e outros serviços de produção do Google. O Google é o proprietário desses endereços IP.
Intervalos de endereços IP do cluster do GKE: endereços IP internos atribuídos ao cluster que o GKE usa para os nós, pods e serviços do cluster.
Endereços IP internos: endereços IP da rede VPC do cluster. Esses endereços IP podem incluir o endereço IP do cluster, as redes locais, os intervalos RFC 1918 ou os endereços IP públicos usados de modo particular (PUPI, na sigla em inglês) que incluem intervalos não RFC 1918.
Endpoint externo: o endereço IP externo que o GKE atribui ao plano de controle.
Endpoint interno: o endereço IP interno que o GKE atribui ao plano de controle.
Rede VPC: uma rede virtual em que você cria sub-redes com intervalos de endereços IP especificamente para os nós e pods do cluster.
Ao usar endpoints baseados em IP, você tem duas opções:
Exiba o plano de controle nos endpoints externos e internos. Isso significa que o endpoint externo do plano de controle pode ser acessado por um endereço IP externo, e o endpoint interno pode ser acessado pela rede VPC do cluster. Os nós vão se comunicar com o plano de controle apenas no endpoint interno.
Exiba o plano de controle apenas no endpoint interno. Isso significa que os clientes na Internet não podem se conectar ao cluster, e o plano de controle pode ser acessado de qualquer endereço IP da rede VPC do cluster. Os nós vão se comunicar com o plano de controle apenas no endpoint interno.
Essa é a opção mais segura ao usar endpoints baseados em IP, porque impede todo o acesso à Internet ao plano de controle. Essa é uma boa opção se você tiver cargas de trabalho que, por exemplo, exigem acesso controlado devido a regulamentos de privacidade e segurança de dados.
Nas duas opções anteriores, é possível restringir quais endereços IP alcançam os endpoints configurando redes autorizadas. Se você usa endpoints baseados em IP, recomendamos adicionar pelo menos uma rede autorizada. As redes autorizadas concedem ao plano de controle acesso a um conjunto específico de endereços IPv4 confiáveis, além de fornecer proteção e outros benefícios de segurança para seu cluster do GKE.
Ative as redes autorizadas ao usar endpoints baseados em IP para proteger seu cluster do GKE.
Como funcionam as redes autorizadas
As redes autorizadas fornecem um firewall baseado em IP que controla o acesso ao plano de controle do GKE. O acesso ao plano de controle depende dos endereços IP de origem. Ao ativar as redes autorizadas, você configura os endereços IP que quer permitir o acesso ao endpoint do plano de controle do cluster do GKE como uma lista de bloqueio CIDR.
A tabela a seguir mostra:
- Os endereços IP predefinidos que sempre podem acessar o plano de controle do GKE, independentemente de você ativar as redes autorizadas.
- Os endereços IP configuráveis que podem acessar o plano de controle quando você os coloca na lista de permissões ativando as redes autorizadas.
Endpoints do plano de controle | Endereços IP predefinidos que sempre podem acessar os endpoints | Endereço IP configurável que pode acessar os endpoints depois de ativar as redes autorizadas |
---|---|---|
Endpoints externos e internos ativados |
|
|
Somente o endpoint interno ativado |
|
|
Com uma rede autorizada, também é possível configurar a região de onde um endereço IP interno pode alcançar o endpoint interno do plano de controle. É possível permitir o acesso apenas pela rede VPC do cluster ou de qualquer Google Cloud região em uma VPC ou ambiente local.
Limitações do uso de endpoints baseados em IP
- Se você expandir uma sub-rede que é usada por um cluster com redes autorizadas, será necessário atualizar a configuração da rede autorizada para incluir o intervalo de endereços IP expandido.
- Se você tiver clientes se conectando de redes com endereços IP dinâmicos, como funcionários em redes domésticas, atualize a lista de redes autorizadas com frequência para manter o acesso ao cluster.
- Desativar o acesso ao endpoint externo do plano de controle impede que você interaja com o cluster remotamente. Se você precisar acessar o cluster remotamente, use um Bastion Host, que encaminha o tráfego do cliente para o cluster. Em contraste, o uso de um endpoint baseado em DNS exige apenas a configuração de permissões do IAM.
- Os endpoints baseados em IP não se integram diretamente ao VPC Service Controls. O VPC Service Controls opera no nível do perímetro de serviço para controlar o acesso e a movimentação de dados no Google Cloud. Recomendamos usar um endpoint baseado em DNS com o VPC Service Controls para uma defesa de segurança robusta.
- É possível especificar até 100 intervalos de endereços IP autorizados (inclusive endereços IP externos e internos).
Acesso à rede de cluster
Esta seção discute o isolamento de nodes em um cluster do Kubernetes.
Ativar nós particulares
Impeça que clientes externos acessem nós provisionando esses nós apenas com endereços IP internos, tornando-os particulares. As cargas de trabalho em execução em nós sem um endereço IP externo não podem acessar a Internet, a menos que o NAT esteja ativado na rede do cluster. Você pode mudar essas configurações a qualquer momento.
É possível ativar nós particulares no nível de um cluster individual ou no nível do pool de nós (para o Standard) ou da carga de trabalho (para o Autopilot). Ativar nós privados no nível do pool de nós ou da carga de trabalho substitui qualquer configuração de nó no nível do cluster.
Se você atualizar um pool de nós público para o modo particular, as cargas de trabalho que exigem acesso fora da rede do cluster podem falhar nos seguintes cenários:
Clusters em uma rede VPC compartilhada em que o Acesso privado do Google não está ativado. Ative manualmente o Acesso privado do Google para garantir que o GKE faça o download da imagem de nó atribuída. Para clusters que não estão em uma rede VPC compartilhada, o GKE ativa automaticamente o Acesso privado do Google.
Cargas de trabalho que exigem acesso à Internet em que o Cloud NAT não está ativado ou uma solução NAT personalizada não está definida. Para permitir o tráfego de saída para a Internet, ative o Cloud NAT ou uma solução NAT personalizada.
Independentemente de você ativar ou não os nós particulares, o plano de controle ainda se comunica com todos os nós apenas por endereços IP internos.
Benefícios do isolamento de rede
Confira a seguir os benefícios do isolamento de rede:
Flexibilidade:
- Os clusters têm uma configuração unificada e flexível. Os clusters com ou sem endpoints externos compartilham a mesma arquitetura e oferecem suporte à mesma funcionalidade. É possível proteger o acesso com base em controles e práticas recomendadas que atendam às suas necessidades. Toda a comunicação entre os nós no cluster e o plano de controle usa um endereço IP interno.
- É possível mudar as configurações de acesso do plano de controle e de configuração do nó do cluster a qualquer momento sem precisar recriar o cluster.
- É possível ativar o endpoint externo do plano de controle se você precisar gerenciar o cluster de qualquer local com acesso à Internet ou de redes ou dispositivos que não estejam conectados diretamente ao VPC. Ou você pode desativar o endpoint externo para aumentar a segurança se precisar manter o isolamento de rede para cargas de trabalho sensíveis. Em ambos os casos, é possível usar redes autorizadas para limitar o acesso a intervalos de IP confiáveis.
Segurança :
- Os endpoints baseados em DNS com VPC Service Controls oferecem um modelo de segurança em várias camadas que protege seu cluster contra redes não autorizadas e identidades não autorizadas que acessam o plano de controle. O VPC Service Controls se integra aos Registros de auditoria do Cloud para monitorar o acesso ao plano de controle.
- Os nós particulares e as cargas de trabalho executados neles não são diretamente acessíveis pela Internet pública, o que reduz significativamente o potencial de ataques externos ao cluster.
- É possível bloquear o acesso ao plano de controle de Google Cloud endereços IP externos ou de endereços IP externo para isolar totalmente o plano de controle do cluster e reduzir a exposição a possíveis ameaças de segurança.
Compliance: se você trabalha em um setor com regulamentações rígidas para acesso e armazenamento de dados, os nós particulares ajudam com a conformidade, garantindo que os dados sensíveis permaneçam na sua rede particular.
Controle: os nós particulares oferecem controle granular sobre como o tráfego flui para dentro e para fora do cluster. É possível configurar regras de firewall e políticas de rede para permitir apenas a comunicação autorizada. Se você opera em ambientes de várias nuvens, os nós particulares podem ajudar a estabelecer uma comunicação segura e controlada entre diferentes ambientes.
Custo: ao ativar nós particulares, você pode reduzir os custos dos nós que não precisam de um endereço IP externo para acessar serviços públicos na Internet.
A seguir
- Saiba como personalizar o isolamento de rede.
- Saiba mais sobre o Private Service Connect.