Eu configurei duas regras diferentes do Fail2Ban:
-
Se eles tentarem um nome de usuário inválido, serão banidos na primeira tentativa, permanentemente. Eu não tenho muitas pessoas ficando assim e nenhuma delas foi banida dessa maneira; mas pode ser um problema de suporte se você tiver muitas pessoas se conectando. A raiz não é um login ssh válido em meus sistemas.
Eu estou em um sistema FreeBSD, então você pode ter que modificar esta regra um toque. Crie um arquivo ssh-invaliduser.local no diretório filter.d:
failregex = ^%(__prefix_line)s[iI](?:llegal|nvalid) user .* from <HOST>\s*$
Defina as opções para essa regra como de costume no arquivo
jail.local
. -
A segunda regra bloqueia tentativas que têm a senha errada 10 vezes por 10 minutos. Ninguém vai invadir a velocidade média de 1 senha por minuto.