fail2ban
é provavelmente a única ferramenta que você desejará para isso. Ele funciona analisando os logs de serviços populares (ssh, apache, etc) e procurando por falhas de login.
Quando ele encontra um certo número de falhas (ou seja, se alguém tentar forçar o SSH a usar força bruta), ele pode atualizar o iptables para bloquear o IP de ataque. Ele também pode enviar e-mails para notificá-lo (como você pergunta).
Você pode ler mais sobre como configurá-lo aqui: link , mas há muitas páginas na internet informando como fazer mais com isso. Não é uma ferramenta simples.
Fora isso, para qualquer serviço, se você transferi-lo para uma porta imprevisível, as pessoas estarão muito menos propensas a se depararem com ele e conseguirem iniciar o brute forçando-o. Eu corro meus todos os meus servidores SSH no intervalo de porta 40000-50000. Eu tenho fail2ban instalado também, mas eu nunca tive ninguém encontrar o servidor SSH ainda.
É claro que isso não é útil para nenhum serviço (por exemplo, o HTTP sempre será esperado na p80), portanto, se você estiver mantendo outros usuários, terá que considerar quanto esforço extra a alteração da porta causará a eles.