Bloqueando ataque de força bruta em ssh através de script bash
Publicado por Ricardo Lino Olonca 25/07/2007
[ Hits: 10.570 ]
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
Renomeando múltiplos arquivos com espaços
Script para verificação do JAVA configurado no PATH
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Erro ao fazer remaster usando Penguin eggs (1)
Warcraft II Remastered no Linux? (0)
queria saber como instalar o android power tools igual ao winux no lin... (7)