Network Shield
Bloqueie requisições por endereço do cliente, rede ou país com Network Shield, por meio de network lists que as regras de um firewall comparam.
Bloquear pela origem julga uma requisição pelo lugar de onde ela vem, não pelo que ela pede. A verificação compara o endereço do cliente de cada requisição com uma lista de endereços, redes ou países. Uma requisição de uma fonte listada é recusada antes que a aplicação a veja. A lista pode mudar com a mesma frequência que as ameaças, enquanto a regra que a lê continua a mesma.
Network Shield acrescenta essa comparação a um firewall como um critério de regra, Network, ${network} na Azion API. O critério compara o endereço do cliente de uma requisição com uma network list de endereços IP e intervalos CIDR, de Autonomous System Numbers (ASNs) ou de países. Use Network Shield para bloquear endereços sabidamente maliciosos, restringir o acesso por país, permitir somente as suas próprias redes, aplicar um rate limit a um conjunto de clientes ou bloquear exit nodes Tor.
Estrutura da network list
Network Shield compara por meio de uma network list, que guarda itens de um único tipo, fixado quando a lista é criada. Esta lista guarda um endereço IPv4, um intervalo IPv4 e um intervalo IPv6, enviada como corpo de POST /v4/workspace/network_lists:
typedefine o formato de todos os itens e nunca muda depois da criação.ip_cidraceita endereços e intervalos IPv4 e IPv6,asnaceita Autonomous System Numbers em dígitos ecountriesaceita códigos ISO 3166-1 alpha-2 de duas letras, comoDE.itemsguarda as entradas que uma regra compara, e duplicatas exatas são removidas. Um itemip_cidrtambém pode carregar uma data de expiração,--LTe uma data e hora em UTC, e um comentário com#.- Uma regra de firewall referencia a lista pelo ID com o critério Network,
{ "variable": "${network}", "conditional": "if", "operator": "is_in_list", "argument": <network-list-id> }. O ID é um inteiro JSON, e o mesmo ID enviado como string é recusado com25042. - Azion Console mantém as listas na página Network Lists, Azion API as serve em
/v4/workspace/network_lists, e Azion CLI as gerencia com o substantivonetwork-list.
Caminho da requisição
Criar uma network list não bloqueia nenhuma requisição. Uma lista não decide nada sozinha: ela só corresponde a tráfego depois que uma regra a referencia, em um firewall que o deployment de um workload nomeia. O que acontece com uma requisição que corresponde é o comportamento da regra, que Rules Engine para Firewall define e Network Shield não altera.
Este diagrama acompanha uma requisição, do firewall que a recebe até a decisão de uma regra com o critério Network:
- O deployment de um workload nomeia um firewall, e cada requisição ao workload chega a esse firewall antes da aplicação.
- O critério Network de uma regra nomeia uma network list pelo ID e compara o endereço do cliente da requisição com os itens da lista. Uma lista
asnoucountriescorresponde quando o endereço pertence a uma rede ou a um país listado. - O critério é verdadeiro para um cliente na lista com matches (
is_in_list) e para um cliente fora da lista com does not match (is_not_in_list). - Quando os critérios da regra correspondem, a regra executa os seus comportamentos. Um comportamento que interrompe a requisição, como Deny (403 Forbidden), responde ao cliente com
403, e nenhuma regra posterior é executada. - Quando os critérios não correspondem, ou nenhum comportamento interrompe a requisição, o firewall passa para a próxima regra. Uma requisição que nenhuma regra interrompe chega à aplicação.
Para saber como uma lista corresponde ao endereço do cliente, quando os itens expiram e quais listas a Azion mantém, consulte Correspondência de listas.
Escopo e limites
- Firewall: Network Shield acrescenta uma coisa a um firewall, o critério Network, e um firewall novo começa com ele ativado. O interruptor do Console vem ativado por padrão, e a API retorna
modules.network_protection.enabledcomotrue. Enquanto Network Shield está desativado, a API recusa uma regra que usa${network}com25047 Missing Required Modules, e Azion Console mostra a opção desabilitada, como Network - required Network Shield. Depois que uma regra usa o critério, a desativação do Network Shield é recusada com24005, cujo detalhe lista os IDs das regras. O interruptor fica em Main Settings › Modules, e a opção Network fica selecionável depois que você salva o firewall com ele ativado. Para saber por que mantê-lo ativado, consulte Boas práticas de Firewall. - Comportamentos: todo comportamento que uma regra correspondente executa pertence ao Firewall, então Deny (403 Forbidden), Drop (Close Without Response) e Set Rate Limit são aplicados com Network Shield desativado. Uma regra pode encadear o critério Network com qualquer outro critério que o firewall oferece, como Request Uri, para limitar um bloqueio a um caminho.
- Regras movidas: uma regra Network recriada em um firewall em que Network Shield está desativado é recusada até que Network Shield seja ativado ali. No firewall de onde a regra veio, Network Shield só é desativado depois que toda regra Network dele for excluída ou alterada.
- Listas: uma lista pode sustentar muitas regras em muitos firewalls, então uma mudança nos itens dela altera o que todas elas comparam, sem alterar as regras. Essa mudança chega ao tráfego antes de uma regra nova. Toda conta também tem
Azion IP Tor Exit Nodes, a lista2, que a Azion mantém atualizada, e qualquer gravação nela é recusada com22004. Para os tempos de propagação, consulte Correspondência de listas. - Países e ASNs: a Azion resolve o país e o ASN de um endereço a partir de bancos de dados mantidos por fornecedores externos. O controle de acesso por país ou ASN é, portanto, aplicado em regime de melhor esforço. Para saber qual tipo de lista atende cada caso, consulte Boas práticas de Firewall.
- Limites: uma regra que usa o critério Network conta para as regras que cada plano inclui por firewall, como qualquer outra regra. Cada lista comporta até 20.000 itens por padrão, um teto que a Azion pode aumentar mediante solicitação, de acordo com o plano. Para cada limite, a resposta quando ele é ultrapassado e o que cada plano inclui, consulte Limites de Firewall e, para os valores, Preços.
- Interfaces: você cria e gerencia listas na página Network Lists do Azion Console e pela API em
/v4/workspace/network_lists. Azion CLI as gerencia com comandos comoazion create network-listeazion update network-list --add-item. O critério Network pertence a uma regra de firewall, criada comazion create firewall-ruleou em/v4/workspace/firewalls/<firewall-id>/request_rules.azion.config.jsdeclara uma lista na entradanetworkListe ativa Network Shield com onetworkProtectionde um firewall, como documenta azion.config.js. Azion Terraform Provider gerencia listas com o recursoazion_network_list. Uma função em um firewall verifica um endereço contra uma lista comAzion.networkList.contains(), documentado em Network List API. - Observabilidade: uma requisição que Deny (403 Forbidden) recusa recebe a página de erro padrão da Azion. A página mostra o endereço comparado e o ID da requisição que
x-azion-request-idcarrega, e não nomeia nem o firewall, nem a regra, nem a lista. Com a configuração Debug Rules do firewall ativada, Real-Time Events e Data Stream mostram as regras que uma requisição executou, no campo$traceback. Real-Time Metrics detalha as requisições por endereço, rede e país. - Produtos vizinhos: Network Shield lê de onde uma requisição vem e nada sobre o que ela carrega. Para recusar um ataque que uma requisição carrega, use WAF, e para distinguir scripts de pessoas, use Bot Manager.
- Termos: o glossário de Firewall define as palavras às quais as páginas do Network Shield dão um significado específico, como network list, allowlist, blocklist e data de expiração.