Bloqueia ataques do tipo bruteforce
Publicado por Anonymous Misteryous 06/08/2007
[ Hits: 10.047 ]
Script para bloqueio de ataques do tipo bruteforce em servidores ftp.
Atualmente para proftp slackware, mas, somente mudar o caminho onde o log se encontra.
Está comentado a parte do bloqueio do ip via iptables, somente envia email ao admin alertando.
Comentário são bem vindos sempre!
#!/bin/bash #Danyllo Carvalho #A ideia da expressao attemps eh do Mastah #Aquele abraco principal(){ echo '' echo '' echo -e '\e[33;1m Bloqueio de tentativas bruteforce em ftp \e[m' echo -e '\e[33;1m Danyllo Carvalho\e[m' echo -e '\e[33;1m Bruteforce_block.sh\e[m' echo '' echo '' data=`date +%Y_%m_%d` ips=$(cat /var/log/proftpd.log |grep -i "no such user found" | awk -F" " '{ print $15}') attempts=1 if [ -z "$ips" ] ; then exit else # fi for ip in $ips; do lastip=$ip if [ "$lastip" == "$ip" ] ; then attempts=$(expr $attempts + 1) #Eis a matada do Mastah, com certeza eu demoraria bem mais tempo pra sacar dessa forma #Lista as ocorrencias e cria essa expressao como condicao, so vai printar se for maior ou igual a #15 ocorrencias if [ $attempts -ge 15 ] ; then echo "Possivel ataque por forca bruta detectado -------> $ip" attempts=1 lastip="" fi fi done sleep 2 fi enviar } enviar(){ maquina=`uname -n` mensagem="Bom dia, Venho atraves deste informar-lhe que os seguintes enderecos estao tentando um ataque do tipo Brute Force no servidor $maquina, o seguinte endereco foi logado ($ip), o qual pode ser bloqueado manualmente no termino do script.Admin" echo -en "\n\n\n" echo -e '\e[33;1m Enviando Relatorio, por favor aguarde...\e[m' echo -en "\n" sleep 2 #Essas sao as variaveis que voce vai alterar de acordo com seu smtp, o #servidor que vai enviar as mensagens (echo 'HELO localhost';sleep 1 echo 'MAIL FROM: admin@seuserver.com';sleep 1 echo 'RCPT TO: admin@seuserver.com';sleep 1 echo 'DATA';sleep 1 echo 'MIME-Version: 1.0';sleep 1 echo 'FROM: danyllo'; echo 'TO: Administrador <admin@seuserver.com>'; echo 'SUBJECT: Tentativa de ataque'; echo ''; echo ''; echo "$mensagem."; echo ''; echo ''; echo '.'; echo 'QUIT'; ) | nc -t ip.seu.smtp. 25 #Limpo o log fazendo o backup do mesmo pela data em pt_br cp /var/log/proftpd.log /var/log/proftpd.log_$data cat /dev/null >/var/log/proftpd.log exit } bloqueio() { echo -en "\n\n" echo -e '\e[33;1m Ja foi enviado um email ao administrador, deseja bloquear o endereco de onde parte o ataque? (y/n).\e[m\n' read resp if [ "$resp" == "y" ] ; then #iptables -A INPUT -s $ip -j DROP echo "IP $ip foi pra lista de drop" else echo " RESPOSTA FOI NAO!" fi } principal
Configurando a raiz do seu servidor apache facilmente.
Configurando Adaptador USBSerial no Ubuntu usando udev
Apostila interativa de linux (incompleto)
Angelinux Scripts - Teste de desempenho da sua maquina!
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Ubuntu 24 [ Wireless sendo atacada ] (2)
Agora temos uma assistente virtual no fórum!!! (247)
arquivos .desktop não rodam no Ubuntu 24.04 [RESOLVIDO] (7)
Quero trocar a versão do kernel por causa do drive de video. [RESOLVID... (3)