The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Раздел полезных советов: Как заблокировать вход пользователе..., auto_tips (ok), 16-Дек-13, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


25. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 19-Дек-13, 03:08 
ipset полезен, когда адреса и правила более-менее постоянны,
этот же скрипт и правила желательно генерить и обновлять раз в час.


IPTABLES=$(which iptables)

# А вдруг мы за НАТом!
ADDRESS=$(dig +short myip.opendns.com @resolver1.opendns.com)
# Список Шындлера
LIST=$(lynx -dump https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$ADDRESS | grep -v '^#' | sort -u)

#     [cmd]   [name]   [type]
ipset create TOR_NODES hash:ip;

for node in $LIST
        do
          echo ipset -A TOR_NODES $node;
    done

$IPTABLES -A INPUT -m set --match-set TOR_NODES src -j REJECT;
$IPTABLES -A INPUT -m set --match-set TOR_NODES dst -j REJECT;

Принимаются варианты на bpf и nf  

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

27. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 19-Дек-13, 13:22 
Зачем каждый раз добавляются правила для reject-а? Для чего весь список засовывается в массив вместо того, чтобы сразу через xargs скармливать хосты ipset-у? Зачем сортировка, если ipset все равно внутри себя все засунет в хэш-таблицу? Где очистка старых адресов, которые больше нет в списке?
Ответить | Правка | Наверх | Cообщить модератору

32. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 20-Дек-13, 03:36 
> Для чего весь список засовывается в массив вместо того,
> чтобы сразу через xargs скармливать хосты ipset-у?

Примеры в студию!

> Зачем сортировка, если ipset все равно внутри себя все засунет в хэш-таблицу?

Пару миллисекунд жалко?

> Где очистка старых адресов, которые больше нет в списке?

Ща за веником сбегаю.

---
... а багу не заметили  dst должно быть в OUTPUT


$IPTABLES -A INPUT -m set --match-set TOR_NODES src -j REJECT;
$IPTABLES -A OUTPUT -m set --match-set TOR_NODES dst -j REJECT;

Ответить | Правка | Наверх | Cообщить модератору

33. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 20-Дек-13, 17:25 
>Ща за веником сбегаю.

не добежал чтоль?..

Ответить | Правка | Наверх | Cообщить модератору

35. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 21-Дек-13, 05:39 
ipset create TOR_NODES hash:ip -exist
ipset flush TOR_NODES

( ipset flush TOR_NODES;
curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$(dig +short myip.opendns.com @resolver1.opendns.com) | grep -v '^#' | xargs -L1 ipset -A TOR_NODES )&

iptables -F NOTOR
iptables -A NOTOR -m set --match-set TOR_NODES src -j REJECT
iptables -A NOTOR -m set --match-set TOR_NODES dst -j REJECT
iptables -A NOTOR -j RETURN


Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

36. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 21-Дек-13, 05:40 
Пофикшенный вариант

ipset create TOR_NODES hash:ip -exist

( ipset flush TOR_NODES;
curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$(dig +short myip.opendns.com @resolver1.opendns.com) | grep -v '^#' | xargs -L1 ipset -A TOR_NODES )&

iptables -F NOTOR
iptables -A NOTOR -m set --match-set TOR_NODES src -j REJECT
iptables -A NOTOR -m set --match-set TOR_NODES dst -j REJECT
iptables -A NOTOR -j RETURN

wait

Ответить | Правка | Наверх | Cообщить модератору

39. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 22-Дек-13, 23:53 
> ipset create TOR_NODES hash:ip -exist
> ( ipset flush TOR_NODES;
> curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$(dig +short
> myip.opendns.com @resolver1.opendns.com) | grep -v '^#' | xargs -L1 ipset -A
> TOR_NODES )&
> iptables -F NOTOR
> iptables -A NOTOR -m set --match-set TOR_NODES src -j REJECT
> iptables -A NOTOR -m set --match-set TOR_NODES dst -j REJECT
> iptables -A NOTOR -j RETURN


--- a   2013-12-22 23:52:08.763948000 +0400
+++ b   2013-12-22 23:52:27.286948000 +0400
@@ -3,6 +3,7 @@
( ipset flush TOR_NODES;
curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$(dig +short myip.opendns.com @resolver1.opendns.com) | grep -v '^#' | xargs -L1 ipset -A TOR_NODES )&

+iptables -N NOTOR
iptables -F NOTOR
iptables -A NOTOR -m set --match-set TOR_NODES src -j REJECT
iptables -A NOTOR -m set --match-set TOR_NODES dst -j REJECT

ADDR=$(dig +short myip.opendns.com @resolver1.opendns.com)

Без sort -u
# time (curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$ADDR | grep -v '^#' | xargs -L1 ipset -A TOR_NODES)

