Como automatizar o Origin Shield
O Origin Shield fornece a lista de endereços IP dos Edge Nodes da Azion.
Proteja sua infraestruturaAo ativar o Origin Shield, a sua aplicação é protegida por uma network list mantida pela Azion. Os endereços IP nela mudam de tempos em tempos, mas você pode automatizar um comportamento usando o Rules Engine para garantir que você esteja sempre usando a lista atualizada.
Crie uma regra
- No Azion Console, navegue até Edge Firewall.
- Selecione o edge firewall em que você deseja configurar a regra.
- Clique na aba Rules Engine.
- Clique no botão + Rules Engine.
- Dê um nome à sua regra e, opcionalmente, uma descrição.
- Na seção Criteria, selecione a variável
Network
. - Como operador de comparação, selecione does not match.
- Como argumento, selecione a lista
Azion Origin Shield
. - Na seção Behaviors, selecione Drop (Close Without Response) da lista de comportamentos.
- Clique no botão Save.
- No Real-Time Manager (RTM), navegue até Edge Firewall.
- Selecione o edge firewall em que você deseja configurar a regra.
- Clique na aba Rules Engine.
- Clique no botão New Rule.
- Dê um nome à sua regra e, opcionalmente, uma descrição.
- Na seção Criteria, selecione a variável
Network
. - Como operador de comparação, selecione does not match.
- Como argumento, selecione a lista
Azion Origin Shield
. - Na seção Behaviors, selecione Drop (Close Without Response) da lista de comportamentos.
- Clique no botão Save.
- Execute a seguinte requisição
GET
para obter oid
da lista Azion Origin Shield:
curl --location 'https://api.azionapi.net/network_lists' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [VALOR DO TOKEN]'
- Você receberá uma resposta semelhante a esta:
{ "count": 1, "total_pages": 1, "schema_version": 3, "links": { "previous": null, "next": null }, "results": [ { "id": 6217, "last_editor": "user@email.com", "last_modified": "2023-11-14T21:35:39.808175Z", "list_type": "ip_cidr", "name": "Azion Origin Shield", "country_list": [], "ip_list": [ "192.168.0.5" ] } ]
}
}
- Execute a seguinte requisição
POST
no seu terminal, substituindo[VALOR DO TOKEN]
pelo seu personal token, a variável<edge_firewall_id>
pelo seu ID de edge firewall, e o valor<network_list_id>
com o ID da lista do Origen Shield:
curl --location 'https://api.azionapi.net/edge_firewall/<edge_firewall_id>/rules_engine' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [VALOR DO TOKEN]' \
--header 'Content-Type: application/json' \
--data '{ "name": "Automatizar Origem Shield", "is_active": true, "behaviors": [ { "name": "drop" } ], "criteria": [ [ { "variable": "network", "operator": "is_not_in_list", "conditional": "if", "argument": "<network_list_id>" } ] ]
}'
Chave | Descrição |
---|---|
name | Nome da regra |
behaviors | Array que armazena objetos que definem comportamentos |
criteria | Array que armazena objetos que definem critérios |
Consulte a documentação da API Azion para obter mais informações sobre objetos de critérios e comportamentos.
- Você receberá a seguinte resposta:
{ "results": { "name": "Automatizar Origem Shield", "is_active": true, "behaviors": [ { "name": "drop" } ], "criteria": [ [ { "variable": "network", "operator": "is_not_in_list", "conditional": "if", "argument": "6217" } ] ], "last_modified": "2023-11-29T19:53:56.476161Z", "last_editor": "user@email.com", "id": 28629, "order": 3 }, "schema_version": 3
}
- Aguarde alguns minutos para que as alterações se propaguem.
Se a sua aplicação receber uma requisição gerada a partir de um IP que não está na lista, o edge firewall irá descartar a requisição.