As regras de firewall do Cloudfare permitem bloqueios de IPs de acordo uma lista. Para isso vamos precisar interagir com a API de Firewalls e a API de Rules List. Além disso, ambém vai ser necessário gerar Tokens para a API.
Depois de termos entendido e validado a integração com a API do Cloudfare precisamos:
Criar uma tarefa assíncrona que rode de hora em hora;
Analisar a seguinte consulta BlockedRequest.objects.last_hour().count_by("source_ip").filter(total__gte=30));
Atualizar a lista de IPs bloqueados com esses novos IPs;
IMPORTANTE:
Cada lista do Cloudfare tem o tamanho máximo de 1000 elementos (então pode ser que a gente tenha que criar mais de uma lista em algum momento);
Para IPv6: pegar 4 primeiras parte e adicionar ::/64
As regras de firewall do Cloudfare permitem bloqueios de IPs de acordo uma lista. Para isso vamos precisar interagir com a API de Firewalls e a API de Rules List. Além disso, ambém vai ser necessário gerar Tokens para a API.
Depois de termos entendido e validado a integração com a API do Cloudfare precisamos:
BlockedRequest.objects.last_hour().count_by("source_ip").filter(total__gte=30))
;IMPORTANTE:
Código rascunho para a tarefa:
The text was updated successfully, but these errors were encountered: