Bloqueando ataque de força bruta em ssh através de script bash
Publicado por Ricardo Lino Olonca 25/07/2007
[ Hits: 10.463 ]
Homepage: ricardoolonca.blogspot.com.br
Como cuido de vários servidores em vários lugares, uso ssh para me conectar remotamente.
O problema é que, através de um ataque de força bruta, alguém pode invadir meus servidores. Uma forma de evitar isso é com um ids, mas também pode ser feito de uma forma simples através um script bash rodando via cron.
Esse script monitora os arquivos de log e bloqueia o ip de origem em um ataque de força bruta na porta ssh.
#!/bin/bash # IDS feito por Ricardo Lino Olonca em 22/05/2007 # Versao 0 # Variaveis log="/var/log/auth.log" bloqueados="/var/log/ids.log" linhas=`cat $bloqueados | wc -l` # Quantos ips ja foram bloqueados h=`date +%H` # Hora` d=`date +%e` # Dia` # Aqui eu listo todos os ips que tentaram se conectar ao meu servidor. # O "head -1" pega apenas o que mais tentou. Mude esse valor conforme necessário ip=`cat $log|grep "$d $h"|grep Illegal|cut -d: -f7|sort |uniq -c|sort -nr|awk '{print $2}' |head -1` tip=1$ip tmp="/tmp" syslog="/var/log/syslog" firewall="/etc/init.d/firewall" # Sistema rm -rf $tmp/ids.sh.* if [ $tip <> 1 ] # Só entra no "if" se alguém tentou conectar meu servidor na última hora then echo $ip >> $bloqueados sort $bloqueados | uniq > $tmp/ids.sh.$$ rm -rf $bloqueados mv $tmp/ids.sh.$$ $bloqueados linhas2=`cat $bloqueados | wc -l` if [ $linhas -ne $linhas2 ] # Se o valor de ips aumentou, então o firewall deve ser restartado then $firewall echo "`date` - Firewall restartado pelo ids - ip $ip" >> $syslog fi fi # No script do firewall deve ter a seguinte linha (sem as "#", lógico) # for i in `cat /var/log/ids.log` # do # iptables -A INPUT -s $i -j DROP # done
Remoção de arquivos multimídia
Instalando OCR apps no seu Debian.
Troca automatica de papel de parade no fluxbox
Título: aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (9)
Problema ao atualizar archlinux nvidia [RESOLVIDO] (3)