Eu tenho um servidor Ubuntu Linux voltado para a web. Por causa disso, recebo um bom número de tentativas de SSH de força bruta (quem não recebe). Gostaria de exibir as últimas N tentativas de login malsucedidas no meu prompt de login. Eu elaborei o script simples:
grep "Failed" /var/log/auth.log | tail -5
mas o que preciso saber é onde coloco essa linha de script? Existe algum lugar para colocá-lo que seja independente do shell?
Responder1
Existem alguns pacotes que você pode usar para ajudar em ataques de força bruta.
- Negar hosts
- Fail2ban
Para coletar logs e enviar um relatório, você pode usar o logwatch. Ele também pode enviar um resumo de logons com falha.
Para responder sua pergunta original você pode colocar seu script em "/etc/profile.d/yourscript.sh" e ele deve ser executado no login.
Você também pode considerar configurar o pacote arno-iptables-firewall.
Responder2
É realmente dependente do shell. Para bash
, você deve colocá-lo em .bash_login
arquivo.
Em relação à prevenção de ataques de força bruta, além do que já foi sugerido para colocar o IP do invasor na lista negra, costumo dizer ao sshd para escutar em uma porta fora do padrão e desabilitar a autenticação por senha. Claro, isso nem sempre é possível, mas com certeza é eficaz.
Responder3
Coloque tudo em /etc/profile.
Ele executará tudo em /etc/profile antes de ir para o arquivo de inicialização do shell.
Responder4
Existe umscript perl,Bloco SSHque pode ser usado contra SSH de força bruta.
Ele segue uma tentativa frequente de um endereço IP e retarda suas tentativas.