bloqfor
Publicado por Eduardo Vieira Mendes 08/05/2008
[ Hits: 5.180 ]
Script para bloqueio automático de IP por tentativa de ataque Brute Force (força bruta).
** Identifica o IP atacante.
** Bloqueia automaticamente o mesmo.
**Envia relatório sobre o IP atacante.
#!/bin/sh ################################################################# # Script para localizar IP da tentativa de acesso por brute force # ao servidor SSH # Criado por: # Eduardo Vieira Mendes # eduardovmendes@gmail.com # LUS: 298813 # 27/03/2008 ################################################################# # Variáveis log="/var/log/secure" bloq="/var/log/blocfor.log" linhas=`cat $bloq | wc -l` d=`date +%e` tmp="/tmp" #Mude para o e-mail que deseja receber os relatórios email="suporte@localhost.com.br" # Mude aqui o comando para reiniciar seu firewall firewall="/etc/init.d/iptables restart" #Pega os acessos ilegais e joga no arquivo temporário exec 3<&0 exec 0<$log while read i; do campos=`echo $i | wc -w` echo $i | grep Illegal | grep $d | cut -d" " -f $campos >> /tmp/blocfor.tmp 2> /dev/null done exec 0<&3 #Pega apenas o IP que mais tentou quant=`cat /tmp/blocfor.tmp | sort | uniq -c | sort -nr | head -1 | cut -f 1` #Sistema #Se o Ip tentou conectar mais de 8 vezes significa que realmente e um ataque por brute force #Você pode mudar este número pois depende se você tem aquele funcionário "esperto" que consegue errar #o nome de usuário dele mais de 8 vezes! :D if [[ -n $quant ]] && [[ $quant -ge 8 ]] then ip=`cat /tmp/blocfor.tmp | sort | uniq | sort -nr | head -1` tip=1$ip rm -rf /tmp/blocfor.tmp rm -rf $tmp/blocfor.sh.* if [ $tip <> 1 ] then echo $ip >> $bloq sort $bloq | uniq > $tmp/blocfor.sh.$$ rm -rf $bloq mv $tmp/blocfor.sh.$$ $bloq linhas2=`cat $bloq | wc -l` if [ $linhas -ne $linhas2 ] # Se o valor de ips aumentou, entao o firewall deve ser restartado then $firewall echo "Acesso indevido ao SSH pelo ip: $ip - $quant tentativas - Automaticamente bloqueado" | mail -s "Acesso indevido" $email fi fi # Descomente as linhas abaixo para deixar um echo toda vez que o script rodar e não encontrar # nenhuma ataque por brute force. Não recomendo pois vamos colocar o script para rodar # de hora em hora através do agendador CRON. # Se descomentar estas linhas você vai receber 24 e-mails por dia informando se houve ou não # tentativa de invasão. #else # echo "Nenhum acesso por force brute ao sistema hoje!" fi exit 0 # FIM DO SCRIPT #======================================================================= # IPTABLES # Adicione as seguintes linhas ao final do seu firewall # Este exemplo é para o Iptables - Modifique conforme suas necessidades! #for i in `cat /var/log/blocfor.log` #do # echo "Bloqueando IP por tentativa de brute force $i" # $IPTABLES -A INPUT -s $i -j DROP #done #======================================================================= # CRON # Adicione a seguinte linha ao seu /etc/crontab #00 * * * * root /usr/local/bin/locfor.sh
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - CRIANDO USUÁRIOS
Baixando e instalando o Asterisk
Baixa os pacotes de uma determinada versão do Slackware para posterior atualizaçao
Nenhum comentário foi encontrado.
librePods: liberte seus AirPods em 2026
Bluefin - A nova geração de ambientes de trabalho Linux
Como atualizar sua versão estável do Debian
Instalando e definindo as novas fontes Adwaita no GNOME
Configurar aviso da temperatura da CPU no Conky
Pós-instalação do elementary OS 8.1
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Conky não mostra temperaturas da CPU no notebook (15)
Após todos esses anos... youtube! (2)
archlinux resolução abaixou após atualização [RESOLVIDO] (19)
Registro do 'last&qu... errado [RESOLVIDO] (9)
O WiFi não reconhece minha rede depois que o processo de suspensão é r... (2)









