Segurança: Rack Attack avançado
O curso leva o Rack::Attack de limitar requisições a banir clientes. Ele mostra por que um throttle não guarda memória entre janelas e como o Fail2Ban e o Allow2Ban acrescentam essa memória com maxretry, findtime e bantime. As aulas tratam de escadas de escalada com recuo exponencial limitado, throttles em camadas e os problemas dos banimentos permanentes. Também abordam sinais além da contagem, a divisão entre borda e aplicação, desafios, instrumentação, a página de bloqueio e o desbanimento. A última aula monta uma defesa em camadas, começando por regras rastreadas.
O que você vai aprender
- ✓A diferença entre Fail2Ban e Allow2Ban e quando usar cada um
- ✓Banimentos escalonados com recuo exponencial limitado e throttles em camadas
- ✓Como combinar sinais como caminho, cabeçalhos e campo de isca numa pontuação
- ✓O que fica na borda e o que fica na aplicação
- ✓Instrumentação, alertas e revisão das regras de banimento, com caminho de desbanimento
- ✓Implantar regras primeiro como track e convertê-las com base em dados
De limitar a banir
O curso anterior terminou com um conjunto funcional de limites. Login limitado por endereço e por conta, cadastro e redefinição de senha contidos, um limite geral de volume. Contra um script que martela o mais rápido que consegue, isso basta.
Ler a aula completa grátis →Currículo
7 aulasDe limitar a banir
Por que um throttle não tem memória entre janelas e como o banimento acrescenta essa memória.
Fail2Ban e Allow2Ban
Fail2Ban conta requisições suspeitas, Allow2Ban conta toda requisição que casa, e chaves precisam de espaço de nomes.
Escalada e recuo
Escadas de escalada, recuo exponencial com teto, throttles em camadas e os motivos contra banimentos permanentes.
Sinais além da contagem
Caminho, cabeçalhos, campo de isca e tempo como sinais, combinados numa pontuação que rastreia a faixa média.
A borda, e o que o seu app não deve fazer
O que a borda deve rejeitar, o que só a aplicação sabe, o IP do cliente atrás de CDN e desafios.
Resposta a abuso e operação
Instrumentar eventos do rack_attack, alertar sobre banimentos, desenhar a página de bloqueio e registrar desbanimentos.
Juntando tudo: uma defesa em camadas
Uma configuração de defesa em seis camadas, a implantação começando por track e os limites de limitar e banir.