Ao tentar registrar-se no site https://it6.cc/, a verificação de disponibilidade do nome de usuário fica travada. A mensagem “Verificando disponibilidade do nome de usuário…” aparece e persiste por um longo período, impedindo o prosseguimento do registro normal.
Encontrei a razão do problema, devido à regra de WAF do Cloudflare,
a regra original
(cf.threat_score ge 5 and not cf.client.bot) or (not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}) or (not http.user_agent contains "Mozilla/")
aqui está a regra de otimização por claude ai, isso resolve o problema
(cf.threat_score ge 10 and not cf.client.bot) or
(http.request.version eq "HTTP/1.0") or
(not http.user_agent contains "Mozilla/" and not cf.client.bot)
Explicação das Alterações
Análise e Otimização da Regra de Firewall do Cloudflare
Regra Atual:
Copiar
(cf.threat_score ge 5 and not cf.client.bot) or
(not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}) or
(not http.user_agent contains "Mozilla/")
Análise:
cf.threat_score ge 5 and not cf.client.bot: Esta parte é razoável, bloqueando clientes de alta ameaça que não são bots.not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}: Isso pode ser muito restritivo, potencialmente bloqueando clientes antigos legítimos.not http.user_agent contains "Mozilla/": Isso pode bloquear requisições legítimas de clientes não-navegador ou chamadas de API.
Regra Otimizada:
Copiar
(cf.threat_score ge 10 and not cf.client.bot) or
(http.request.version eq "HTTP/1.0") or
(not http.user_agent contains "Mozilla/" and not cf.client.bot)
Explicação das Alterações:
- Aumentou o limite da pontuação de ameaça para 10 para permitir mais tráfego legítimo.
- Bloqueia apenas HTTP/1.0, permitindo versões mais recentes e SPDY.
- Modificou a verificação do agente do usuário para se aplicar apenas a tráfego não-bot, permitindo chamadas de API e clientes legítimos não-navegador.
Considerações Adicionais:
- Adicionar exceções para caminhos ou endpoints específicos usados para verificações de nome de usuário:
Copiar
and not (http.request.uri.path contains "/check_username")
- Listar IPs conhecidos bons ou países onde a maioria dos seus usuários está localizada.
- Considerar a implementação de limitação de taxa em vez de bloqueio total para algumas condições.
Implementação:
Substitua sua regra atual pela versão otimizada e monitore seus efeitos. Ajuste conforme necessário com base nos seus padrões de tráfego e requisitos de segurança.
