← AWS Advanced Networking: redes e produção
13 / 22 · 100 MIN

Network Firewall: regras, âmbito e evidência

Demonstra que as origens certas atravessam os motores certos e que a política aplicada produz o resultado esperado.

1. Seguir a decisão entre motores

Um firewall presente na arquitetura não demonstra que todas as regras inspecionam todos os fluxos. No Network Firewall, o motor stateless atua primeiro. Uma ação pass deixa passar o pacote; forward_to_sfe envia-o ao motor stateful. Antes de investigar uma regra de domínio que parece ineficaz, confirma a ação tomada a montante. As prioridades stateless têm dois níveis: primeiro grupos na política, depois regras no grupo, começando nos números menores. Não ordenes todas as regras como se pertencessem a uma lista global. No exercício local, as correspondências são fornecidas como dados fictícios; o objetivo é visualizar a precedência, sem interpretar pacotes ou substituir o motor real. Na entrega, guarda a sequência de decisões esperada para tráfego permitido e proibido.

2. Definir âmbito antes de discutir resultado

Numa VPC de inspeção central, uma aplicação spoke pode ter caminho correto mas estar fora de HOME_NET. Revê os CIDRs de origem exigidos e as variáveis efetivas do grupo. Se HOME_NET do grupo difere da política, EXTERNAL_NET omitido continua a herdar o valor da política; não assumes que a negação foi recalculada a partir da alteração local. Para domínio, o motor usa SNI de HTTPS ou Host de HTTP, sem lookup DNS externo. Uma entrada exata cobre esse nome; um ponto inicial permite domínio e subdomínios. Esta comparação de nomes não autentica o servidor nem prova correspondência entre IP e identidade. Se esses requisitos existem, identifica os controlos adicionais e testa cada origem a partir do processo aplicacional relevante.

3. Evitar bloqueio antes da identificação

Em default action order, pass é avaliado antes de drop, mesmo quando o número priority de drop é menor. Strict order permite ordem explícita, mas não elimina a necessidade de contexto aplicacional. O SYN inicial ainda não contém SNI. Uma ação Drop all pode impedir o handshake antes de a regra HTTPS conseguir corresponder. Escolhe ações predefinidas e regras que respeitem a sequência do protocolo. As variantes Application drop established têm diferenças de direção: a bidirecional pode bloquear banners e pacotes de controlo antes de pass; a server-directed preserva o sentido servidor-cliente TCP, com limites próprios. Não transfiras essa exceção para DNS UDP ou ICMP. Misturar grupos Allow de domínio com Alert em action order também pode produzir um drop anterior ao alerta esperado.

4. Planear alterações como estado partilhado

Um rule group pode ser referenciado por várias políticas. Antes de o atualizar, identifica consumidores, regras dependentes e o impacto fora do projeto que abriu o ticket. A capacidade reservada não é alterável depois da criação; um aumento pode exigir novo grupo e migração das referências. O UpdateToken protege contra alterações concorrentes. Se estiver obsoleto, lê o estado atual, compara a intenção e reaplica apenas a mudança reconciliada. Trocar só o token enquanto se envia um objeto antigo pode apagar trabalho de outra equipa. DryRun valida o pedido e permissões sem aplicar alterações. Depois da execução, IN_SYNC informa sobre configuração, mas o firewall só está READY quando os endpoints também estão prontos. Completa a verificação com tráfego representativo por AZ.

5. Explicar o que os logs conseguem provar

Os logs de tráfego Network Firewall pertencem ao motor stateful. Tráfego aceite diretamente por stateless pode ter métricas sem aparecer nesses flow logs. Dentro de netflow, cada evento representa um sentido; para medir resposta, procura e correlaciona o sentido inverso. Usa nome do firewall, AZ, instante, endereços e portas para delimitar a investigação. Alertas dependem de ações e logging configurados; a ausência de alerta não prova ausência de tráfego. TLS logs exigem inspeção TLS configurada e reportam eventos específicos desse motor. Nas métricas, diferencia DroppedPackets por ações de regras, InvalidDroppedPackets por validação e OtherDroppedPackets por outras causas. Algumas séries só publicam valores não nulos; não transformes ausência de amostra em prova universal de zero perdas.

6. Recuperar sem perder a intenção de segurança

Uma quebra a meio de sessão pode retirar ao motor o contexto inicial. Continue aplica regras ao tráfego subsequente sem esse histórico; regras L7 podem deixar de corresponder, embora outras regras continuem a atuar. Drop mantém fail closed. Reject também bloqueia e envia rejeição TCP para permitir que o cliente estabeleça nova sessão. A escolha é uma decisão de requisito e recuperação, não apenas uma forma de reduzir alertas. Ensaia o comportamento do cliente, retries, idempotência e reconciliação do batch. Para concluir a entrega, associa a cada origem um teste permitido e um proibido, a versão aplicada, os resultados por AZ e o owner operacional. Uma exceção deve ter âmbito e prazo; não a ocultes num dashboard agregado de disponibilidade.

# Local ordering illustration using precomputed matches, not a packet engine.
def first_action(groups, default="forward_to_sfe"):
    for group in sorted(groups, key=lambda g: g["priority"]):
        for rule in sorted(group["rules"], key=lambda r: r["priority"]):
            if rule["matches"]:
                return rule["action"]
    return default

a = {"priority": 5, "rules": [
    {"priority": 100, "matches": True, "action": "pass"}]}
b = {"priority": 10, "rules": [
    {"priority": 1, "matches": True, "action": "drop"}]}
assert first_action([b, a]) == "pass"
a["rules"][0]["matches"] = False
assert first_action([a, b]) == "drop"
b["rules"][0]["matches"] = False
assert first_action([a, b]) == "forward_to_sfe"
assert first_action([], default="drop") == "drop"
print("four ordering cases passed; no packets inspected")
NA PRÁTICA

Grupo A com prioridade 5 e regra 100 pode ser avaliado antes de grupo B com prioridade 10 e regra 1. A sequência de grupos precede a sequência interna de regras.

Armadilhas comuns

Stateless pass como stateful pass; EXTERNAL_NET presumido; token novo com objeto antigo; ausência de log como ausência de tráfego.

Tópicos relacionados: Inspeção e encaminhamento simétrico · Concorrência em pipelines de rede

Leva esta ideia contigo

Âmbito, ordem, propagação e resultado funcional precisam de evidência separada e coerente.

Criar conta

Referência: Network Firewall packet processing · ANS-C01

AWS é uma marca comercial da Amazon.com, Inc. ou das suas afiliadas. A dr.pt é uma plataforma de preparação independente e não está afiliada, associada, patrocinada, autorizada nem aprovada por AWS. Os conteúdos e as perguntas são originais, não são perguntas oficiais de exame, e concluir os nossos testes não atribui nem garante qualquer certificação. Os nomes são usados apenas para identificar o tema. Todas as outras marcas pertencem aos respetivos titulares.