Баним ботов:
Блокируем на 10 минут (--update --seconds 600) после второй неудачной попытки (--hitcount 3).
SSH - название блоклиста.
Посмотреть список заблокированных ip адресов:
Просмотреть дату внесения в блоклист можно таким скриптом(найдено тут):
iptables -A INPUT -p tcp -i ens160 --syn --dport 22 -m recent --name SSH --set
iptables -A INPUT -p tcp -i ens160 --syn --dport 22 -m recent --name SSH --update --seconds 600 --hitcount 3 -j DROP
iptables -A INPUT -p tcp --syn --dport 22 -j ACCEPT
Блокируем на 10 минут (--update --seconds 600) после второй неудачной попытки (--hitcount 3).
SSH - название блоклиста.
Посмотреть список заблокированных ip адресов:
cat /proc/net/xt_recent/SSH | awk '{print $1}' | cut -d '=' -f 2
Просмотреть дату внесения в блоклист можно таким скриптом(найдено тут):
#!/bin/bash
FILE=/proc/net/xt_recent/SSH #This is file name of recent module output. It may vary on your system (like iplist)
printit()
{
Len=`echo $1|wc -c`
Date=$DATE
Dot="."
Loop=`echo 50-$Len|bc`
loop=0
while [ $loop -le $Loop ]
do
loop=`echo $loop+1|bc`
Dot=`echo $Dot.`
done
echo "$1$Dot$DATE"
}
cat $FILE|while read LINE
do
IP=`echo $LINE|awk '{print $1}'|awk -F= {'print $2'}`
DATE=`echo $LINE|awk '{print (system("date -d @$(($(date +'%s')-($(cat /proc/timer_list|grep -m1 -E '^jiffies'|cut -d\" \" -f2)-" $5 ")/1000))"));}'|head -1 `
printit $IP $DATE
done
Комментариев нет:
Отправить комментарий