пятница, 19 марта 2021 г.

Блокировка "плохих" ip адресов через список blocklist.de

 Собственно на машинке помимо iptables нужно поставить ipset, а далее скрипт, который запихать в крон: 

#!/bin/bash
cd /opt/blackips/
rm tempips.txt -rf
if wget https://www.blocklist.de/downloads/export-ips_all.txt -O tempips.txt
then
iptables -D FORWARD -m set --match-set blacklist src -j DROP
iptables -D INPUT -m set --match-set blacklist src -j DROP
iptables -D FORWARD -m set --match-set blacklist src -j DROP
ipset destroy blacklist
#ipset create blacklist hash:ip hashsize 1227600
ipset create blacklist hash:net family inet hashsize 32768 maxelem 300000
iptables -I FORWARD -m set --match-set blacklist src -j DROP
iptables -I INPUT -m set --match-set blacklist src -j DROP
iptables -I FORWARD -m set --match-set blacklist src -j DROP
while read -r line; do
if [[ $line =~ .*:.* ]];
then
  echo "IPv6"
else
  ipset add blacklist "$line";
fi
done < tempips.txt
rm tempips.txt -rf
else
echo 'Error! Can not download black list of ip addresses!'
fi
 

Комментариев нет:

Отправить комментарий