Respostas:
Todas as tentativas de login são registradas /var/log/auth.log
.
Abra um terminal e digite o abaixo; se for maior que 1 página, você poderá rolar para cima e para baixo; digite q
para sair:
grep sshd.\*Failed /var/log/auth.log | less
Aqui está um exemplo real de um dos meus VPSs:
18 de agosto 11:00:57 izxvps sshd [5657]: Senha falhada para o root da porta 38980 ssh2 95.58.255.62 18 de agosto 23:08:26 izxvps sshd [5768]: Senha falhada para o root da porta 38156 ssh2 da porta 91.205.189.15 18 de agosto 23:08:30 izxvps sshd [5770]: Senha falhada para ninguém da porta 38556 ssh2 da porta 91.205.189.15 18 de agosto 23:08:34 izxvps sshd [5772]: Senha falhada para asterisco de usuário inválido da porta 38864 ssh2 da porta 91.205.189.15 18 de agosto 23:08:38 izxvps sshd [5774]: Senha falhada para o usuário inválido sjobeck de 91.205.189.15 porta 39157 ssh2 18 de agosto 23:08:42 izxvps sshd [5776]: Senha falhada para o root da porta 91.205.189.15 porta 39467 ssh2
Use este comando:
grep sshd.*Did /var/log/auth.log | less
Exemplo:
5 de agosto 22:19:10 izxvps sshd [7748]: Não recebeu a sequência de identificação de 70.91.222.121 10 de agosto 19:39:49 izxvps sshd [1919]: Não recebeu a sequência de identificação de 50.57.168.154 13 de agosto 23:08:04 izxvps sshd [3562]: Não recebeu a sequência de identificação de 87.216.241.19 17 de agosto 15:49:07 izxvps sshd [5350]: Não recebeu a sequência de identificação de 211.22.67.238 19 de agosto 06:28:43 izxvps sshd [5838]: Não recebeu a sequência de identificação de 59.151.37.10
/var/log/secure
systemctl -eu sshd
Eu argumentaria que o monitoramento de logs é uma solução fraca, especialmente se você tiver uma senha fraca em uma conta. Tentativas brutas geralmente tentam pelo menos centenas de chaves por minuto. Mesmo se você tiver um trabalho agendado para enviá-lo por e-mail com tentativas brutas, poderá levar horas para chegar ao seu servidor.
Eu recomendo fortemente fail2ban
. O wiki deles diz o que faz melhor do que eu.
O Fail2ban verifica os arquivos de log (por exemplo
/var/log/apache/error_log
) e proíbe os IPs que mostram os sinais maliciosos - muitas falhas de senha, buscas por explorações, etc. Geralmente, o Fail2Ban costumava atualizar as regras do firewall para rejeitar os endereços IP por um período de tempo especificado, embora outra ação arbitrária (por exemplo, envio de e-mail ou ejeção da bandeja de CD-ROM) também pode ser configurada. Pronto, o Fail2Ban vem com filtros para vários serviços (apache, curier, ssh, etc).
Obter proteção contra isso é tão simples quanto sudo apt-get install fail2ban
.
Por padrão, assim que alguém tem três tentativas fracassadas, seu IP é banido por cinco minutos. Esse tipo de atraso basicamente interrompe uma tentativa de força bruta do SSH, mas não vai estragar o seu dia se você esquecer sua senha (mas você deve usar as chaves mesmo assim!)