Estou tendo um problema com um determinado indivíduo que continua raspando meu site de maneira agressiva; desperdiçando largura de banda e recursos da CPU. Eu já implementei um sistema que rastreia meus logs de acesso ao servidor da web, adiciona cada novo IP a um banco de dados, acompanha o número de solicitações feitas a partir desse IP e, em seguida, se o mesmo IP ultrapassar um certo limite de solicitações dentro por um determinado período, é bloqueado via iptables. Pode parecer elaborado, mas até onde eu sei, não existe uma solução pré-fabricada projetada para limitar um determinado IP a uma certa quantidade de largura de banda / solicitações.
Isso funciona bem para a maioria dos rastreadores, mas um indivíduo extremamente persistente está obtendo um novo IP de seu pool de ISP toda vez que é bloqueado. Gostaria de bloquear completamente o ISP, mas não sei como fazê-lo.
Fazendo um whois em alguns IPs de amostra, posso ver que todos compartilham o mesmo "nome de rede", "mnt-by" e "origin / AS". Existe uma maneira de consultar o banco de dados ARIN / RIPE para todas as sub-redes usando o mesmo mnt-by / AS / netname? Caso contrário, de que outra forma eu poderia obter todos os IP pertencentes a este ISP?
Obrigado.
fonte
Respostas:
whois [IP address]
(ouwhois -a [IP Address]
) geralmente fornece uma máscara CIDR ou um intervalo de endereços que pertence à empresa / provedor em questão, mas a análise dos resultados é deixada como um exercício para o leitor (há pelo menos dois formatos de saída whois comuns).Observe que esse bloqueio por atacado também pode potencialmente derrubar usuários legítimos. Antes de adotar essa abordagem, entre em contato com o departamento de abuso no ISP em questão (geralmente listado nas
whois
informações do domínio netblock ou DNS, caso contrário, abuse @ é um bom lugar para começar) para ver se a situação pode ser resolvida diplomaticamente e não tecnicamente .Observe também que há são algumas soluções pré-fabricados para pedidos limite por segundo por IP - Confira mod-qos ou capibilities shaping firewall / tráfego do seu sistema.
fonte
Entendi por conta própria. Tipo de.
O robtex.com lista todos os intervalos de IP anunciados para um determinado AS em: http://www.robtex.com/as/as123.html#bgp
Ainda não sei como ou de onde o robtex recupera essas informações. Se alguém quiser conversar e explicar de onde vêm os dados, isso seria ótimo.
fonte
Como você tem acesso ao iptables, assumirei que você tenha um acesso root no sistema de qualquer maneira. Nesse caso, sugiro instalar o Fail2Ban, que apenas bloqueia um IP (por um certo tempo você decide) se tentarem abusar de um serviço (HTTP, DNS, Correio, SSH ... etc), pressionando a porta de serviço como N vezes dentro do período X. (todos os usuários decidiram.)
Estou usando isso no meu servidor e estou obtendo resultados muito bons. especialmente com aqueles hackers chinease que querem entrar no meu SSH.
acesse minha página inicial para obter mais informações. Eu tenho um post de blog sobre fail2ban.
fonte
Você pode tentar esta ferramenta . Não é rápido, mas está funcionando.
fonte