I2P -- бесплатный способ обхода цензуры

I2P -- бесплатный способ обхода цензуры

root@localhost:~#

Начнём с определения того, с чем боремся. Цензура -- государственная система ограничения распространения информации. Цензура принимает самые разнообразные формы. Попробуйте отметить, с чем вы сталкивались лично и о чём наслышаны:

  • Блокировка ресурсов сети интернет и СМИ под идиотскими предлогами
  • Преследование администраторов и редакторов этих ресурсов
  • Деанонимизация и преследование пользователей этих ресурсов
  • Запрет распространения печатных изданий, вплоть до уголовного преследования распространителей

Это вводная статья. В ней я расскажу, что такое i2p, как его можно использовать и какие у него возможности

Зачем это нужно?

Сеть i2p спроектирована противостоять механизмам цензуры. В неё архитектурно заложено, что ресурсы сети будут пытаться блокировать, а пользователей будут пытаться деанонимизировать -- и всему этому необходимо противостоять

Как i2p усложняет жизнь цензору

Ресурсы сети i2p не использует IP-адреса. Вместо этого они идентифицируются ключами шифрования. Как следствие, чтобы сменить адрес в сети i2p, достаточно сгенерировать новый ключ, или просто удалить старый -- i2pd сгенерирует новый ключ сам

В сети i2p весь трафик шифруется на клиенте и только сервер может его расшифровать. К этому движется и обычный интернет -- сегодня https стал стандартом, а http/3 и вовсе не предусматривает незашифрованные соединения

Для сокрытия реальных IP-адресов и клиента, и сервера трафик проходит через цепочку других узлов сети. Почти как tor, однако разница в том, что каждый участник сети является промежуточным узлом для других участников сети. Это значит, что сеть i2p для своего функционирования не привязана к наличию и загруженности входных и промежуточных нод (узлов), вместо этого каждый участник сети является промежуточной нодой для кого-то другого. Слабая зависимость от внешней инфраструктуры -- это способность сети справиться с резким ростом числа участников. Если по-простому -- сеть не прекратит функционировать, если к ней резко добавятся сотни тысяч новых узлов. В сети tor каждый пользователь является потребителем ресурсов, в то время как в сети i2p каждый пользователь сам является ресурсом для кого-то другого

Точно так же, как и в сети tor, в сети i2p есть поддержка выходных нод -- узлов, через которые вы сможете из сети i2p обратиться к обычным ресурсам сети internet, которым вы не желаете раскрывать информацию о своём местоположении или которые у вас попросту заблокированы

Время жизни одной цепочки промежуточных узлов -- 10 минут. Потом цепочка перестраивается, и ваш трафик бежит по совсем другому маршруту

Для внешнего наблюдателя (провайдер) ваш трафик надёжно перемешивается с трафиком других участников сети i2p. Допустим, майор точно знает, что был скачан файл в 50Mb с определённое время. Так вот, поток вашего трафика будет включать и трафик других узлов, и поэтому провайдер будет видеть, что скачано вовсе не 50Mb, а хрен знает сколько, объём будет каждый раз разным, и пик активности будет размазан

Исходящий и входящий трафик идут по разным каналам. Представьте, что вы в автобусе, битком набитом людьми, передаёте за проезд. Вы передали одному соседу, он следующему, и через такую цепочку ваши деньги дошли до водителя. Водитель понятия не имеет, от кого ему прилетел запрос. Таллончик же он отдал другому пассажиру, тот третьему, и т.д., и в итоге он приходит к вам от совсем другого человека

В отличие от tor, i2p самодостаточен и не требует для своей постоянной работы инфраструктуры в открытой сети, которая стала ахиллесовой пятой для tor. Узким местом i2p является только самый первый запуск после установки, когда загружается первичный список узлов. Но этот список можно подсунуть вручную файликом, который вы можете скачать у любого вашего знакомого, кто пользуется сетью i2p. Особенно если знакомый за границей

Что такое i2p?

Важно понять одну вещь: i2p не является вещью в себе. Это инструмент, который вы можете комбинировать с другими инструментами в самых причудливых сочетаниях -- вы ограничены лишь вашим воображением

