Простой bash скрипт блокировки ботнета, взлома ssh и перебор портов
Бесконечное количество хацкеров пытающихся получить доступ к серваку?
Ломится на сервак БОТНЕТ?
Что делать?
Первым делом менять стандартные порты управления, фтп сервера и тельнет(лучше не использовать вапще) например 22 на 6622 или 222 и так далее.Запретить доступ к нужным Вам портам через фаервол, разрешить только с определённых известных Вам ip.
А всех остальных хацкеров банить!
Пример ламерского скрипта под OPENSUSE 42 который ждёт пакет на определённый порт, логирует, парсит, банит!
Собирает массив из 100 записей после перезапускает фаервол чтобы обнулить список. 100 можно поменять на 1000 но главное не переборщить.
В скрипте удалить ненужные порты или заменить!
ВАШи.АЙПИ.АДРЕСа.- поменять! Если он один то удалить!
PS код был подправлен после того как заблочил меня из-за ошибки в написании)
#!/bin/bash
gi=0
while true
do
/usr/sbin/tcpdump -v -n -w /tmp/tcpdump2.log dst port 23 or 22 or 21 or 135 or 2333 or 2323 or 8080 or 3128 and src not ВАШ АЙПИ СЕРВЕРА and not ВТОРОЙ АЙПИ СЕРВЕРА -c 1
tcpdump -r /tmp/tcpdump2.log -e -tt -nn | perl -pe 's/([0-9]*)\..*length\s([0-9]*):\s((?:\d+\.){3}\d+)\.(\d+)\s>\s((?:\d+\.){3}\d+)\.(\d+).*/ $3 /'> /tmp/ipban2.txt
BLOCKDB="/tmp/ipban2.txt"
IPS=$( grep -Ev "^#" $BLOCKDB )
for i in $IPS
do
gi=$(($gi+1))
echo $gi
echo $i
echo "POPALSA"
iptables -D INPUT -s $i -j DROP
iptables -I INPUT -s $i -j DROP
#iptables -I INPUT -s $i -p tcp -m tcp --dport 23 -j DROP
done
rm /tmp/ipban2.txt
rm /tmp/tcpdump2.log
sleep 1
if [ "$gi" -ge 500 ]
then
gi=0
SuSEfirewall2
sleep 1
systemctl restart fail2ban
echo "!!!!!!!!!!!!!!!!!!!"
sleep 1
fi
done
0 комментариев