научить iptables блокировать диапазон ip

1 234
Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#21
Гесер:
Судя по тому, что мне перевел гугл, не хватает модуля iprange. Ядро пересобрать у меня нет возможности, iptables компилить из исходников желания. Другие варианты будут?

Я вот читаю, читаю и что-то не могу понять , все что вам надо это заблокировать диапазон ip адресов? Во первых поясните почему запись выглядит в виде x.x.x.x-y.y.y.y а не используется CIDR ?

Есть необходимость использовать iprange или это какой-то скриптик по отражению атак? Проясните назначение, не нашел в постах...

Во вторых: "uname -a" в студию.

Romka_Kharkov добавил 18.07.2010 в 16:30

Что говорит modprobe ipt_iprange ?

lsmod ?

Есть около 15.000 ipv4 !!! (http://onyx.net.ua/price.php#ipv4) Качественный хостинг с 2005 года - лучшее клиентам! (http://onyx.net.ua/)
Г
На сайте с 25.10.2007
Offline
68
#22

Zaqwr, Debian. Значит такая коробка

find /lib/modules/ -name "*iprange*" ничего не нашел, ноя сам нашел /lib/xtables/libxt_iprange.so

Вначале iptables ругнулся, что в /lib/modules/2.6.18-164.15.1.el5.028stab068.9ent ничего нет, я сделал depmod -a, ругаться на отстутствие перестал.

Romka_Kharkov, потому что iptables при CIDR на что-то тоже ругался, не помню.

Есть необходимость использовать iprange или это какой-то скриптик по отражению атак? Проясните назначение, не нашел в постах...

Так гугл посоветовал

~# uname -a

Linux indarium 2.6.18-164.15.1.el5.028stab068.9ent #1 SMP Tue Mar 30 19:30:08 MSD 2010 i686 GNU/Linux

modprobe ipt_iprange

FATAL: Module ipt_iprange not found.

~# lsmod

Module Size Used by

Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#23

FATAL: Module ipt_iprange not found.

Видимо таки придется пересобрать ядро. Либо же используйте CIDR.

Постараюсь в кратце пояснить почему я спрашиваю о назначении скрипта:

В случае использования iprange у вас появляется позможность блокировать диапазон ип "от ip1 до ip2".

В случае когда вы не пользуетесь iprange а например просто делаете что-то типа


iptables -I INPUT -s 192.168.0.0/24 -j DROP

вы блокируете сеть класса "C" с маской 255.255.255.0 , то есть фактически диапазон 192.168.0.0-192.168.0.255.

Теперь внимание разница, собрать например диапазон 192.168.0.100-192.168.0.200 1й маской CIDR не получится, он не будет кратным и тому подобное (детальнее тут: http://ru.wikipedia.org/wiki/%D0%91%D0%B5%D1%81%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%BE%D0%B2%D0%B0%D1%8F_%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D0%B0%D1%86%D0%B8%D1%8F ).

По этому если ваш скрипт целится на то, что бы заблокировать например какой-то блок ИП который ломится по SSH из интернета... как показывает практика в точечных случаях удачно работает /32 маска (т.е конкретный ип) а в случае массовых нападений с блока ИП можно блокировать /24 предварительно обнулив последний октет вашим скриптом (к примеру).

Но если же таки ваши задачи стоят именно "1й записью 192.168.0.100-192.168.0.200 и неипет!" то без пересборки ядра будет сложно, могу как "дурацкий вариант" предложить вам разбивать ваши блоки на единичные ИП и делать кучи записей в iptables. ;)) но я думаю вы понимаете что лучше пересобрать ядро :))))

Zaqwr
На сайте с 08.08.2007
Offline
111
#24

Гесер, судя по коробке у вас VDS, обратитесь к поставщику услуг.

Администрирование, Linux, Cisco, Juniper
Г
На сайте с 25.10.2007
Offline
68
#25

Zaqwr, поставщик unmanagment, поэтому какбе...

Romka_Kharkov, на сколько я плохо знаю технологию openVZ, там виртуалки сидят на ядре ноды. Ради одного меня им чето делать😂

Щас спрошу...

Zaqwr
На сайте с 08.08.2007
Offline
111
#26

Стандартный модуль, думаю не откажут.

Г
На сайте с 25.10.2007
Offline
68
#27

Подргузили, вроде работает. Сделал вышеописанное. Правильно?


Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 source IP range 178.125.0.1-178.125.255.254

Zaqwr
На сайте с 08.08.2007
Offline
111
#28

Гесер, при таких правилах, у вас всё всем разрешено

Chain INPUT (policy ACCEPT)

ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 source IP range 178.125.0.1-178.125.255.254

Г
На сайте с 25.10.2007
Offline
68
#29

Zaqwr, а тогда какое правило должно быть?

~# /sbin/iptables -I INPUT -m iprange --src-range 92.112.0.1-92.112.255.254 -j DROP

Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP all -- 0.0.0.0/0 0.0.0.0/0 source IP range 92.112.0.1-92.112.255.254

По такой логике всё всем, но не всем, запрещено.😂Однако не пускает, проверил на кролике.

M
На сайте с 16.09.2009
Offline
278
#30
Гесер:
Zaqwr, а тогда какое правило должно быть?
~# /sbin/iptables -I INPUT -m iprange --src-range 92.112.0.1-92.112.255.254 -j DROP

По такой логике всё всем, но не всем, запрещено.😂Однако не пускает, проверил на кролике.

Раз "не пускает" - загнали свой IP в какой-то из диапазонов. Неужели еще не ясно?

PS: Вообще, на VPS с OpenVZ (!) - еще и ограничения на количество правил файервола. Бороться с ДОС на уровне iptables там обычно просто глупо. Либо берите для этого физический сервер - либо включайте наконец голову и используйте nginx (если именно сайты досят, т.е. по HTTP). Либо обратитесь к кому-нибудь - все настроят за $.

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий