LINUX.ORG.RU

Блокируем пиров из России фор фан энд профит

 


11

3

В связи с начавшимися посадками осуждениями по статье УК 242 решил заблокировать торрент-клиенты из этой страны, и теперь делюсь манулом для Gentoo.

Делай раз: включаем в ядре следующие опции. Если нужно, пересобираем и загружаемся с новым ядром.

CONFIG_NETFILTER_ADVANCED
CONFIG_NETFILTER_XT_SET
CONFIG_IP_SET_HASH_NETPORT
CONFIG_NETFILTER_XT_MATCH_STATE


Делай два: устанавливаем ipset.

# echo "net-firewall/ipset -modules" >> /etc/portage/package.use/ipset
# emerge net-firewall/ipset


Делай три: загружаем и сохраняем список IP-адресов зоны RU. Мой торрент-клиент использует для входящих соединений порт 6881.

# ipset create geoblock hash:net,port
# for net in $(wget -O- http://www.ipdeny.com/ipblocks/data/countries/ru.zone); do
    ipset add geoblock $net,6881
  done
# rc-service ipset save


Делай четыре: добавляем правило iptables.

# iptables -I INPUT -m state --state NEW -m set --match-set geoblock src -j REJECT
# rc-service iptables save


Делай пять: загружаем правила при загрузке.

# rc-update ipset add boot
# rc-update iptables add default


ПРОФИТ!



Последнее исправление: delovoi (всего исправлений: 1)

Ну, поскольку я сам из России, я сначала заблокировал себя. Спасибо, всё получилось. :)

odii
()

А нельзя просто сформировать файл ipfilter.dat и загрузить его в торрент-клиент?

anonymous
()
Ответ на: комментарий от anonymous

Ну я хз, какой там формат. Да и односторонняя блокировка в моем клиенте не поддерживается.

delovoi
() автор топика
Ответ на: комментарий от delovoi

Приведенное правило режет только подключения ОТ и не режет подключения К.

Что, собственно, нам и нужно. Майоры будут сами пытаться подключиться.

delovoi
() автор топика

В связи с начавшимися посадками осуждениями по статье УК 242

У тебя терабайты порева раздаются торрентом?

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

Ах да посадка это часть 2 статьи, то есть ты свой торрент еще и среди несовершеннолетних рекламируешь.

TDrive ★★★★★
()
Ответ на: комментарий от delovoi

Ничто не мешает майорам переключиться на нарушения копирайта, например.

Угу, есть у майоров такой переключатель...

TDrive ★★★★★
()
Ответ на: комментарий от Lavos

А торрент-клиент сам бросится отдавать что-то, не дожидаясь запроса от пира, которому это что-то нужно?

delovoi
() автор топика
Ответ на: комментарий от anonymous_sama

Да и скорость может просесть, если торренты не с TPB, а с рутрекера скажем.

Ну тут уж или рыбку съесть, или... Я в основном с TPB.

delovoi
() автор топика
Ответ на: комментарий от delovoi

Меня не это беспокоит. Меня беспокоят товарищи майоры.

А статья 242 к чему? ну ладно... Почему ты думаешь что «майоры» сидят с русских ип? Сделать прокси через другую страну это же не сакральные знания.

TDrive ★★★★★
()
Ответ на: комментарий от Lavos

Торрент-клиент объявляет себя сидом. Скачавший торрент-файл с трекера берет список сидов и пытается достучаться до них.

delovoi
() автор топика
Ответ на: комментарий от delovoi

Ох...
Ладно, тогда так: у меня на тачке серый айпи за натом, натилка никаких upnp не умеет, клиент rtorrent. С меня как-то качают, как?

Lavos ★★★★★
()
Ответ на: комментарий от delovoi

Проходи мимо. По воскресеньям не подаю.

Ну вот, пытаешься объяснить человеку что он глупостью занимается, а тебя тролем считают.

TDrive ★★★★★
()
Ответ на: комментарий от delovoi

В точку!
А как твои правила для ipset помешают клиенту инициировать соединения в сторону тащкапитанов с реальниками?

Lavos ★★★★★
()

решил заблокировать торрент-клиенты из этой страны

В первую очередь - это неуважение к русским, язабан! У нас своих безмозглых ограничителей хватает.

garik_keghen ★★★★★
()

спасаешь соотечественников от путёвки на колыму? Душа болит за россию? Ай, молодец!

