10.01.15, 13:54
0 комментарий
  Разное

Блокируем страны в iptables

Иногда требуется полностью заблокировать доступ к серверу для той или иной страны, причины для этого могут быть совершенно разные, от скрытия контента для какой то страны, до защиты от DDoS.
Опишу простой способ блокировки нужных стран средствами iptables на сервере под управлением ubuntu server 14.04

Для начала необходимо установить дополнительные пакеты:

apt-get update
apt-get install xtables-addons-common module-assistant
apt-get install libtext-csv-xs-perl libxml-csv-perl libtext-csv-perl unzip


После установить модуль xtables

module-assistant auto-install xtables-addons-source


В процессе установки может выдать ошибку с вариантами, выбираем:

CONTINUE Пропустить и продолжить выполнение со следующей операции


Теперь можно создать базу GeoIP, для этого сначала создадим директорию где она должна размещаться:

mkdir -p /usr/share/xt_geoip


после перейдём в директорию с нужными инструментами:

cd /usr/lib/xtables-addons/


и скачаем актуальную базу:

./xt_geoip_dl


теперь можно её собрать:

./xt_geoip_build -D /usr/share/xt_geoip *.csv


Основные моменты установки завершены, осталось добавить правило iptables для блокировки Китая и соседей:

iptables -A INPUT -m geoip --src-cc AF,CN,GR,SG,JP,HK,KR,KP,TW,IN,MX,ID -j DROP


Проверить текущие правила iptables можно командой:

iptables -L

Напишите своё мнение