Esta página mostra exemplos de implementações de políticas de firewall hierárquicas. Parte do princípio de que conhece os conceitos descritos nas políticas de firewall hierárquicas.
Exemplo 1: permitir que o verificador aceda a todas as VMs
Neste exemplo de utilização, todas as instâncias de máquinas virtuais (VM) numa organização têm de ser analisadas e inventariadas através de sondas de um endereço IP específico (10.100.0.1
) para uma porta de destino específica (123
). O administrador de segurança da organização garante que nenhum administrador de rede ou outro administrador de segurança pode bloquear essa porta em qualquer instância de VM na organização.
Este exemplo pressupõe que não existem políticas de firewall ao nível da pasta implementadas.
A configuração para este exemplo de utilização é descrita no diagrama seguinte.
Política em vigor aplicada em VMs
Neste exemplo, a política de firewall de VM eficaz após a avaliação das regras na hierarquia é a seguinte.
Ligações de entrada
As ligações de entrada com o IP de origem
10.100.0.1
e a porta de destino123
são permitidas, conforme definido na política. Quando é encontrada uma correspondência na política da organização, as ligações de sondagem são permitidas e não são avaliadas mais regras na hierarquia.Para quaisquer ligações de entrada que não sejam do IP de origem
10.100.0.1
e da porta de destino123
, não existe uma correspondência. Por conseguinte, aplica-se a regra de entrada predefinida nas regras de firewall da VPC, recusando a ligação.
Ligação de saída
- Não existe nenhuma correspondência nas regras definidas pela hierarquia. Por conseguinte, aplica-se a regra de saída predefinida nas regras de firewall da VPC, o que permite ligações de saída.
Como configurar
Crie uma política de firewall para conter a regra:
gcloud compute firewall-policies create \ --organization=123456789012 \ --short-name="example-firewall-policy" \ --description="rules that apply to all VMs in the organization"
Adicione a regra à política de firewall:
gcloud compute firewall-policies rules create 1000 \ --action=allow \ --description="allow-scan-probe" \ --layer4-configs=tcp:123 \ --firewall-policy=example-firewall-policy \ --organization=123456789012 \ --src-ip-ranges=10.100.0.1/32
Associe a política de firewall à organização:
gcloud compute firewall-policies associations create \ --firewall-policy=example-firewall-policy \ --organization=123456789012
Exemplo 2: negar todas as ligações externas, exceto para determinadas portas
Neste exemplo de utilização, uma política firewall bloqueia todas as ligações de origens da Internet externas, exceto as ligações nas portas de destino 80
, 443
e 22
. Uma ligação à Internet de entrada em qualquer porta que não seja 80
, 443
e 22
é bloqueada, independentemente das regras de firewall ao nível da rede VPC. Para quaisquer ligações na porta 80
, 443
ou 22
, a política delega no administrador de segurança da VPC o comportamento que quer aplicar na respetiva rede VPC para essas portas.
A configuração para este exemplo de utilização é descrita no diagrama seguinte.
Política em vigor aplicada em VMs
Neste exemplo, a política de firewall de VM eficaz após a avaliação das regras na hierarquia é a seguinte.
Ligações de entrada
Todas as ligações de entrada de
10.0.0.0/8
correspondem à regra de nível da organização de prioridade mais altadelegate-internal-traffic
e ignoram o resto das regras na política da organização a serem avaliadas em relação às regras de firewall configuradas ao nível da rede de VPC. Na regra de firewall da VPC, as ligações de10.2.0.0/16
são permitidas e as restantes ligações são avaliadas em função da regra de entrada implícita, que édeny
.As ligações de entrada com um intervalo de IPs de origem que não seja
10.0.0.0/8
para as portas de destino22
,80
e443
são delegadas para o nível seguinte, onde as portas80
e443
são permitidas, mas22
não.Todas as outras ligações estão bloqueadas.
Ligações de saída
- Não existe nenhuma correspondência nas regras definidas pela hierarquia. Por conseguinte, aplica-se a regra de saída predefinida nas regras de firewall da VPC, o que permite ligações de saída.
Como configurar
Crie uma política de firewall para conter a regra:
gcloud compute firewall-policies create \ --organization=123456789012 \ --short-name="example-firewall-policy" \ --description="rules that apply to all VMs in the organization"
Adicione uma regra para delegar ligações internas ao proprietário do projeto:
gcloud compute firewall-policies rules create 1000 \ --action=goto_next \ --description="delegate-internal-traffic" \ --organization=123456789012 \ --firewall-policy="example-firewall-policy" \ --src-ip-ranges=10.0.0.0/8
Adicione uma regra para delegar regras de ligações externas às portas
80
/443
/22
ao proprietário do projeto:gcloud compute firewall-policies rules create 2000 \ --action=goto_next \ --description="delegate-external-traffic-spec-ports" \ --src-ip-ranges=0.0.0.0/0 \ --layer4-configs=tcp:80,tcp:443,tcp:22 \ --organization=123456789012 \ --firewall-policy="example-firewall-policy"
Adicione uma regra para recusar todas as outras ligações externas:
gcloud compute firewall-policies rules create 3000 \ --action=deny \ --description="block-other-external-traffic-spec-ports" \ --organization=123456789012 \ --firewall-policy="example-firewall-policy" \ --src-ip-ranges=0.0.0.0/0
Associe a política de firewall à organização:
gcloud compute firewall-policies associations create \ --organization=123456789012 \ --firewall-policy="example-firewall-policy"
No projeto, adicione uma regra de firewall para permitir ligações internas a partir da sub-rede designada:
gcloud compute firewall-rules create allow-internal-traffic \ --action=allow \ --priority=1000 \ --source-ranges=10.2.0.0/16
No projeto, adicione uma regra de firewall para permitir ligações TCP externas:
80
443
gcloud compute firewall-rules create allow-external-traffic \ --action=allow \ --priority=2000 \ --rules=tcp:80,tcp:443
Exemplo 3: negar ligações de saída, exceto a partir de uma rede VPC específica
Neste exemplo de utilização, o administrador de segurança da organização não permite ligações de saída em nenhuma rede de VPC, exceto ligações originadas na rede de VPC myvpc
. O administrador
delega a decisão de abrir a saída para o servidor público 203.0.113.1
ao
administrador de segurança myvpc
.
Este exemplo pressupõe que não existem políticas de firewall ao nível da pasta implementadas. A configuração para este exemplo de utilização é descrita no diagrama seguinte.
Política em vigor aplicada em VMs
Neste exemplo, a política de firewall de VM eficaz após a avaliação das regras na hierarquia é a seguinte.
Ligações de entrada
- Não existe nenhuma correspondência nas regras definidas pela hierarquia. Por conseguinte, aplica-se a regra de entrada predefinida nas regras de firewall da VPC, o que nega as ligações de entrada.
Ligações de saída
Todas as ligações de saída destinadas a
203.0.113.1
são permitidas; as restantes ligações são negadas. Todas as ligações de saída destinadas a203.0.113.1
correspondem à regradelegate-egress-my-vpc
e ignoram as restantes regras na política da organização.As ligações de saída são, em seguida, avaliadas em função das regras de firewall configuradas no
myvpc
. A regra predefinida permite as ligações de saída. A regrablock-egress-traffic-sepc-ports
na política ao nível da organização nega o resto das ligações.
Como configurar
Crie uma política de firewall para conter a regra:
gcloud compute firewall-policies create \ --organization=123456789012 \ --short-name="example-firewall-policy" \ --description="rules that apply to all VMs in the organization"
Adicione uma regra para delegar determinadas ligações de saída:
gcloud compute firewall-policies rules create 1000 \ --action=goto_next \ --description="delegate-egress-myvpc" \ --dest-ip-ranges=203.0.113.1/32 --direction=egress --organization=123456789012 \ --short-name="example-firewall-policy" \ --target-resources=projects/PROJECT_ID/networks/myvpc
Adicione uma regra para recusar todas as outras ligações de saída:
gcloud compute firewall-policies rules create 2000 \ --action=deny \ --description="block-egress-external-traffic-spec-ports" \ --direction=egress \ --dest-ip-ranges=0.0.0.0/0 \ --organization=123456789012 \ --short-name="example-firewall-policy"
Associe a política de firewall à organização:
gcloud compute firewall-policies associations create \ --organization=123456789012 \ --short-name="example-firewall-policy"
Exemplo 4: configure regras específicas da organização e da pasta
Neste exemplo de utilização, um administrador de segurança não permite ligações de entrada a nenhuma VM na organização, exceto às do intervalo que é adicionado a uma lista de autorizações: 203.0.113.0/24
. O administrador delega decisões adicionais
sobre o que fazer com as associações de 203.0.113.0/24
aos
administradores de segurança ao nível das pastas.
Existem duas pastas diferentes:
- Folder1, na qual a política permite ligações apenas às portas
80
e443
nas VMs de back-end, e as restantes portas estão bloqueadas. - Folder2, na qual a política aplica que nenhuma VM em Folder2 pode bloquear qualquer porta de destino para tráfego do endereço IP
203.0.113.1
. O administrador de segurança da pasta 2 delega outras decisões ao administrador de segurança da VPC, que decide abrir as portas80
,443
e22
e negar as restantes portas.
A configuração para este exemplo de utilização é descrita no diagrama seguinte.
Política em vigor aplicada em VMs
Neste exemplo, a política de firewall de VM eficaz após a avaliação das regras na hierarquia é a seguinte.
Para VMs pertencentes a my-vpc
Todas as ligações de entrada de
203.0.113.0/24
com portas de destino TCP80
e443
são permitidas. Quaisquer outras ligações de entrada são recusadas.Todas as ligações de saída são aceites de acordo com a regra de firewall da VPC aplicada, uma vez que não existe nenhuma correspondência nas regras de política de firewall de nível superior.
Para VMs pertencentes a vpc2
Todas as ligações de entrada de
203.0.113.1
são permitidas. As ligações de entrada de outras origens203.0.113.0/24
que não203.0.113.1
só são permitidas para as portas80
,443
e22
. Todas as outras ligações de entrada são recusadas.Todas as ligações de saída são aceites de acordo com a regra de firewall da VPC aplicada, uma vez que não existe nenhuma correspondência nas regras de política de firewall de nível superior.
Como configurar
Crie uma política de firewall para conter as regras da organização Org_A:
gcloud compute firewall-policies create \ --organization=100000000000 \ --short-name="example-firewall-policy-org-a" \ --description="rules that apply to all VMs in the organization"
Adicione uma regra para delegar a entrada de
203.0.113.0/24
ao proprietário do projeto:gcloud compute firewall-policies rules create 1000 \ --action=goto_next \ --description="delegate-ingress" \ --organization=100000000000 \ --short-name="example-firewall-policy-org-a" \ --src-ip-ranges=203.0.113.0/24
Adicione uma regra para recusar todas as outras ligações externas:
gcloud compute firewall-policies rules create 2000 \ --action=deny --description="block-ingress-external-traffic" --organization=100000000000 \ --short-name="example-firewall-policy-org-a" \ --src-ip-ranges=0.0.0.0/0
Associe a política de firewall à organização:
gcloud compute firewall-policies associations create \ --organization=100000000000 \ --short-name="example-firewall-policy-org-a"
Crie uma política de firewall para conter as regras da pasta1:
gcloud compute firewall-policies create \ --organization=100000000000 \ --short-name="example-firewall-policy-folder1" \ --description="rules that apply to all VMs under Folder1"
Adicione uma regra para permitir toda a entrada HTTP(S):
gcloud compute firewall-policies rules create 1000 \ --action=allow \ --description="allow-http-s-ingress" \ --layer4-configs=tcp:80,tcp:443 \ --organization=100000000000 \ --short-name="example-firewall-policy-folder1"
Adicione uma regra para negar a entrada em todas as outras portas ou protocolos:
gcloud compute firewall-policies rules create 2000 \ --action=deny \ --description="block-ingress-external-traffic" \ --organization=100000000000 \ --short-name="example-firewall-policy-folder1" \ --src-ip-ranges=0.0.0.0/0
Associe a política de firewall à pasta1:
gcloud compute firewall-policies associations create \ --organization=100000000000 \ --short-name="example-firewall-policy-folder1" \ --folder=200000000000
Crie uma política de firewall para conter as regras da pasta2:
gcloud compute firewall-policies create \ --organization=100000000000 \ --short-name="example-firewall-policy-folder2" \ --description="rules that apply to all VMs under Folder2"
Adicione uma regra para permitir a entrada de
203.0.113.1
:gcloud compute firewall-policies rules create 1000 \ --action=allow \ --description="allow-vul-scan-ingress" \ --organization=100000000000 \ --short-name="example-firewall-policy-folder2" \ --src-ip-ranges=203.0.113.1/32
Associe a política de firewall à pasta2:
gcloud compute firewall-policies associations create \ --organization=100000000000 \ --short-name="example-firewall-policy-folder2" \ --folder=300000000000
Adicione uma regra de firewall para permitir a entrada de ligações HTTP(S):
gcloud compute firewall-rules create allow-internal-traffic \ --network=vpc2 \ --action=allow \ --rules=tcp:80,tcp:443,tcp:22
O que se segue?
- Para criar e modificar políticas e regras de firewall hierárquicas, consulte o artigo Use hierarchical firewall policies.