Estou usando o OSSEC para evitar ataques ilícitos em meus sites. Ele verifica o que as pessoas estão perguntando e se vê uma tendência de que alguém está pedindo muitos arquivos que não existem para tentar encontrar uma página de login ou um arquivo de configuração aberto, ele irá bloquear automaticamente esses usuários. É bem extenso. Fiz uma postagem no blog sobre isso.
É muito fácil definir suas próprias regras para bloquear ataques de força bruta. Você também pode usar um servidor e vários clientes. Portanto, se um servidor perceber um ataque, ele o bloqueará e notificará o servidor do incidente.
Aqui está um bom post sobre como bloquear alguém que gera muitos 404s.