darkenshvein ★★★★★
()
Ответ на: комментарий от TDrive

У тебя терабайты порева раздаются торрентом?

ну у меня много чего с порнолаба сидируется. Может не «терабайты», но если по всем дискам поскрести, терабайт вполне может найтись..

stevejobs ★★★★☆
()

делай раз: включаем в ядре следующие опции. Если нужно, пересобираем и загружаемся с новым ядром.
Делай два: устанавливаем ipset.
Делай три: загружаем и сохраняем список IP-адресов зоны RU. Мой торрент-клиент использует для входящих соединений порт 6881.
Делай четыре: добавляем правило iptables.


вообще, этот список ограничений довольно неполный, и у россиян ещё очень велик шанс что-то скачать. Надо заблокировать устройства ввода, чтобы полностью заблокировать возможность обхода этих ограничений. Отрежь себе руки.

darkenshvein ★★★★★
()
Ответ на: комментарий от haku

Не проще ли vpn-ку арендовать в европе и сидеть якобы оттуда?

Два стакана морсу за этот столик.

Когда полицейские изымали компьютер, она рассказала, что через сеть скачала на свой ноутбук несколько порнофильмов и в программе отметила, что предоставляет возможность их скачать другим пользователям сети. Знала, как можно сделать видеофайлы недоступными для скачивания другими людьми, однако оставила фильмы в открытом доступе.

Не пойму, как блокировка в России поможет от этого отбрехаться.

aidan ★★★★
()
Ответ на: комментарий от Lavos

Как качать то в итоге, если пиры зарезаны?

с израильских IP, естественно

до них пиндосам слабо доебаться

anonymous
()

хотел такое же замутить, но поскольку профит выглядит сомнительно, ограничился добавлением фильтра (который уже устарел, похоже) в торрент-клиенте.

wakuwaku ★★★★
()
Последнее исправление: wakuwaku (всего исправлений: 1)
Ответ на: комментарий от wakuwaku

Набыдлокодил скрипт для конвертации ru.zone в ipfilter.dat, понимаемый торрент-клиентами:

#!/usr/bin/python

ones = {0:0}
n = 1
for i in range(1,33):
    ones[i] = n
    n <<= 1
    n |= 1

assert ones[1] == 1
assert ones[32] == 0xffffffff

def ntoa(ip):
    o4 = ip & 0xff
    ip >>= 8
    o3 = ip & 0xff
    ip >>= 8
    o2 = ip & 0xff
    ip >>= 8
    o1 = ip & 0xff
    return '%03d.%03d.%03d.%03d' % (int(o1), int(o2), int(o3), int(o4))

with open('ru.zone') as fi:
    for l in fi:
        l = l.strip()
        ip_s, bits = l.split('/')
        bits = 32 - int(bits)
        o1,o2,o3,o4 = ip_s.split('.')
        o1 = int(o1)
        o2 = int(o2)
        o3 = int(o3)
        o4 = int(o4)
        ip = o1
        ip = (ip << 8) + o2
        ip = (ip << 8) + o3
        ip = (ip << 8) + o4
        ip_start = ip &~ ones[bits]
        ip_end = ip | ones[bits]
        print '%s - %s , 000 , RU' %(ntoa(ip_start), ntoa(ip_end))
delovoi
() автор топика

Очень нужный мануал, спасибо. Но я бы пошел дальше - вообще заблокировал все подключения из этой страны. Полностью. И всячески распространял бы это в массах.

Выходит трищ майор на утренний осмотр - а никого нет, все светятся только за границу. Так и победим в итоге

anonymous
()

За инфо молодец, но ты уверен, что за пределами РФ, дела обстоят лучше?

anonymous
()
Ответ на: комментарий от anonymous

ты уверен, что за пределами РФ, дела обстоят лучше?

Конечно. Ты когда нибудь слышал чтоб в Украине или в другой нормальной стране за критику Путина давали сроки? То-то же

anonymous
()
Ответ на: комментарий от anonymous

Но я бы пошел дальше - вообще заблокировал все подключения из этой страны. Полностью.

Не вопрос. Берем биг рашен банхаммер и...

CONFIG_IP_SET_HASH_NET=m

# ipset create geoblock hash:net
# for net in $(wget -O- http://www.ipdeny.com/ipblocks/data/countries/ru.zone); do
    ipset add geoblock $net
  done
# rc-service ipset save

Остальное то же самое.

delovoi
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.