Знакомство с ipset повышаем производительность iptables.

Утилита ipset позволяет для нескольких однотипных правил iptables написать всего одно, что в итоге сказывается на производительности iptables.
Официальная страничка http://ipset.netfilter.org/
Установка Debian Squeeze
$sudo apt-get install module-assistant xtables-addons-source
$sudo module-assistant prepare
$sudo module-assistant auto-install xtables-addons-source
$sudo depmod -a
Установка CentOs 6.2 64bit
# yum install ipset.x86_64
Создаем списки
1. Список для блокировки по ip
#ipset -N dropip iphash
Добавляем ip адреса в созданный список.
#ipset -A dropip 192.168.0.1
#ipset -A dropip 192.168.0.2
2. Список для для блокировки сетей.
#ipset -N dropnet nethash
Добавляем сети в созданный список.
#ipset -A dropnet 192.168.10.0/24
#ipset -A dropnet 192.168.11.0/24
Смотрим наши списки
#ipset -L
Name: dropip
Type: iphash
References: 0
Header: hashsize: 1024 probes: 8 resize: 50
Members:
192.168.0.1
192.168.0.2

Name: dropnet
Type: nethash
References: 0
Header: hashsize: 1024 probes: 4 resize: 50
Members:
192.168.10.0/24
192.168.11.0/24
Что просмотреть один список нужно указать после опции -L имя списка.
Прикручиваем наши списки к правилам iptables
#iptables -A INPUT -m set --set dropip src -j DROP
#iptables -A INPUT -m set --set dropnet dst -j DROP
-m set - используем модуль ipset
--set - dropip, dropnet задаем какой список будем использовать.
src - список сверяется с ip адресом источника
dst - список сверяется с ip адресом назначения
Сохранение списка
#ipset -S > /etc/firewall/ipset-save
Добавление ipset в автозагрузку открываем /etc/rc.local и добавляем туда команду.
cat /etc/firewall/ipset-save | /usr/sbin/ipset -R

Комментарии

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

Популярные сообщения