Инструменты пользователя

Инструменты сайта


Боковая панель

Связь

ipset

ipset

Homepage: IP sets

ipset представляет из себя модуль ядра ip_set, ряд вспомогательных библиотек и утилиту ipset для задания параметров.

# aptitude install ipset
  1. Создается список:
    ipset -N dropips iphash

    , где dropips — название списка, iphash — тип списка, служит для хранения IP-адресов, хэширования предотвращает добавление в список дублирующих IP-адресов. Существуют типы списков для работы с ip-адресами, подсетями, портами, mac-адресами.

  2. Добавляются IP-адреса в список:
    ipset -A dropips 192.168.95.7

    или считывать из файла при помощи скрипта

    IST="/usr/sbin/ipset"
    # IPSET
    $IST -N dropips iphash
    $CAT $PATH/ipset.txt | (
    while read ip;
    do 
    $IST -A dropips $ip
    done
    );
    $IPT -A INPUT -m set --match-set dropips src -j DROP
    # END IPSET
  3. Создается правило для использования списка:
    iptables -A INPUT -m set --match-set dropips src -j DROP

    -m set указывает на использование модуля ipset, –set dropips указывает список IP-адресов, src указывает на то, что сверять нужно только IP-источника. Таким образом, будут отбрасываться все пакеты с IP-адресов, указанных в списке dropips.

  • Просмотреть список ipset
    # ipset -L

ipset v2.5.0: Error from kernel: Protocol not available

Устранение ошибки для Debian Wheezy, Ubuntu 11.10. Модуль ядра для ipset нужно установить с помощью module-assistant.

# aptitude install ipset netfilter-extensions-source xtables-addons-source
# uname -a
Linux spar 3.0.0-1-amd64 #1 SMP Sat Aug 27 16:21:11 UTC 2011 x86_64 GNU/Linux
# aptitude install linux-headers-3.0.0-1-all-amd64
# cd /usr/src
# tar xjf netfilter-extensions.tar.bz2

Компиляция модуля. m-a a-i сокращение от module-assistant auto-install.

# module-assistant prepare
# m-a a-i netfilter-extensions
# module-assistant prepare
# module-assistant auto-install xtables-addons-source
# shutdown -r now



ipset.txt · Последние изменения: 2011/11/02 08:07 (внешнее изменение)