Esta página mostra como usar a funcionalidade nós do GKE protegidos. Os nós do GKE protegidos oferecem uma identidade e uma integridade de nós fortes e validáveis para aumentar a segurança dos nós do Google Kubernetes Engine (GKE).
Para clusters do GKE Autopilot, a funcionalidade de nós do GKE protegidos está ativada por predefinição e não pode ser substituída. Para clusters padrão do GKE, a funcionalidade Nódulos do GKE protegidos está ativada por predefinição, mas pode ser substituída.
Acerca dos nós do GKE protegidos
Os nós do GKE protegidos são criados com base nas VMs protegidas do Compute Engine. Sem os nós do GKE protegidos, um atacante pode explorar uma vulnerabilidade num pod para roubar credenciais de arranque e roubar a identidade de nós no seu cluster, dando aos atacantes acesso a segredos do cluster. Quando os nós do GKE protegidos estão ativados, o plano de controlo do GKE verifica criptograficamente que:
- Cada nó no seu cluster é uma máquina virtual executada no centro de dados da Google.
- Cada nó faz parte do grupo de instâncias geridas (GIG) aprovisionado para o cluster.
- O kubelet está a receber um certificado para o nó no qual está a ser executado.
Isto limita a capacidade de um atacante roubar a identidade de um nó no seu cluster, mesmo que consiga roubar as credenciais de arranque do nó.
Os nós do painel de controlo do cluster do GKE usam sempre nós do GKE protegidos, mesmo que desative a funcionalidade no seu cluster. A ativação ou a desativação dos nós do GKE protegidos afeta apenas se os nós de trabalho que executam as suas cargas de trabalho usam a funcionalidade.
Preços
Não existem custos adicionais para executar nós do GKE protegidos. No entanto, os nós do GKE protegidos geram cerca de 0,5 KB mais registos no arranque do que os nós padrão. Consulte a página de preços do Cloud Logging para ver detalhes.
Antes de começar
Antes de começar, certifique-se de que realizou as seguintes tarefas:
- Ative a API Google Kubernetes Engine. Ative a API Google Kubernetes Engine
- Se quiser usar a CLI gcloud para esta tarefa,
instale-a e, em seguida,
inicialize-a. Se instalou anteriormente a CLI gcloud, execute
gcloud components update
para obter a versão mais recente.
Ativar nós do GKE protegidos num novo cluster
Pode criar um novo cluster com os nós do GKE protegidos ativados através da CLI gcloud ou da Trusted Cloud consola.
gcloud
Quando cria um novo cluster, especifique a opção --enable-shielded-nodes
:
gcloud container clusters create CLUSTER_NAME \
--enable-shielded-nodes
Consola
Na Trusted Cloud consola, aceda à página Criar um cluster do Kubernetes.
No painel de navegação, em Cluster, clique em Segurança.
Selecione a caixa de verificação Ativar nós do GKE protegidos.
Configure o cluster conforme pretendido.
Clique em Criar.
Consulte o artigo Criar um cluster para ver mais detalhes sobre a criação de clusters.
Ativar nós do GKE protegidos num cluster existente
Pode ativar os nós do GKE protegidos num cluster existente através da CLI Google Cloud ou da Trusted Cloud consola.
Como o GKE ativa os nós do GKE protegidos
Depois de ativar os nós do GKE protegidos, os nós de trabalho são recriados como VMs protegidas. Os nós do cluster são recriados de forma contínua para minimizar o tempo de inatividade.
Depois de ativar os nós do GKE protegidos, o GKE atualiza o cluster com os seguintes passos:
- O GKE recria imediatamente o plano de controlo, ignorando a disponibilidade de manutenção.
- O GKE recria os nós de trabalho como VMs protegidas, respeitando a disponibilidade de manutenção. O GKE usa atualizações rápidas para atualizar cada um dos conjuntos de nós. Isto depende da disponibilidade de recursos. A desativação das atualizações automáticas de nós não impede esta alteração.
Para ver detalhes acerca desta alteração específica, encontre a linha correspondente na tabela alterações manuais que recriam os nós através de uma estratégia de atualização de nós e respeitam as políticas de manutenção. Para saber mais sobre as atualizações de nós, consulte o artigo Planeamento de interrupções de atualizações de nós.
Ative os nós do GKE protegidos
gcloud
Quando atualizar o cluster, especifique a opção --enable-shielded-nodes
:
gcloud container clusters update CLUSTER_NAME \
--enable-shielded-nodes
Consola
Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.
Clique no nome do cluster que quer modificar.
Em Segurança, no campo Nós do GKE protegidos, clique em edit Editar nós do GKE protegidos.
Selecione a caixa de verificação Ativar nós do GKE protegidos.
Clique em Guardar alterações.
Validar se os nós do GKE protegidos estão ativados
Valide se o cluster está a usar nós do GKE protegidos com a CLI do Google Cloud ou a Trusted Cloud consola.
gcloud
Descreva o cluster:
gcloud container clusters describe CLUSTER_NAME
Se os nós do GKE protegidos estiverem ativados, o resultado do comando inclui as seguintes linhas:
shieldedNodes:
enabled: true
Consola
Para verificar se um cluster está a usar nós do GKE protegidos:
Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.
Clique no nome do cluster que quer inspecionar.
Em Segurança, no campo Nós do GKE protegidos, verifique se os nós do GKE protegidos estão ativados.
Também pode monitorizar a integridade das VMs protegidas subjacentes dos seus nós. Consulte o artigo Monitorizar a integridade em instâncias de VMs protegidas para ver o procedimento.
Desativar nós do GKE protegidos
Pode desativar os nós do GKE protegidos com a CLI do Google Cloud ou a Trusted Cloud consola.
Como o GKE desativa os nós do GKE protegidos
Depois de desativar os nós do GKE protegidos, o GKE atualiza o cluster com os seguintes passos:
- O GKE recria imediatamente o plano de controlo, ignorando a disponibilidade de manutenção.
- O GKE recria os nós de trabalho como VMs não protegidas, respeitando a disponibilidade de manutenção. O GKE usa atualizações rápidas para atualizar cada um dos conjuntos de nós. Isto depende da disponibilidade de recursos. A desativação das atualizações automáticas de nós não impede esta alteração.
Para ver detalhes acerca desta alteração específica, encontre a linha correspondente na tabela alterações manuais que recriam os nós através de uma estratégia de atualização de nós e respeitam as políticas de manutenção. Para saber mais sobre as atualizações de nós, consulte o artigo Planeamento de interrupções de atualizações de nós.
Desative os nós do GKE protegidos
gcloud
Quando atualizar o cluster, especifique a opção --no-enable-shielded-nodes
:
gcloud container clusters update CLUSTER_NAME \
--no-enable-shielded-nodes
Consola
Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.
Clique no nome do cluster que quer modificar.
Em Segurança, no campo Nós do GKE protegidos, clique em edit Editar nós do GKE protegidos.
Desmarque a caixa de verificação Ativar nós do GKE protegidos.
Clique em Guardar alterações.
Integridade do nó
Opcionalmente, pode configurar verificações de integridade dos nós em conjuntos de nós para oferecer proteção melhorada contra rootkits e bootkits para os seus nós. Os nós do GKE protegidos, o arranque seguro e a monitorização da integridade são funcionalidades independentes que podem ser ativadas ou desativadas individualmente.
Arranque seguro
O arranque seguro é uma definição do conjunto de nós que autentica os componentes de arranque das suas VMs de nós, como o kernel e o carregador de arranque, durante o processo de arranque. O arranque seguro está desativado por predefinição nos conjuntos de nós.
Antes de ativar o arranque seguro nos seus conjuntos de nós, considere o seguinte:
- A ativação do arranque seguro em nós do Ubuntu impede o carregamento de módulos do kernel de terceiros não assinados nesses nós.
- A ativação do arranque seguro em nós do SO otimizado para contentores não tem efeito no carregamento de módulos do kernel, porque as imagens dos nós do SO otimizado para contentores controlam a capacidade de carregar módulos do kernel de terceiros separadamente do arranque seguro.
Para ativar o arranque seguro, use a Google Cloud CLI ou a Trusted Cloud consola.
gcloud
Para ativar o arranque seguro ao criar um cluster:
gcloud container clusters create CLUSTER_NAME \
--shielded-secure-boot
Para ativar o arranque seguro ao criar um node pool:
gcloud container node-pools create POOL_NAME \
--shielded-secure-boot
O arranque seguro está desativado por predefinição. Pode desativá-lo explicitamente quando criar um cluster ou um conjunto de nós com a opção --no-shielded-secure-boot
.
Consola
Para ativar o arranque seguro ao criar um node pool:
Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.
Clique no nome do cluster que quer modificar.
Clique em add_box Adicionar conjunto de nós.
No menu de navegação, clique em Segurança.
Em Opções protegidas, selecione a caixa de verificação Ativar arranque seguro.
Clique em Criar.
Monitorização da integridade
A monitorização da integridade é uma definição do conjunto de nós ativada por predefinição no GKE. Pode desativar a monitorização da integridade com a CLI do Google Cloud ou a Trusted Cloud consola.
gcloud
Para desativar a monitorização da integridade dos componentes do sistema ao criar um node pool:
gcloud container node-pools create POOL_NAME \
--no-shielded-integrity-monitoring
A monitorização da integridade está ativada por predefinição. Pode ativá-lo explicitamente quando
criar um conjunto de nós com a opção --shielded-integrity-monitoring
.
Consola
Para desativar a monitorização da integridade ao criar um node pool:
Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.
Clique no nome do cluster que quer modificar.
Clique em add_box Adicionar conjunto de nós.
No painel de navegação, clique em Segurança.
Em Opções protegidas, desmarque a caixa de verificação Ativar monitorização da integridade.