Networking Question #019e3a4f
Qual é o papel de um NetworkPolicy no Kubernetes?
A capacidade de criptografar e obscurecer todo o tráfego.
A capacidade de classificar os Pods como isolados e não isolados.
A capacidade de evitar tráfego de loopback ou tráfego de entrada do host.
A capacidade de registrar eventos de segurança de rede.
Official Explanation / Community Explanations
Um NetworkPolicy no Kubernetes é um recurso que controla o fluxo de tráfego de e para os pods. Ele permite definir regras que especificam quais pods podem se comunicar entre si e com endpoints externos. O papel correto é classificar os pods como isolados ou não isolados. Por padrão, os pods não são isolados e aceitam tráfego de qualquer origem. Quando um NetworkPolicy seleciona um pod, esse pod se torna isolado, e apenas o tráfego que corresponde às regras da política é permitido. Essa classificação é fundamental para implementar segmentação de rede e segurança em um cluster Kubernetes.
Como Funciona
Os NetworkPolicies são implementados por um plugin de rede (por exemplo, Calico, Cilium, Flannel com suporte a network policy). A política usa seletores de rótulo para segmentar pods e define regras de entrada e saída. Por exemplo, uma política pode permitir tráfego apenas de pods com um rótulo específico ou de uma faixa de IP específica. O conceito de isolamento é chave: uma vez que um pod é selecionado por qualquer NetworkPolicy, ele é isolado e todo o tráfego não explicitamente permitido é negado.
Por que o Valor Correto está Certo
A capacidade de classificar pods como isolados ou não isolados é a função central de um NetworkPolicy. Ela permite um controle refinado sobre a comunicação entre pods, essencial para segurança e conformidade em clusters multi-inquilinos.
Por que os Valores Incorretos estão Errados
- A capacidade de criptografar e obscurecer todo o tráfego: NetworkPolicies não criptografam ou obscurecem o tráfego; eles apenas filtram. A criptografia é tratada por outros mecanismos como TLS ou mTLS (por exemplo, com Istio).
- A capacidade de evitar tráfego de loopback ou tráfego de entrada do host: NetworkPolicies operam no nível de rede do pod, não em interfaces do host ou loopback. Eles não podem evitar tráfego na rede do host ou na interface de loopback.
- A capacidade de registrar eventos de segurança de rede: NetworkPolicies por si só não geram logs. O registro é normalmente feito por plugins de rede ou ferramentas de monitoramento (por exemplo, usando políticas de auditoria ou logs de fluxo).