Você pode usar um proxy reverso para obter o que deseja, desde que esteja executando um aplicativo baseado na Web, mas isso apenas desvia o esforço para o proxy e não é a solução ideal para o seu problema.
Esse tipo de problema geralmente é resolvido usando um firewall. Todos os firewalls podem filtrar endereços IP, ou intervalos de endereços IP, e se você estiver executando um serviço online como você descreve, é definitivamente algo que deve estar no mix.
Além disso, um firewall moderno com todos os recursos também pode bloquear automaticamente endereços IP com conexões abertas excessivas, até um limite definido por você. Isso elimina a necessidade de "perseguir" atividades maliciosas contínua e manualmente que possam alterar os endereços IP para contornar os blocos codificados permanentemente.