Перейти к содержимому
Калькуляторы

Опубликована Процедура блокировки некошерной инфо

Сейчас в лабе дорабатываем напильником следующее решение по организации фильтрации (без мега DPI:))

 

<skip>

5. На сервере с помошью iptables (string matсh) перекидываем пакетики, в которых есть соответствующий URL (из п.2) в NFQUEUE. tcp handshake и другой трафик на эти адреса пролетает насквозь.

<skip>

Моделировали экстремальные условия?

Я не гуру в этих ваших iptables , но мне почему-то мыслится, что при over 9000 ссылках в этом месте сервер сложится. Буду рад ошибиться, бо сейчас тоже думаю в этом направлении: не очень нравится идея PBR'ить по километровым ACLам или лопатить весь HTTP в качестве альтернативы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А кого вы хотите ДНС фильтром остановить?

Чтоб это работало - нужны небольшие технические доработки системы DNS и очень серьезные организационные доработки. К сожалению соотвествующие организации состоят немного более чем полностью из упорных противников "цензуры", посему блокируют соответствующие решения.

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

Идея проста как пять копеек - пишем в ТХТ какой-нибуть идентификатор что это запись контролирует ограничения по возрасту для данного домена, а далее пишем записи типа ru=18;us=21 и т.д. что будет означать что по законам РФ этот сайт содержит инфу 18+, а по законам США - 21+. Ну и так далее.

Из организационных - тупо сделать эту запись обязательной, без нее не делегировать (если домен ru, su, рф - то как минимум должна содержаться запись для ru и т.д.), если заполнена неверно - отзывать делегирование. :) Ну и небольшая прога, которая чекает эти записи и дает доступ если возраст подходит, а все домены без записи - тупо дропать. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сейчас в лабе дорабатываем напильником следующее решение по организации фильтрации (без мега DPI:))

 

<skip>

5. На сервере с помошью iptables (string matсh) перекидываем пакетики, в которых есть соответствующий URL (из п.2) в NFQUEUE. tcp handshake и другой трафик на эти адреса пролетает насквозь.

<skip>

Моделировали экстремальные условия?

Я не гуру в этих ваших iptables , но мне почему-то мыслится, что при over 9000 ссылках в этом месте сервер сложится. Буду рад ошибиться, бо сейчас тоже думаю в этом направлении: не очень нравится идея PBR'ить по километровым ACLам или лопатить весь HTTP в качестве альтернативы.

 

По числу обрабатывающих серверов (next hop в bgp) маштабируется хорошо. По числу параллельных процессов-обработчиков - тоже должно неплохо, у NFQUEUE возможно 65К идентификаторов.

Но нагрузочных тестов мы пока не проводили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Точно также оно будет работать. iptables ищет матч строки в теле всех tcp пакетов c dport 80 , которые попали на этот сервер. И кидаеет их в NFQUEUE.

А по поводу SPDY - если без шифрования - то редеректа не покажет, но и на сайт не пустит. А если шифрованный - будем блокировать, как и https. Или есть другие предложения?

 

Что-то не сходится... ACK в середине TCP сессии?

 

6. из NFQUEUE их ловит перловый (пока) скрипт, который делает tcp hijacking (т.е. отвечает от имени удалённого сервера двумя пакетами: АСК-ом, и 301 редиректом на страницу блокировки.

 

Также URL может попасть в разные пакеты по частям ( в случае keepalive ), а еще в случае pipelining получится вообще полный бардак.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто там просил iptables конфигурацию для матча по строке? Она тривиальная:

...

Хм, я думал, вы всё на 80м порту заворачиваете в перл и там парсите. Ведь iptables таким образом заростутся до невообразимой длинны

Можно заворачивать всё в перл, там искать GET ..., и по УРЛу искать в ассоциативном массиве, где урл = ключ (получится мгновенная выборка)

Хотя совсем неизвестно, что будет быстрее - огромный iptables или перл, потестировать надо бы =)

 

А как оно работает с урлами кириллицей?

 

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

Квагга анонсит more specific, транспорт кидает пакет серверу; тот, к примеру, решает, что ничего в пакете трогать не надо и отдает его обратно в транспорт; транспорт получает пакет от сервера и по идее должен снова вернуть его серверу согласно таблице роутинга.

Петля, не?

Или на серверном SVI висит роут-мап?

 

Остальное более или менее понятно.

БОРДЕР

|

| ------- прокси

|

НАС

 

прокси шлёт анонсы насу. После фильтрации пропускает их через себя в сторону бордера. нахрена слать их обратно насу?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

небольшие траблы с загрузкой на sce

