среда, 5 февраля 2014 г.

xtables-addons geoip баним страны

Для блокировки трафика с конкретных стран существует модуль ядра xt_geoip.ko.Приступим к его установке.Скачиваем и распаковываем исходники: 

# cd /usr/src/
# wget http://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.4/xtables-addons-2.4.tar.xz
# tar xfJ xtables-addons-*
# rm xtables-addons-2.4.tar.xz*
# cd xtables-addons-2.4/

Увеличим максимальное количество стран для одного правила.


sed -i "s#XT_GEOIP_MAX = 15#XT_GEOIP_MAX = 50#g" ./extensions/xt_geoip.h

Устанавливаем необходимые для сборки пакеты:

aptitude install checkinstall pkg-config iptables-dev libtext-csv-xs-perl

Устанавливаем заголовки текущего ядра:

aptitude install linux-headers-$(uname -r)

Собираем модуль:

./configure
make
checkinstall

Включаем модуль xt_geoip.ko:

depmod && depmod -A
modprobe xt_geoip

Проверяем:

root# lsmod|grep geoip
xt_geoip               12591  0
x_tables               19118  8 ip_tables,iptable_filter,iptable_nat,xt_tcpudp,xt_limit,ipt_LOG,xt_state,xt_geoip

Скачиваем и устанавливаем базы GeoIP:

/usr/local/libexec/xtables-addons/xt_geoip_dl
mkdir /usr/share/xt_geoip -p
/usr/local/libexec/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip ./GeoIPCountryWhois.csv

На этом установка и настройка модуля закончена. Примеры использования:Блокируем трафик с Китая:

iptables -A INPUT -m geoip --source-country CN -j DROP

Запрещаем трафик если он не из России или локальной сети:

iptables -I INPUT ! -i lo -m geoip ! --src-cc RU -j DROP


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

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