real    0m7.241s
user    0m1.941s
sys     0m3.056s

---
# time (curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$ADDR | grep -v '^#' | sort -u | xargs -L1 ipset -A TOR_NODES)

real    0m6.596s  C утилью uniq на 0.1 сек. дольше.  
user    0m1.645s
sys     0m2.695s

Пол секунды профита :)

# ipset -L | wc -l
2779

Ответить | Правка | Наверх | Cообщить модератору

41. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 24-Дек-13, 03:38 
Ты померял работу с сетью и работу с нетлинком, но никак не влияние сортировки на производительность.
Ответить | Правка | Наверх | Cообщить модератору

43. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 24-Дек-13, 05:14 
>  но никак не влияние сортировки на производительность.

Пичалька



ipset create TOR_NODES hash:ip -exist

ADDR=$(dig +short myip.opendns.com @resolver1.opendns.com)
curl -s https://check.torproject.org/cgi-bin/TorBulkExitList.py?ip=$ADDR > RAW.txt;

# ipset flush TOR_NODES;
# time (cat RAW.txt | grep -v '^#' | xargs -L1 ipset -A TOR_NODES)
real    0m4.194s
user    0m1.212s
sys     0m2.325s

# ipset flush TOR_NODES;
# time (cat RAW.txt | grep -v '^#' | sort -u | xargs -L1 ipset -A TOR_NODES)
real    0m3.974s
user    0m1.157s
sys     0m2.228s


Ответить | Правка | Наверх | Cообщить модератору

51. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 25-Дек-13, 04:08 
Теперь ты меряешь работу только с нетлинком, но опять не сортировку.
Ответить | Правка | Наверх | Cообщить модератору

60. "Как заблокировать вход пользователей, работающих через сеть Tor"  +1 +/
Сообщение от pavlinux (ok), 29-Дек-13, 18:31 
> Теперь ты меряешь работу только с нетлинком, но опять не сортировку.

Ты ваще разницу видишь?

1. cat | grep | sort | xargs ipset
2. cat | grep | xargs ipset

Тормоза в ipset при заносе всего подряд.  
Это доказывает, то, что ipset тормознутее ищет и сравнивает свои хэши,
чем текстовая сортировка с устранением дубликатов!

Если это не так, напиши в багтрекер coreutils.

Ответить | Правка | Наверх | Cообщить модератору

42. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 24-Дек-13, 03:44 
> +iptables -N NOTOR

Скрипт рассчитан на то, что цепочки фаервола, как и прочие статические вещи, создаются из /etc/sysconfig/iptables, а сам скрипт занимается только динамикой. Тем более, что, если тупо добавлять цепочку при каждом вызове, то скрипт будет гадить ошибкой в stderr при каждом запуске, кроме первого, что нехорошо.

Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

44. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 24-Дек-13, 05:18 
>> +iptables -N NOTOR
> Скрипт рассчитан на то, что цепочки фаервола, как и прочие статические вещи,
> создаются из /etc/sysconfig/iptables, а сам скрипт занимается только динамикой. Тем более,
> что, если тупо добавлять цепочку при каждом вызове, то скрипт будет
> гадить ошибкой в stderr при каждом запуске, кроме первого, что нехорошо.

А посаны-то и не знали! Тема про tor и примеры одного скрипта.
Чо и куда пихать каждый разберётся сам.

Ответить | Правка | Наверх | Cообщить модератору

52. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 25-Дек-13, 04:09 
>>> +iptables -N NOTOR
>> Скрипт рассчитан на то, что цепочки фаервола, как и прочие статические вещи,
>> создаются из /etc/sysconfig/iptables, а сам скрипт занимается только динамикой. Тем более,
>> что, если тупо добавлять цепочку при каждом вызове, то скрипт будет
>> гадить ошибкой в stderr при каждом запуске, кроме первого, что нехорошо.
> А посаны-то и не знали! Тема про tor и примеры одного скрипта.
> Чо и куда пихать каждый разберётся сам.

Я тебе говорю, на что скрипт, написанный мной рассчитан и почему iptables -N там осознанно не был написан.

Ответить | Правка | Наверх | Cообщить модератору

61. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от pavlinux (ok), 29-Дек-13, 18:43 
$ cat /etc/sysconfig/iptables
cat: /etc/sysconfig/iptables: Нет такого файла или каталога
$ cat /etc/debian_version
6.0.8
$ iptables -V
iptables v1.4.8

Как жить, профэссор?

Ответить | Правка | Наверх | Cообщить модератору

62. "Как заблокировать вход пользователей, работающих через сеть Tor"  +/
Сообщение от Аноним (-), 30-Дек-13, 00:45 
apt-get install iptables-persistent

А потом смотреть в /etc/iptables/rules

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру