Esta página fornece instruções para configurar políticas de rede de tráfego externas à organização no Google Distributed Cloud (GDC) air-gapped.
O tráfego externo à organização refere-se à comunicação entre serviços e cargas de trabalho de diferentes organizações e pontos finais externos.
Antes de começar
Para configurar políticas de rede de tráfego externas à organização, tem de ter o seguinte:
- As funções de identidade e acesso necessárias. Para mais informações, consulte o artigo Prepare funções e acesso predefinidos.
- Um projeto existente. Para mais informações, consulte Crie um projeto.
- Desative a proteção contra a exfiltração de dados.
- Uma das seguintes configurações de rede:
- Organizações que usam um Interconnect AttachmentGroup comum.
- Organizações que usam a conetividade através das respetivas redes externas com peering.
Crie uma política de tráfego externo à organização
Pode definir políticas de tráfego de entrada ou saída externas à organização para gerir a comunicação entre serviços e cargas de trabalho de diferentes organizações e pontos finais externos.
Pode criar políticas de rede de projetos de tráfego externas à organização globais que se aplicam ao tráfego em todas as zonas da sua organização. Para mais informações sobre os recursos globais num universo da GDC, consulte o artigo Vista geral de várias zonas.
A ligação de serviços e cargas de trabalho a um destino fora do seu projeto numa organização diferente requer aprovação explícita. Tem de desativar a proteção contra a exfiltração de dados para permitir o tráfego externo à organização.
Crie uma regra de firewall de entrada global para tráfego externo à organização
Quando expõe cargas de trabalho no seu projeto através de um equilibrador de carga externo, também tem de criar uma política de entrada ProjectNetworkPolicy
para permitir que os endereços IP de clientes externos acedam às cargas de trabalho.
Esta política de entrada global aplica-se a todas as zonas na sua organização.
Siga os passos abaixo para criar uma nova regra de firewall e permitir o tráfego de entrada de cargas de trabalho num projeto de uma organização diferente:
Consola
- Na consola do GDC do projeto que está a configurar, aceda a Rede > Firewall no menu de navegação para abrir a página Firewall.
- Clique em Criar na barra de ações para começar a criar uma nova regra de firewall.
Na página Detalhes da regra de firewall, preencha as seguintes informações:
- No campo Nome, introduza um nome válido para a regra de firewall.
- Na secção Direção do tráfego, selecione Entrada para permitir o tráfego de entrada de cargas de trabalho noutras organizações.
- Na secção Segmentar, selecione uma das seguintes opções:
- Todas as cargas de trabalho do utilizador: permite ligações às cargas de trabalho do projeto que está a configurar.
- Serviço: indica que esta regra de firewall destina-se a um serviço específico no projeto que está a configurar.
- Se o seu alvo for um serviço de projeto, selecione o nome do serviço na lista de serviços disponíveis no menu pendente Serviço.
- Na secção De, selecione Fora da organização e introduza o bloco CIDR de outra organização no campo CIDR para permitir ligações da rede dessa organização.
- Se o destino for todas as cargas de trabalho do utilizador, selecione uma das seguintes opções na secção Protocolos e portas:
- Permitir tudo: permitir ligações através de qualquer protocolo ou porta.
- Protocolos e portas especificados: permitem ligações que usam apenas os protocolos e as portas que especificar nos campos correspondentes para a regra da firewall de entrada.
Na página Detalhes da regra de firewall, clique em Criar.
Permitiu ligações de cargas de trabalho de projetos de uma organização diferente. Depois de criar a regra de firewall, esta fica visível numa tabela na página Firewall.
API
Configure e aplique a sua própria política de entrada ProjectNetworkPolicy
personalizada:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-inbound-traffic-from-external
spec:
policyType: Ingress
subject:
subjectType: UserWorkload
ingress:
- from:
- ipBlock:
cidr: CIDR
EOF
Substitua o seguinte:
GLOBAL_API_SERVER
: o caminho kubeconfig do servidor da API global. Para mais informações, consulte o artigo Servidores de API globais e zonais. Se ainda não gerou um ficheiro kubeconfig para o servidor da API, consulte o artigo Iniciar sessão para ver detalhes.PROJECT
: o nome do projeto do GDC.CIDR
: o bloco CIDR de outra organização.
Esta política é necessária, uma vez que o balanceador de carga externo usa o retorno direto do servidor (DSR), que preserva o endereço IP externo de origem e ignora o balanceador de carga no caminho de retorno.
Crie uma regra de firewall de saída global para tráfego externo à organização
Para transferir dados para serviços fora da organização, tem de desativar primeiro a proteção contra exfiltração de dados. Em seguida, tem de configurar uma regra de firewall de saída para permitir o tráfego de saída dos serviços ou cargas de trabalho do seu projeto.
Esta secção descreve o processo para ativar o tráfego de saída ao nível do projeto. Para obter informações sobre a gestão da conetividade de saída ao nível da carga de trabalho, consulte o artigo Faça a gestão do tráfego de saída das cargas de trabalho.
Estas regras de firewall de saída globais aplicam-se a todas as zonas na sua organização.
Siga os passos abaixo para criar uma nova regra de firewall e permitir o tráfego de saída de cargas de trabalho ou serviços do projeto para cargas de trabalho noutra organização:
Consola
- Na consola do GDC do projeto que está a configurar, aceda a Rede > Firewall no menu de navegação para abrir a página Firewall.
- Clique em Criar na barra de ações para começar a criar uma nova regra de firewall.
Na página Detalhes da regra de firewall, preencha as seguintes informações:
- No campo Nome, introduza um nome válido para a regra de firewall.
- Na secção Direção do tráfego, selecione Saída para indicar que esta regra de firewall está a controlar o tráfego de saída.
- Na secção Segmentar, selecione uma das seguintes opções:
- Todas as cargas de trabalho do utilizador: permitem ligações das cargas de trabalho do projeto que está a configurar.
- Serviço: indica que esta regra de firewall destina-se a um serviço específico no projeto que está a configurar.
- Se o seu alvo for um serviço de projeto, selecione o nome do serviço na lista de serviços disponíveis no menu pendente Serviço.
- Na secção Para, selecione Fora da organização e introduza o bloco CIDR de outra organização no campo CIDR para permitir ligações à rede dessa organização.
- Se o destino for todas as cargas de trabalho do utilizador, selecione uma das seguintes opções na secção Protocolos e portas:
- Permitir tudo: permitir ligações através de qualquer protocolo ou porta.
- Protocolos e portas especificados: permitem ligações que usam apenas os protocolos e as portas que especificar nos campos correspondentes para a regra da firewall de saída.
Na página Detalhes da regra de firewall, clique em Criar.
Permitiu ligações a outra organização. Depois de criar a regra de firewall, esta fica visível numa tabela na página Firewall.
API
Para ativar o tráfego de saída para serviços fora da organização, personalize o recurso ProjectNetworkPolicy
. No entanto, uma vez que a prevenção de exfiltração de dados
está ativada por predefinição, a sua política de saída ProjectNetworkPolicy
personalizada mostra um
erro de validação no campo de estado e o plano de dados ignora-o. Este comportamento acontece
por design.
Pode transferir cargas de trabalho de um determinado projeto quando permite a exfiltração de dados para esse projeto. O tráfego de saída que permite é uma tradução de endereços de rede (NAT) de origem que usa um endereço IP conhecido atribuído ao projeto.
Para ativar a política de saída personalizada, siga estes passos:
Configure e aplique a sua própria política de saída
ProjectNetworkPolicy
personalizada em todas as cargas de trabalho do utilizador num projeto.Use o seguinte exemplo:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF apiVersion: networking.global.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: namespace: PROJECT name: allow-outbound-traffic-to-external spec: subject: subjectType: UserWorkload egress: - to: - ipBlock: cidr: CIDR EOF
A política permite o tráfego de saída para todos os anfitriões no bloco CIDR, que residem fora da organização. A primeira tentativa tem de causar um erro de estado intencional e necessário.
Confirme se vê um erro de validação no seu estado.
Peça ao administrador do IAM da organização para desativar a prevenção da exfiltração de dados. Esta ação ativa a sua configuração, ao mesmo tempo que impede todo o outro tráfego de saída.
Verifique o
ProjectNetworkPolicy
que criou e confirme se o erro no campo de estado de validação desapareceu e se o estadoReady
éTrue
, o que indica que a sua política está em vigor:kubectl --kubeconfig GLOBAL_API_SERVER \ get projectnetworkpolicy allow-outbound-traffic-to-external \ -n PROJECT -o yaml
Substitua o seguinte:
GLOBAL_API_SERVER
: o caminho do kubeconfig do servidor da API global. Para mais informações, consulte o artigo Servidores de API globais e zonais. Se ainda não gerou um ficheiro kubeconfig para o servidor da API, consulte o artigo Iniciar sessão para ver detalhes.PROJECT
: o nome do projeto da GDC.
Depois de aplicar esta política e, desde que não tenha definido outras políticas de saída, todo o outro tráfego de saída é recusado para o PROJECT
.