Попробуем классифицировать i2p. Он НЕ является VPN, хотя механизм туннелей позволяет его использовать в качестве такового. Демон i2p на вашей машине ведёт себя как HTTP или SOCKS прокси. Есть поддержка выходных нод -- это значит, что трафик вашего приложения можно пропустить через лошадь^W сеть i2p и выпустить его где-нибудь в обычный интернет

Просто установка и запуск i2p не делают вас анонимусом, а вот соответствующая настройка приложений даёт вам моральное право примерить маску Гая Фокса

Официальная классификация -- оверлейная анонимная одноранговая децентрализованная распределённая сеть. В принципе, этот птичий язык дословно переводится на человеческий:

  • оверлейная -- сеть функционирует поверх сети Интернет. В данном случае её можно сравнить с VPN
  • анонимная -- ни один промежуточный узел цепочки не знает, кто отправитель и кто получатель запроса
  • одноранговая -- в данном случае сеть можно сравнить с мессенжером. Вы вольны найти любого пользователя и написать ему напрямую без посредников
  • децентрализованная -- сеть не имеет единой точки отказа. Произвольный узел может быть выведен, но на работоспособности сети это не скажется
  • распределённая -- сеть сравнима с торрентами. Ни один участник не знает всех узлов сети, что не мешает найти нужные данные

Возможности i2p и сценарии использования

Принципиально сценарии использования делятся на клиентские и серверные. Разберём их подробнее

Клиентские приложения

Есть приложения, работающие исключительно в сети i2p. В частности, есть реализации анонимного torrent и анонимной почты, работающих только в сети i2p

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

Для огромного числа обычных приложений есть возможность указать http или socks proxy. Эти приложения легко могут быть настроены для работы через сеть i2p. Например, telegram позволяет указать proxy -- это значит, что telegram можно заставить работать через сеть i2p. Подробную инструкцию вы найдёте в статье Telegram + i2p. Ещё одним частным случаем такого приложения является web-браузер, и его рассмотрим подробнее чуть далее

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

Есть также класс приложений, которые настроить нельзя -- в них не предусмотрены настройки вообще. Тут уж извините. Каждая такая поделка заслуживает отдельной статьи "Дружим %APP% с i2p". Например, упомянутая выше статья Telegram + i2p

Вместо заключения по клиентским приложениям. Через i2p можно заставить работать очень много чего. Сложность варьируется от просто до нуегонафиг. Успехов

WEB браузер

Формально WEB-браузер является частным случаем приложения, поддерживающего работу через HTTP proxy. В сети i2p есть web-сайты, и функционируют они принципиально так же, как и в обычном интернете. Ничего не мешает запустить зеркало любого сайта в сети i2p. Приведу несколько примеров уже запущенных сайтов:

Инструкции по настройке WEB браузера заслуживают отдельных статей:

Серверные приложения

Ранее я говорил, что сеть одноранговая. Следствия не совсем понятны, правда? :)

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

Так вот, одноранговая сеть решает эту проблему -- вы можете в сети i2p запустить у себя, находясь за NAT, ресурс, и любой другой участник сети i2p может получить к нему доступ. Регистрация человекочитаемых доменов в сети i2p тоже бесплатная, условие одно -- если ресурс долго оффлайн, адресные книги его "забывают", и имя становится снова доступным для регистрации

Другие материалы по теме

В интернете достаточно много информации об i2p

habr: Общее введение в I2P

habr: Маршрутизация в сети I2P. Флудфилы

habr: Туннели I2P: Чесночное шифрование и однонаправленная передача информации

habr: О скрытых сетях и анонимности их разработчиков

habr: Кому нужны скрытые сети? Заметка без романтических небылиц о даркнете

habr: Как I2P-роутер работает без выделенного IP-адреса. Магия прямого подключения двух абонентов за NAT-ом

habr: Абсолютная приватность сервиса в I2P: зашифрованный лизсет

habr: Разбор атаки на пользователя I2P

habr: Администратор узла сети I2P. Полный курс

youtube: I2P: протокол невидимого интернета. Как устроена самая анонимная сеть? Что такое I2Pd?

Заключение

Я попытался максимально лаконично дать общее представление об i2p. Настройка заслуживает отдельной статьи для каждой платформы:

Эта статья является частью цикла статей об i2p

Report Page