Error - Internal error, Input concatenated Key String are not valid: absurdopedia.wikia.com:/wiki/%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE:%D0%A1%D0%BE%D0%B2%D0%B5%D1%80%D1%88%D0%B8%D1%82%D1%8C_%D1%81%D1%83%D0%B8%D1%86%D0%B8%D0%B4:*:*

 

кто как борется?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да, кстати. А письмо с просьбой удалить запрещенный контент имеет цифровую подпись? Или любой может написать такое же? ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://absurdopedia.wikia.com:/wiki/%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE:%D0%A1%D0%BE%D0%B2%D0%B5%D1%80%D1%88%D0%B8%D1%82%D1%8C_%D1%81%D1%83%D0%B8%D1%86%D0%B8%D0%B4

 

Проверил через онлайн-проверку - "Искомый адрес не значится в реестре" Странно...

 

Да, кстати. А письмо с просьбой удалить запрещенный контент имеет цифровую подпись? Или любой может написать такое же? ;)

Удалить в каком смысле?

Для включения в реестр (бан) - не надо

Для исключения из реестра (разбан) - надо

 

Я пока что не понимаю как это будет делать иностранный хостер или как это будет делать хозяин сайта - физическое лицо... Тем более иностранное физическое лицо... Или для них в электронном виде это невозможно и только письмо или суд?

Изменено пользователем Tosha

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да, кстати. А письмо с просьбой удалить запрещенный контент имеет цифровую подпись? Или любой может написать такое же? ;)

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да, кстати. А письмо с просьбой удалить запрещенный контент имеет цифровую подпись? Или любой может написать такое же? ;)

Удалить в каком смысле?

Для включения в реестр (бан) - не надо

Для исключения из реестра (разбан) - надо

Я про электронное письмо от роскомнадзора хостеру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как оно работает с урлами кириллицей?

пока не проверяли. Но что мешает их сконверитровать в unicode?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://absurdopedia.wikia.com:/wiki/%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE:%D0%A1%D0%BE%D0%B2%D0%B5%D1%80%D1%88%D0%B8%D1%82%D1%8C_%D1%81%D1%83%D0%B8%D1%86%D0%B8%D0%B4

 

Проверил через онлайн-проверку - "Искомый адрес не значится в реестре" Странно...

После ".com" двоеточие уберите

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

кто-то ранее просил (для "новичков"), собрать воедино процесс получения дампа.

Ссылка на мой общедоступный блокнот на слонике

 

 

 

UPD1: поправил немного ссылку

Изменено пользователем eLLIk1n

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

небольшие траблы с загрузкой на sce

Error - Internal error, Input concatenated Key String are not valid: absurdopedia.wikia.com:/wiki/%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE:%D0%A1%D0%BE%D0%B2%D0%B5%D1%80%D1%88%D0%B8%D1%82%D1%8C_%D1%81%D1%83%D0%B8%D1%86%D0%B8%D0%B4:*:*

 

кто как борется?

 

Нужно экранировать спецсимволы (в этой ссылке, например, символ двоеточия)

 

Попутно вопрос ко всем - сколько записей вам отдается в реестре? В СМИ прошла информация о 180 сайтах, однако это даже близко не соответствует тому, что наблюдается в действительности.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для исключения из реестра (разбан) - надо

Где это написано?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Я думаю, что это пригодится для забивания его в "белый список" чтобы спам фильтр его не убил ненароком.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Хотел пока обойтись заткнутием по IP.

Вот рабочая (запускается в crontab 15 9,21 * * *) формировалка скрипта из реестра для обновления адрес-листа zapretip в роутере Mikrotik:

#!/bin/sh
cd /где/оно/там/у/вас/лежит
./zapret_checker.py
echo "/ip firewall address-list remove numbers=[find list=zapretip]\r" > mt_zapretip.rsc
echo "/ip firewall address-list\r" >> mt_zapretip.rsc
xmlstarlet pyx dump.xml | grep ^- | sed 's,-,add list=zapretip address=,g;s,$,\r,g' >> mt_zapretip.rsc

Постоянное правило там такое:

/ip firewall filter
add action=reject chain=forward disabled=yes dst-address-list=zapretip \
   dst-port=80 in-interface=ether2-клиенты protocol=tcp reject-with=\
   icmp-host-prohibited

И облом... в свежем реестре, например, явно IMHO вредные pоrоshki.tv УЖЕ поменяли IP, все открывается, аплинк проIPал... Ресолвить список вопреки РКН нисколько ниахота, да и бесполезно это по изначальной сути -- DNS обновляются в среднем через 4 часа, а реестр через 12.

И что теперь? РКН же не по IP проверять будет? DNS тоже перехватывать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для исключения из реестра (разбан) - надо

Где это написано?

http://zapret-info.gov.ru/toproviders/

