[Децентрализованные сети, Сетевые технологии, I2P, Браузеры, Законодательство в IT] Цензура в интернете. Когда базовых мер недостаточно — I2P

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
28-Фев-2021 20:31

В прошлой статье я рассказал, какие выкрутасы можно сделать одним только браузером. Нам потребуются эти знания далееЖаркий август 2020 показал, что базовые меры — это слишком мало и неэффективно. Нужно что-то большееВыбирая решение, я ставил перед собой несколько целей:
  • Решение должно быть открытым
  • Решение должно быть бесплатным — только так оно может стать массовым
  • Решение должно быть децентрализованным — не должно быть единой точки отказа
  • Бомж-VPN. Хотелось иметь возможность соединиться с любым узлом сети забесплатно
  • Бомж-хостинг. Следствие предыдущего пункта. Возможность выкатить тестовый ресурс забесплатно
VPN отвалился сразу: даже рабочий VPN умер. VPN требует централизованного внешнего сервера — единая точка отказа. Наконец, VPN платный — не назвал бы лично себя нищебродом, но это точно не массовый вариантTOR я пока что не рассматривал. Это вполне жизнеспособное решение, но у меня отсутствует экспертиза. В комментарии вызываю пояснительную бригаду о сильных и слабых сторонах реальной эксплуатации TORЯ начал осваивать I2P. Идея мне показалась симпатичной. Особенно интересно, что сеть не просто выдержит резкий рост числа пользователей — она от этого станет работать лишь надёжнее (но это не точно). На лурке очень вдохновляющее описание возможностей, а wiki спускает с небес на Землю и даёт понять, что I2P — не серебряная пуля, и атаки по деанонимизации — реальность. Сложно и дорого, но реально. Для сравнения, без I2P — это как по паспорту представиться и приготовиться к обыскуВозможности, ограничения и болячкиТочно так же, как и в сети TOR, в сети I2P есть выходные ноды. Это значит, что через сеть I2P можно пролезть в обычный интернет. Однако следует понимать, что скорость работы оставляет желать лучшего — потоковое видео через I2P смотреть так себе идеяI2P не ограничивает себя каким-то протоколом. Вместо этого сеть предоставляет среду передачи данных. Я пробрасывал через сеть I2P соединение с базой данных. Туннели I2P позволяют пробросить любой ресурс, таким образом сделав его доступным для использования любыми программами. Если кто-то не знаком с туннелями — идея проста и состоит в том, чтобы для некоторого открытого порта на удалённом сервере открыть порт на своей машине, и в дальнейшем любой локальной программой подключаться к локальному порту, что точно умеет любая программа, а тонкостями переноса байтов на тот порт удалённой машины и обратно занимается уже туннелирующая программа (частный случай туннеля).Следствия туннелей — бомж-VPN и бомж-хостинг. Я счастлив — я могу выкатить ресурс бесплатно. Я могу соединить 2 машины бесплатно. Любой другой участник сети может сделать всё то же самое бесплатно. ВкусноФункционировать сеть сможет, даже если шаловливые ручки вновь потянутся к Большому Рубильнику — белорусские реалии именно такие, он существуетБольным местом является изменение маршрутов (следовательно, dest hash). Но я надеюсь, что проблема решаема — существует версия для Android, которая подразумевает переход между сетью оператора и разными точками доступа wifi, а в настройках роутера появился экспериментальный «Laptop Mode»Ошибки и заблужденияЯ заметил несколько шаблонов заблужденийОй, мне по телевизору сказали, что в этом вашем i2p такое показывают! Это вообще законно?Больше верьте слухам. Ничего там нет такого, чего нет в обычном интернете. I2P ставит своей целью среду передачи данных. Протоколы TCP и UDP, передают более чем 99% информации в интернете, включая незаконный контент. Давайте бороться с контентом, а не транспортом его доставкиКак интернет отключат — обязательно установлюИ будешь куковать, пока сеть не восстановится. I2P — не магия для обхода цензуры, а вполне реальная оверлейная сеть из плоти и крови, которая получает информацию о других участниках сети только во время своей работыХорошо, я установил, запустил, что-то потыкал — и выключил. Как только интернет выключат — ух держите меня семеро! Включу I2P — и всё у меня станет расчудесно!Та же проблема. С высокой вероятностью, тебе не удастся найти вообще никого из тех, с кем ты ранее устанавливал соединение. Запусти I2P как службу — пусть висит себе в фоне. Она есть не просит (ну кроме памяти). Только так ты встретишь час Ч в готовностиЯ на минуточку. Туда и назадУзлы, часто разрывающие соединения с другими участниками сети, по сложившейся традиции получают в жбан попадают в бан-листы. Не стоит возводить это правило в абсолют, просто желательно, чтобы служба работала в фоне. Не дёргайте её на каждый чих — она не кусает и есть не проситНу и совсем кошерная остановка службы I2P — это в консоли роутера нажать кнопочку «Shutdown» / «Выключить». Демон I2P остановися сам в худшем случае через 10 минут — как только истекут уже установленные соединения с другими участниками сети i2p
Кнопки «Restart» / «Перезапуск» и «Shutdown» / «Выключить» находятся на скриншоте в нижнем правом углуУстановка на desktopСостоит из двух обязательных частей — установки шлюза (inproxy) и настройки браузера (лайт или пожёстче — выбираем сами на свой вкус). Важно выполнить оба этапа, по отдельности они не имеют смыслаУстановка шлюзаНа оффициальном сайте проекта есть список загрузок — можно взять оттудаВ этом же списке присутствует секция «Пакеты для Debian/Ubuntu»После установки пытаемся открыть http://localhost:7657/ — web-консоль роутера. Настоятельно рекомендую добавить страницу в закладки или даже закрепить (Pin Tab). Если страница открылась — вы всё сделали правильноНастройка браузера. ЛайтВ данном случае мы исходим из предположения, что вы не делаете ничего плохого, и просто желаете получить доступ к информации, которая огорчила ваше правительство. А правительство, словно плаксивая девочка, склонно обижаться на любую информацию. Например, в России заблокирован linkedin. Жутко опасный и экстремистский ресурс, агаВ данном случае нас не пугают утечки информации. Например, сайт в сети i2p может запрашивать какой-нибудь jquery с CDN. Что такого в js-библиотеке, которую запрашивают миллионы, если не миллиарды раз в день?
Мы предполагаем, что не делаем ничего плохого, и нас не интересует сайт-приманка товарища майора Василия Мусорова с какой-то жестью, который загружает ресурсы напрямую в обход I2P или TOR по абсолютным ссылкам, выдавая ваш реальный IP-адрес. Оригинал изображения искать где-то тут: http://vasya-lozhkin.ru/pictures/. Я не нашёл =(Для настройки нам потребуется дополнение SmartProxy. Настройка производится в 2 простых шага — необходимо добавить входной шлюз I2P в список proxy-серверов и создать правило проксирования
Добавляем входной шлюз I2P в список proxy-серверов
Создаём правила проксирования для i2p-сайтовНастройка браузера. Для любителей пожёстчеПаранойя может затребовать гарантий отсутствия утечек. Из наличия паранойи не следует, что мы кинемся смотреть упомянутый ранее сайт товарища майора Василия Мусорова. Настройка проводится в несколько простых шаговУ меня нет лишнего браузера в системе, чтобы полностью выделить его под I2P. Воспользуюсь уже установленным firefox. Следующий вариант работает в Linux:
FIREFOX_PROFILE="firefox-i2p"
FIREFOX_HOME="${HOME}/${FIREFOX_PROFILE}"
mkdir -p "$FIREFOX_HOME"
env HOME="$FIREFOX_HOME" firefox
То есть идея проста: заставить firefox работать с полностью чистым профилем, который никак не повлияет на основной, и который мы сможем снести при первых же намёках на проблемы, как дедушке яичко. Какие бы мы туда дополнения ни ставили, какие бы настройки там не делали — основным профилем можно будет продолжать пользоватьсяУ меня нет ни одной машины с Windows и MacOS. В комментариях, пожалуйста, расскажите, как сделать похожий финт ушами в Windows. А в MacOS этот фокус должен сработать, но я не тестировал
Открываем настройки и находим «Network Settings» / «Настройки Сети»
И указываем входной шлюз I2PУстановка на AndroidСуть ровно та же, но инструменты немного другиеУстановка шлюзаНа всё той же странице загрузок есть секция «Android»
Секция загрузок для AndroidНастройка браузера. Лайт
Находим в менеджере дополнений FoxyProxy и устанавливаем
Переходим в его настройки, нажимаем «Добавить»
Указываем адрес шлюза, листаем вниз и жмём «Сохранить»
И добавляем шаблон для всего домена i2p
В настройках FoxyProxy убеждаемся, что он включенРецепты по настройкеЯ расскажу про несколько опциональных шаговDNS-over-HTTPSДля тех, что не читал предыдущую статью: необходимо добавить i2p и onion в исключения. Иначе браузер будет пытаться резолвить эти домены на Cloudflare с предсказуемым результатомI2P + uBlock OriginМы умеем учиться на ошибках, поэтому добавим в исключения зоны i2p и onion, таким образом полностью отключив блокировщик рекламы для всех ресурсов i2p и onion
Открываем настройки uBlock Origin
Добавляем в uBlock Origin исключения для доменов i2p и onionСтало лучше, чем было, но не идеально — теряется контроль над загрузкой стороннего контента (3rd party). Хотелось бы только отключить резолв имён i2p и onionДополнительные подпискиВ список подписок есть смысл добавить адреса: Покорми java памятьюВходной шлюз I2P написан на языке java. По умолчанию он стартует с ограничением в 128M. Этого хватит для знакомства и неспешного погружения в дивный новый мир невидимого интернета. Больше всего памяти потребляет компонент NetDB — база данных о других хостах сети I2P. Чем их больше известно, тем выше надёжность и тем выше вероятность, что в час Ч, когда интернет снова сдохнет, Вам таки удастся найти лазейку — доступный хост из списка известных. Правда, гарантий никакихВ случае Ubuntu/Debian:
sudo dpkg-reconfigure i2p
Как это сделать для Windows — я не знаю и очень надеюсь на комментарииКогда нельзя открыть порт меньше 1024, но очень хочется, то можноОчень спорный рецепт. В общем случае, так делать не надо. Но если очень хочется, то можно. Я проделал это для прощупывания возможностей I2P. То есть just for funПриключения начались с вопроса «так где же java?»
which java | xargs file --mime-type
/usr/bin/java: inode/symlink
Окей
which java | xargs readlink | xargs file --mime-type
/etc/alternatives/java: inode/symlink
Больше симлинков богу симлинков!
which java | xargs readlink | xargs readlink | xargs file --mime-type
/usr/lib/jvm/java-11-openjdk-amd64/bin/java: application/x-pie-executable
Следует понимать, что конфигурация у меня может не совпадать с конфигурацией у Вас. Идея проста — добавлять в середину секцию xargs readlink до наступления просветления — пока file не скажет application/x-pie-executable. Как только java нашлась — из получившейся команды удаляем 2 последних слова file --mime-type, например, нажав ^W дважды, и вместо этого добавляем setcap 'cap_net_bind_service=+ep':
which java | xargs readlink | xargs readlink | xargs setcap 'cap_net_bind_service=+ep'
Возможно, потребуется добавить также возможность открытия сырого сокета setcap 'cap_net_raw=+ep':
which java | xargs readlink | xargs readlink | xargs setcap 'cap_net_raw=+ep'
Но в следующий раз я просто разверну docker с nginxА что ещё там есть?Очень рекомендую почитать русскоязычную wiki и полистать списки identiguy
Внезапно web-версия telegram. Правда, я понятия не имею, знает ли про это зеркало администрация telegram. Впрочем, через выходную ноду можно достучаться и до оригиналаА ещё есть телеграмовские MTProto прокси. Идея сводится к созданию туннелей на указанные i2p-хосты. Инструкция на сайтеЕщё есть торренты и почта. Ничего из этого я ещё не пробовал использоватьНаходил флибусту и ebooks.i2p — последний выглядит вообще дорого-богатоВместо заключенияСледует понимать, что I2P — не самостоятельный ресурс, а в первую очередь фидер — среда передачи данных. Поэтому область применимости технологии достаточно широка и упирается, скорее, в воображениеЯ ни слова не сказал про i2pd. Проект достоин внимания: он производительнее при меньшем потреблении ресурсов. Пока что у меня нет экспертизы
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_detsentralizovannye_seti (Децентрализованные сети), #_setevye_tehnologii (Сетевые технологии), #_i2p, #_brauzery (Браузеры), #_zakonodatelstvo_v_it (Законодательство в IT), #_setevye_tehnologii (сетевые технологии), #_i2p, #_tsenzura (цензура), #_vpn, #_seti (сети), #_darknet (даркнет), #_detsentralizatsija (децентрализация), #_detsentralizovannye_seti (
Децентрализованные сети
)
, #_setevye_tehnologii (
Сетевые технологии
)
, #_i2p, #_brauzery (
Браузеры
)
, #_zakonodatelstvo_v_it (
Законодательство в IT
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 13:43
Часовой пояс: UTC + 5