Bloqueando ataque de força bruta em ssh através de script bash
Publicado por Ricardo Lino Olonca 25/07/2007
[ Hits: 10.177 ]
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
administrador do farmacia administra una farmacia
Script Iptables ( Passou em Testes )
Cálculo de número perfeito único
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Dificuldade em ler binário (12)
Em que pasta/arquivo ficam as configurações das janelas em derivados d... (2)
Não consigo atualizar minha GPU (1)