Pular para o conteúdo principal

Solução de problemas

Quase todo problema de implantação do WAF cai em um destes grupos: DNS, certificado, origem ou decisão do WAF. A tabela abaixo parte do sintoma.

Sintomas e o que fazer​

SintomaCausa provávelO que fazer
Domínio parado em PENDING_VERIFICATIONRegistro TXT ausente, com nome errado ou ainda não propagadoConfira _nnwaf-challenge.<hostname> e o valor nnwaf-verify=<token>; aguarde o TTL e rode a verificação de novo
Domínio em DEGRADED sem você ter mexidoTXT de verificação ausente há 7 diasRecrie o registro; o domínio volta a ser verificado na releitura diária
Domínio parado em PENDING_CERTIFICATECNAME de _acme-challenge ausente ou apontando para outro destinoCrie o CNAME com o valor mostrado na Console e aguarde a emissão
Navegador acusa certificado inválidoCertificado ainda não emitido, ou DNS já aponta para a borda antes da emissãoVolte ao passo do certificado; se o DNS já foi trocado, aguarde a emissão ou refaça a ordem
Domínio parado em READY_FOR_DNSRoteamento ainda não aponta para a bordaCrie o CNAME para edge.gw.nnumbers.com.br, ou A/AAAA no apex, e rode a conferência
404 em todas as requisições do hostnameO DNS aponta para a borda, mas o domínio não está ativo nelaConfira o estado do domínio; domínio não ativo responde 404 na borda
403 no navegadorRequisição bloqueada pelo WAFPeça o identificador da requisição exibido na resposta e procure o evento correspondente
413 em POST grandeCorpo acima do limite de inspeção da política, padrão 64 KiBReduza o corpo, use a isenção de inspeção de corpo no endpoint de upload ou ajuste o limite da política até 1 MiB
411 em uploadRequisição com Transfer-Encoding (chunked/streaming) sob isenção de corpo, que exige tamanho declaradoEnvie Content-Length; sem tamanho declarado a isenção recusa a requisição
429 para cliente legítimoLimite de taxa baixo para o volume real, ou limite por instância mal calibradoReveja a unidade e o alcance; veja Limitação de taxa
502Origem inalcançável, ou certificado da origem inválidoTeste a origem diretamente; a verificação de TLS da origem não pode ser desligada, então o certificado precisa ser válido e confiável
503Indisponibilidade temporária da borda ou tempo esgotado na origemRepita; se persistir, confira a saúde da origem e o tempo de resposta
504Origem lenta além do tempo limiteInvestigue o tempo de resposta da aplicação e o caminho até ela
Tráfego legítimo bloqueado, sem padrão claroFalso positivo do conjunto OWASP ou regra personalizada agressivaLeia o evento e crie exceção pontual; veja Eventos e exceções
Métricas atrasadas ou vaziasAgregação tem alguns minutos de atrasoUse os eventos para o caso pontual e aguarde a agregação
Domínio não ativaEtapa anterior incompleta: verificação, certificado ou roteamentoSiga os estados em Domínios até READY_FOR_DNS

DNS não propagou​

O DNS é do seu provedor, então a propagação depende do TTL que você configurou. Para conferir sem esperar o navegador:

dig +short app.empresa.com.br CNAME
dig +short _nnwaf-challenge.app.empresa.com.br TXT
dig +short _acme-challenge.app.empresa.com.br CNAME

Se o CNAME do hostname não aparece, o registro não foi criado ou está no lugar errado da zona. Se aparece e o domínio continua em READY_FOR_DNS, rode a conferência de roteamento na Console — ela olha a resposta pela borda, não o cache do seu computador.

Certificado não emitido​

A emissão depende do CNAME de _acme-challenge apontar para o valor que a Console mostra, terminado em ._acme.gw.nnumbers.com.br. Erros comuns: criar o registro como TXT em vez de CNAME, usar o nome sem o prefixo, ou deixar um registro antigo com o mesmo nome no provedor.

Enquanto o certificado não sai, não troque o DNS do hostname para a borda: você teria erro de certificado no navegador durante a janela.

Origem indisponível​

Antes de culpar o WAF, teste a origem direto do seu ambiente:

curl -sS -o /dev/null -w '%{http_code} %{time_total}\n' https://origin.empresa.com.br/

Se a origem responde mal direto, o problema é dela. Se responde bem direto e mal pelo WAF, confira: o endereço e a porta cadastrados, o Host esperado pela origem, o certificado da origem (a verificação é sempre feita) e o tempo limite de resposta da origem.

Erros que o usuário final vê​

CódigoSignificadoQuem resolve
403Requisição bloqueada pelo WAF; a resposta traz um identificador de requisiçãoQuem administra o WAF, com o identificador
413Corpo acima do limite de inspeção, ou acima do tamanho máximo da isençãoQuem envia ou quem ajusta a política
411Upload com Transfer-Encoding sob isenção de corpo: falta o Content-LengthQuem envia
429Limite de taxa atingidoQuem administra o WAF
404Host desconhecido na borda: o DNS aponta para a borda, mas o domínio não está ativoQuem administra o WAF
502Origem inalcançável ou certificado da origem inválidoOrigem
503Indisponibilidade temporária da borda ou tempo esgotado na origemNNumbers ou origem
504Origem mais lenta que o tempo limiteOrigem
O identificador de requisição é o atalho

Quando um usuário relata 403, peça o identificador que aparece na página de erro. Com ele você acha o evento exato em segundos, sem procurar por horário aproximado.

Próximos passos​