Роскомнадзор предлагает провайдерам хостинга самостоятельно направлять актуальные сведения для оперативного взаимодействия.
Такие сведения могут направляться в электронном виде по адресу: zapret-info@rsoc.ru, подписанные электронной подписью,
выданной любым удостоверяющим центром, из числа аккредитованных Минкомсвязи России, и подтверждающей полномочия
подписавшего лица.

Не исключено, что возможны и иные методы обращения, но они не описаны. Возможно, что они описаны в письме, направляемом хостерам.

Изменено пользователем Tosha

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это не то, здесь всего лишь про "взаимодействие". В ППРФ ни о какой ЭЦП для разблокировки речи не идёт, тем более для владельцев сайта. Собственно:

 

б) на основании обращения владельца сайта в сети "Интернет", провайдера хостинга или

оператора связи в течение 3 дней со дня получения указанного обращения исключают из

единого реестра соответствующие доменное имя, указатель страницы сайта в сети

"Интернет" и сетевой адрес (сетевые адреса) с указанием даты и времени исключения

соответствующих доменного имени, указателя страницы сайта в сети "Интернет" и

сетевого адреса (сетевых адресов) и одновременно уведомляют об этом провайдера

хостинга и (или) операторов связи.

 

Это уже РКН сам приписал про хостинг-провайдеров и ЭЦП.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Непонятно - куда и как именно обращаться. Скажите точно что сделать. Куда написать или позвонить?

 

В частности http://absurdopedia.wikia.com/wiki/%D0%9A%D0%B0%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE:%D0%A1%D0%BE%D0%B2%D0%B5%D1%80%D1%88%D0%B8%D1%82%D1%8C_%D1%81%D1%83%D0%B8%D1%86%D0%B8%D0%B4

 

страница уже убрана, и убрана 10.11.2012

 

Давайте вместе с Вами пройдем по пунктам как организовать исключение из реестра

Изменено пользователем Tosha

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Непонятно - куда и как именно обращаться. Скажите точно что сделать. Куда написать или позвонить?

Сейчас в РКН: http://www.rsoc.ru/. Контакты: http://www.rsoc.ru/p456/, и дублируем на zapret-info@rsoc.ru

Постановления-постановлениямия, но точно не прописано, поэтому засылаем и туда и туда, если первый раз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

# Вот есть же специализированные средства для разбора XML в файлики по вкусу, хоть сразу конфиг формируй
xmlstarlet sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml > dump.csv

 

freebsd. что я делаю не так ?

 

# xml sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml

XPath error : Undefined namespace prefix

xmlXPathCompiledEval: evaluation failed

runtime error: element for-each

Failed to evaluate the 'select' expression.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

# Вот есть же специализированные средства для разбора XML в файлики по вкусу, хоть сразу конфиг формируй
xmlstarlet sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml > dump.csv

freebsd. что я делаю не так ?

# xml sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml

XPath error : Undefined namespace prefix

xmlXPathCompiledEval: evaluation failed

runtime error: element for-each

Failed to evaluate the 'select' expression.

Навскидку:
  1. утилита xmlstarlet, а не xml (хотя у вас она может быть и переименована).
  2. FreeBSD. Другое окружение, библиотеки, версии. Там много чего намешано вокруг XML-обработки... у меня Linux, разных версий.
  3. окружение командной строки, консоли. Например, неверно интерпретирует скобки-кавычки или там еще что-то. У меня bash или sh.
  4. некорректный предлагаемый для обработки dump.xml (ну мало ли). xmlstarlet val dump.xml может помочь прояснить ситуацию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

# Вот есть же специализированные средства для разбора XML в файлики по вкусу, хоть сразу конфиг формируй
xmlstarlet sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml > dump.csv

freebsd. что я делаю не так ?

# xml sel -T -t -m "reg:register/content" -v "concat(ip,';',url)" -n dump.xml

XPath error : Undefined namespace prefix

xmlXPathCompiledEval: evaluation failed

runtime error: element for-each

Failed to evaluate the 'select' expression.

Навскидку:
  1. утилита xmlstarlet, а не xml (хотя у вас она может быть и переименована).
  2. FreeBSD. Другое окружение, библиотеки, версии. Там много чего намешано вокруг XML-обработки... у меня Linux, разных версий.
  3. окружение командной строки, консоли. Например, неверно интерпретирует скобки-кавычки или там еще что-то. У меня bash или sh.
  4. некорректный предлагаемый для обработки dump.xml (ну мало ли). xmlstarlet val dump.xml может помочь прояснить ситуацию.

 

вот так работает:

xml sel -T -t -m '//content' -v "concat(ip,';',url)" -n dump.xml

 

спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.