Каждый пользователь Интернета, когда просматривает веб-страницы, оставляет за собой гораздо больше «следов», чем он думает. Иногда их данные собираются для статистики или учета, а иногда могут попасть к злоумышленникам. Но прогресс не стоит на месте. Командой разработчиков был создан и запущен проект i2p, который является своеобразным антидотом для любопытных сайтов и людей. Теперь осталось рассмотреть вопрос как пользоваться i2p.

Итак, i2p расшифровывается Invisible Internet Project и переводится как «Проект Невидимый Интернет». С его помощью можно создать зашифрованную сеть и остаться анонимным при совершении каких-либо действий в Интернете. Принцип работы следующий: пользователь запускает на своем компьютере программу, которая работает как прокси-сервер. Весь трафик отправляется предварительно в этот прокси. Можно сказать, что i2p - некий посредник между компьютером и конечной точкой доставки информации. При этом, трафик, поступая в этот посредник, шифруется шлюзом. Так, на конечную точку приходит уже зашифрованный, защищенный трафик.

Стоит заметить, что вся информация, отправляющаяся как пакет, при использовании такого прокси-сервера, разбивается на несколько пакетов и отправляется по случайным каналам, меняющимся ежеминутно. А сам IP-адрес заменятся на случайный криптографический ключ. Именно поэтому установить то, какой компьютер являлся отправителем, становится практически невозможно.

Стоит ли пользоваться i2p?

Такой проект может заинтересовать тех, для кого важно следующее:

  • невозможность установить IP-адрес, с которого была отправлена определенная информация;
  • невозможность отслеживания действий;
  • отсутствие DNS-серверов;
  • разделение исходящего трафика на пакеты и отправка частями;
  • шифровка исходящего трафика;
  • отсутствие цензуры;
  • возможность использования анонимной электронной почты;
  • возможность посещать анонимные сайты;
  • возможность анонимно передавать данные, например, torrent-файлы;
  • возможность анонимного использования служб мгновенной передачи сообщений (IRC и Jabber или альтернативного сервиса);
  • возможность посещения сайтов, не прошедших цензуру.

Какие сервисы встроены в эту программу?

  • Mail - классическая почта со множеством настроек и возможностью использования любого почтового клиента;
  • Bote - аналог почты;
  • IRC - чат;
  • Jabber - чат;
  • Messenger - «фирменный» чат;
  • Speedtest - аналог всем известного измерителя скорости;
  • Rapidshare - файлообменник;
  • Privacybox;
  • Радио - собственно, радио.

Пользователи каких операционных систем могут установить «невидимый интернет»?

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

  • Windows;
  • MAC OS X;
  • BSD, Linux, GNU, Solaris;
  • Ubuntu, Debian;
  • Android.

Настройка i2p

В общем случае, для работы в анонимном интернете нужно:

  • скачать и установить программу i2p;
  • настроить браузер для работы с программой через прокси;
  • запустить установленную программу;
  • запустить отстроенный браузер.

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

После того, как программа была скачана, нужно проверить версию Java Runtime - она должна быть не ниже 1,5. Но можно это и не возиться с проверкой -прога сама всё скажет. Смотрим и выполняем.

Запускаем установщик. Начинаем установку. Жмем кнопку «запустить».

Нажимаем OK. Нас перебрасывают на загрузку Java.

Жмём здоровенную красную кнопку загрузки. Выскакивает окно.

Соглашаемся с условиями — просто жмем кнопку и скачиваем установочный файл жабы, т. е.(прости меня, Господи) Java. запускаем его Подробно, как установить такой продукт не рассказываю, т.к. всё достаточно просто. Кто не справился можете написать в комментариях.

Рассмотрим пример работы в браузере .

Необходимо зайти в настройки браузера, выбрать там настройки сети/прокси и установить HTTP прокси-сервер, вписав IP-адрес 127.0.0.1 и порт 4444.

Рассмотрим это действо подробно (с картинками).

В левом верхнем углу браузера жмем Firefox, затем «Настройки», в открывшемся контекстном меню жмем «Настройки»

На вкладке «Сеть» нажимаем кнопку «Настроить…».

Затем нажимаем радиокнопку «ручная настройка сервера прокси». Прописываем в соответствующие поля IP-адрес 127.0.0.1 и порт 4444.

И нажимаем OK.

Следующий шаг — это установка прокси-сервера на своем компьютере.

Запускаем скачанную программу-маршрутизатор. Выскакивает окошко.

Жмем ОК. И продолжаем настройку.

Жмем «Завершено».

После установки программы её запускаем. Нам откроется морда,т.е. консоль маршрутизатора.

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

Теперь смотрим, если в панели слева загорелась зеленая точечка «Коллективные каналы», то настройка завершена. А вот, что делать дальше, так будет рассказано в следующей статье.

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

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

По своей сути сеть I2p не является прямым доступом в интернет. Все запросы проходят через так называемые «туннели», которые обеспечивают анонимность и защиту данных.
В этой статье мы подробно разберем, как скачать и установить программу I2p на свой компьютер, какие настройки необходимо сделать, чтобы иметь возможность посещать сайты анонимно.

  1. Для скачивания перейдите на официальный сайт geti2p.net .
  2. На главной странице вы увидите большую зелёную кнопку «Скачать I2P версия 0.9.33», кликните по ней.
  3. На следующем шаге необходимо скачать версию программы для вашего компьютера. В настоящий момент установить I2p можно на Windows, MAC, Linux, Debian и Android.
    Выберете подходящую версию, к примеру, для Windows. Скачайте файл, кликнув по нему мышкой.
  4. На ваш компьютер начнёт скачиваться соответствующий файл, в данном примере мы рассмотрим установку I2p для Windows. Размер файла составляет 17,6 Мб.
  5. Дождитесь окончания его скачивания и перейдите в раздел «Загрузки» на вашем компьютере. Найдите там скачанный файл и кликните по нему мышкой 2 раза, чтобы начать установку.
  6. Программа запросит выбрать язык, по умолчанию установлен русский. Нажмите «ОК».
  7. Появится приветствие от программы, нажмите «Далее».
  8. Программа предложит прочесть правила, нажмите «Далее».
  9. На следующем шаге необходимо выбрать наборы для установки. Поставьте галочки как указано на картинке ниже и нажмите «Далее».
  10. Выберите каталог установки — по умолчанию программа предложит установить установку на диск С, нажмите «Далее».
  11. Подтвердите создание каталога для установки, нажав на «ОК».
  12. Теперь необходимо настроить создание ярлыков. Здесь всё можно оставить по умолчанию. При желании можно создать дополнительный ярлык на рабочем столе, установив соответствующую галку, нажмите «Далее».
  13. Программа начнёт установку, весь процесс занимает буквально несколько секунд. После того как появятся 2 синие полностью закрашенные полоски, нажмите «Далее».
  14. Установка I2p завершена, чтобы закрыть окно, нажмите на кнопку «Завершено».
  15. Чтобы открыть программу перейдите в раздел «Пуск» и нажмите «Старт I2P».
  16. Буквально через несколько секунд на вашем компьютере откроется Internet Explorer с консолью маршрутизатора.

Настройка I2p

Основные рекомендации по настройке маршрутизатора вы увидите сразу после открытия программы в Internet Explorer. Они расположены в самом верхнем окне. Здесь находится небольшая инструкция, а также ссылки на раздел «FAQ» на официальном сайте разработчика.
Первоначально необходимо зайти в сетевые настройки и установить ограничение скорости, которое соответствует вашему подключению в интернет.


Как исправить ошибки

Здесь следует обратить внимание на следующий параметр — в графе «Сеть» должен появиться значок «ОК». Это означает, что все настройки выполнены верно и маршрутизатор готов к работе.

Если в графе «Сеть» отображена какая-либо ошибка, то её необходимо исправить. Очень часто возникает ошибка «Заблокировано брандмауэром». В этом случае нужно перейти в настройки сети в раздел «Сеть» и проверить установлена ли у вас галочка напротив пункта использовать «UPnP для автоматического открытия портов на брандмауэре». Если данная галочка стоит, но ошибка не пропадает, то нужно перейти в настройки роутера и внести там необходимые изменения.

Для этого перейдите в настройки роутера, который вы используете для подключения к интернет. Найдите в нём пункт «Настройка UPnP». Здесь необходимо включить UPnP и сохранить изменения.

После внесения изменений в роутер перейдите и обновите консоль I2p. Ошибка должна исчезнуть. Напротив пункта «Сеть» должна появиться надпись «ОК».

Библиотека I2p

Вся анонимная сеть I2p полностью децентрализована и не имеет единой базы данных. При установке программы каждый пользователь должен самостоятельно закачать и обновить свою адресную книгу. Первоначально в сети I2p будет находиться всего около 400 сайтов, поэтому в неё необходимо добавить новые библиотеки. Для этого перейдите в раздел «Подписки».

В графу «Подписки» необходимо вставить дополнительные библиотеки и нажать на кнопку «Сохранить». Сами разработчики сети I2p предоставляют 3 библиотеки по умолчанию. Однако на различных форумах и сайтах в интернете можно найти гораздо большее количество различных библиотек.

Как увеличить скорость и трафик

Для этого перейдите в раздел «Трафик», в пункт «Ограничение скорости». По умолчанию здесь будет установлена 40 килобайт в секунду, нужно изменить эти цифры, просто добавив 0 на конце. При пользовании сети I2p следует всегда помнить, что ваш компьютер после подключения также будет участвовать в передаче трафика другим пользователям. Даже когда вы не пользуетесь сетью и не открываете сайты в интернете. После подключения к I2p ваш компьютер также будет цепочкой в раздаче и передаче трафика.

Для регулирования скорости передачи данных можно изменять цифру в графе «Доля транзитного трафика». Чем выше будет установленная доля, тем выше будет скорость передачи данных.

Регулирование длины туннелей

Для регулирования туннелей, перейдите в раздел «туннели». Откроется специальная панель, в которой можно устанавливать длину входящих и исходящих туннелей. Здесь можно установить различные значения длины туннелей, в зависимости от ваших целей. В среднем 2 туннеля вполне достаточно для обеспечения анонимности и хорошей скорости открытия сайтов.
Следует помнить, что чем длиннее туннель, тем выше анонимность и тем медленнее будут открываться сайты. Если вы хотите получить большую анонимность, то необходимо увеличивать длину туннеля. Если для вас важно, чтобы сайт открывался быстро, то установите среднюю или небольшую величину туннеля.

В свете тотальной слежки многие пользователи посматривают в сторону решений, позволяющих скрыть свою частную жизнь от чужих глаз. Два наиболее популярных варианта - это Tor и I2P. Tor уже не раз мелькал на страницах журнала, и с его надежностью, в принципе, все понятно - сами разработчики пишут, что стопроцентной анонимности он не дарует. А вот с I2P нам сегодня придется разобраться самостоятельно - действительно ли эта штука так надежна, как считают многие?

Немного истории

В начале 2000-х годов существовало множество P2P-сетей, практическим применением которых был файлообмен. Копирастеры приходили в ярость, поскольку в распространении файлов принимали участие все сразу. Попытки же устроить «показательную порку» индивидуумам приводили лишь к колоссальным затратам времени и средств с нулевым конечным результатом. Для тех же, кто опасался оказаться в числе «попавших под раздачу», была предложена сеть Freenet, ключевой идеей которой был обмен зашифрованными блоками данных, при этом участник не имел представления о том, что это за данные, если они не были предназначены ему самому. Хотя сеть предоставляла и другие сервисы вроде полностью анонимных форумов, фактически все сводилось к скачиванию файлов.

Задачи I2P

Основные задачи I2P следующие:
  1. Скрывать местоположение eepsite’ов.
  2. Скрывать местоположение клиентов, подключающихся к eepsite’ам, в том числе и от самих сайтов.
  3. Сделать невозможным ограничение доступа к сайтам со стороны провайдеров и/или магистральных узлов.

Со временем весь файлообмен переместился в торренты. В результате возникла идея развития Freenet’а в направлении «невидимого интернета» - анонимной сети поверх существующего интернета. Так появился I2P. Долгое время проект был интересен лишь его создателям и некоторому числу гиков. Вскоре борьба уже стала вестись за саму информацию, поскольку, с одной стороны, интернетом стало пользоваться большинство людей, а с другой стороны, интернет оказался местом никем не контролируемого обмена информацией. Стало понятно, что так долго продолжаться не может, и поднялась новая волна интереса к подобным проектам.

WARNING

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

I2P и Тор

«Спусковым крючком», вызвавшим массовый интерес к «невидимому интернету», стало законодательное ограничение доступа к информационным ресурсам в ряде стран, а также разоблачения Сноудена о слежке за всеми. Разумеется, многим это не понравилось: действительно, с какой стати непонятно кто станет решать за взрослого дееспособного человека, какую информацию ему следует получать, а какую нет. Что касается слежки, то она вообще никому не приятна. Осознав это, обыватель бросился искать две магические кнопки «Обойти цензуру» и «Спрятаться от слежки». И такие «кнопки» он получил в виде специальных браузеров или плагинов к браузерам для сети Tor. Технически грамотные люди же обратили внимание на сеть I2P в качестве альтернативы Tor’у. Поскольку ты, уважаемый читатель, относишься к технически грамотным людям (иначе зачем тебе «Хакер»?), то, прочитав данную статью, поймешь, какие задачи решает сеть I2P и каким образом она это делает. Следует обратить внимание на главное отличие I2P от Tor: основной задачей Tor’а является сокрытие истинного IP-адреса клиента, обращающегося к серверу. По большому счету серверам нет дела до того, каким образом к ним подключаются клиенты, - скорее, Тоr является для них лишней головной болью из-за хулиганов, в случае же I2P, наоборот, владельцы серверов (eepsite’ов) размещают их анонимно, а клиенты вынуждены использовать I2P, если хотят обращаться к этим серверам. Таким образом, Тоr является сетью клиентов, а I2P - серверов. Конечно, есть и onion-сайты в Тоr, и выходные узлы в I2P, однако это скорей побочные технологии.

Myth busters

В Сети гуляет несколько популярных мифов о I2P, в которые многие верят. Мы же их развеем. Миф 1: чем больше участников, тем быстрее работает сеть. А на самом деле: каждый новый участник должен поддерживать свою базу данных в актуальном состоянии, поэтому сеть, а особенно floodfill’ы просто захлебнутся в потоке таких запросов. В результате часть узлов станет просто недоступной другим узлам. Миф 2: чем больше доля транзитного трафика, тем выше анонимность. А на самом деле: I2P оперирует отдельными пакетами, поэтому реальные тоннели поверх обычного интернета, как, например, в VPN, не строятся. Для каждого пакета выбирается подходящий способ доставки, независимо от того, свой ли это пакет или транзитный. Провайдер же видит активность участника как обмен зашифрованными пакетами с различным адресами, выбираемыми достаточно бессистемно. В этом потоке, помимо тоннельных сообщений, присутствуют в большом количестве сообщения, передаваемые напрямую. С другой стороны, узел может видеть часть транзитного трафика, если является концом тоннеля, а не промежуточным узлом, в этом случае извне транзитный тоннель выглядит точно так же, как собственный. Миф 3: в Тоr’е применяется многослойное «луковое» шифрование, а в I2P более прогрессивное «чесночное», в котором сообщение состоит из нескольких «чесночин», предназначенных разным узлам, при этом узел может расшифровать только свою «чесночину», содержимое остальных ему неизвестно. А на самом деле: изначально оно именно так и планировалось, однако из-за необходимости использования тоннелей парами «исходящий - входящий» пришлось шифровать весь «чеснок» целиком, а не каждую «чесночину» по отдельности. Действительно сообщение, явно именуемое «чесноком», состоит из «чесночин», но поскольку его структура становится видна только после расшифровки, то «чесночины» фактически вырождаются во фрагменты тоннельных сообщений. Как должно выглядеть реальное «чесночное» шифрование, можно понять из механизма создания тоннелей: сообщение состоит из нескольких записей, из них зашифрованы все, кроме одной, предназначенной данному узлу; он перешифровывает сообщение своим ключом и отсылает дальше. Естественно, следующему узлу предназначается уже другая запись сообщения. Таким образом, декларируемое «чесночное» шифрование применяется всего лишь в одном сообщении, используемом относительно редко, в основном же потоке данных используется обычное многослойное шифрование: промежуточные узлы шифруют сообщение каждый своим ключом, а владелец расшифровывает, применяя эти ключи последовательно.

Как участники I2P находят друг друга?

Начнем с того, что рассмотрим встроенные в I2P механизмы, которые позволяют участникам находить друг друга, и попробуем найти в них потенциальные уязвимости. Каждый узел I2P идентифицируется I2P-адресом, представляющим собой две пары открытых и закрытых ключей, генерируемых в момент создания узла случайным образом, без какой-либо корреляции с IP-адресом или местоположением. Центрального источника адресов нет, предполагается, что вероятность совпадения двух случайно сгенерированных адресов пренебрежимо мала. Одна пара ключей используется для асимметричного шифрования, а другая - для подписи. Владельцем узла является тот, у кого имеется файл с полным набором ключей длиной 660 байт. Этот файл располагается на компьютере владельца и по сети не передается. Два открытых ключа и 3-байтный сертификат (на настоящий момент всегда нулевой) образуют 387-байтный идентификатор узла, под которым узел становится известен в I2P. Поскольку полный 387-байтный идентификатор довольно неэффективен для сравнения, сортировки и передачи данных, то для обозначения узла используется 32-байтный SHA-256 хеш от идентификатора. Строковое Base32 представление этого хеша и является адресом в.b32.i2p-адресах. А что делать, если известен только хеш, а нужно знать публичные ключи, содержащиеся в идентификаторе, например для шифрования или проверки подписи? Для этого существует сетевая база данных (netDb) - не очень удачное название, правильнее было бы назвать базой данных о сети, но такова уже устоявшаяся терминология.
У каждого участника эта база своя, и одной из задач программы-клиента является поддержка базы в актуальном состоянии. Если узел с искомым хешем в локальной базе не найден, то следует о нем спросить другие узлы; если у запрашиваемого узла адрес присутствует в базе, то он пришлет в ответ информацию о нем, в противном случае вернет список трех других узлов, где, по его мнению, адрес может быть. То есть, чтобы узнать информацию об узле, нужно знать по крайней мере его хеш - возможность скачать список всех известных на данный момент узлов умышленно отсутствует. Также предусмотрен механизм «зондирования», при котором посылается запрос случайно сгенерированного хеша со специальным флагом, и тогда узел вернет список трех узлов, присутствующих в его базе, хеши которых наиболее «близки» к запрошенному, тем самым позволяя узнать о новых участниках.

Обманываем новичков

Наличие локальной базы данных позволяет участнику выходить в сеть немедленно, не обращаясь к серверам каталогов узлов, как это делается в Тоr’е (из-за этого китайское правительство в 2010 году смогло отключить его, блокировав доступ к каталогам). Однако у такой децентрализации есть один существенный недостаток: чтобы получать информацию о новых узлах, в локальной базе данных должны уже присутствовать какие-то узлы. Значит, при первом запуске их придется откуда-то загрузить. Этот процесс называется «посевом» (reseeding) и заключается в скачивании файлов с небольшого числа жестко прописанных в коде сайтов. Достаточно заблокировать доступ к этим сайтам, и новые узлы не смогут стартовать. Правда, в этом случае для первого запуска можно просто взять список узлов у кого-то другого. Гораздо хуже, если доступ будет не заблокирован, а перенаправлен на сайты с фальшивым списком узлов, - тем самым новый узел рискует попасть в изолированную от остальной сеть, и нет простого способа распознать эту ситуацию. К чести разработчиков, они понимают масштаб проблемы и работают над тем, чтобы распространять начальный список узлов в виде подписанного их ключом архива по различным каналам.

Невидимый интернет

Сеть I2P состоит из узлов двух видов: маршрутизаторы, имеющие помимо I2P-адресов обычные IP-адреса и видимые в обычном интернете, и узлы, находящиеся позади маршрутизаторов и собственных IP-адресов не имеющие, - они и образуют тот самый «невидимый интернет». Маршрутизаторы представлены в сетевой базе данных структурой RouterInfo, помимо полного идентификатора содержащей один или несколько внешних IP-адресов и доступных протоколов, а также список возможностей данного маршрутизатора, важнейшей из которых является floodfill. Floodfill-маршрутизаторы служат своего рода «досками объявлений», куда узлы публикуют информацию о себе и куда приходят запросы клиентов. Во избежание подделки данные подписываются ключом, входящим в адрес. Поскольку информация о маршрутизаторе меняется довольно редко, то соответствующие файлы сохраняются на диске и загружаются в память при старте. У нормально функционирующего I2P-клиента таких файлов должно быть порядка нескольких тысяч. < Так выглядит файл RouterInfo типичного floodfill’а «Невидимый интернет» представлен структурами данных LeaseSet, содержащих полный идентификатор, дополнительный ключ шифрования и список тоннелей, ведущих к маршрутизатору с данным узлом. Хотя входящие тоннели имеются и у самих маршрутизаторов, они никогда не формируют LeaseSet’ы: к маршрутизаторам всегда следует обращаться, устанавливая с ними прямые соединения, тоннели же используются только для получения ответов на запросы. Поскольку продолжительность жизни одного тоннеля десять минут, то LeaseSet’ы также существуют недолгое время и поэтому на диске не сохраняются, а при рестарте перезапрашиваются по новой. Тоннели и ключ шифрования из LeaseSet’а являются единственным способом обращения к «невидимому» узлу, то есть, зная адрес, следует сначала запросить его LeaseSet у ближайшего к нему floodfill’а и потом отправить сообщение в один из тоннелей. Для получения ответа требуется сформировать собственный LeaseSet, который можно отправить вместе с сообщением или же опубликовать на ближайшем floodfill’е. Невозможность установить, на каком маршрутизаторе располагается тот или иной LeaseSet, является краеугольным камнем технологии обеспечения анонимности в сети I2P. Соответственно, большинство атак злоумышленников направлены на решение противоположной задачи. С этой целью в I2P для передачи информации используется сильная криптография, скрывающая данные от особо любопытных провайдеров разных уровней, а удачно применяемые электронные подписи делают сеть устойчивой к атакам типа man-in-the-middle.

Перехватываем тоннели

Для обеспечения анонимности внутри I2P применяются тоннели, представляющие собой цепочки маршрутизаторов, через которые передаются сообщения. Тоннели бывают исходящие и входящие. Исходящие предназначены для сокрытия местоположения отправителя, а входящие - получателя. Потому LeaseSet’ы и представляют собой список входных узлов и идентификаторов входящих тоннелей, информация об исходящих тоннелях не публикуется. Местоположение второго конца тоннеля держится в секрете. Для получения ответов клиент посылает серверу собственный LeaseSet. Каким путем проложен тоннель и, соответственно, на каком узле находится его второй конец, известно только создателю тоннеля. Все промежуточные участники тоннеля знают лишь следующий узел, которому следует передать перешифрованное сообщение. Но это в теории - на практике же промежуточные узлы также знают, откуда пришло сообщение, потому что сообщения между узлами передаются по обычному интернету и узнать IP-адрес отправителя не составляет труда. Далее, при достаточном размере базы можно найти и RouterInfo. Таким образом, если промежуточный узел тоннеля принадлежит злоумышленнику, то он немедленно узнает и двух своих соседей, что компрометирует одно- или двухшаговые тоннели, поскольку позволяет отследить всю цепочку. Теоретически можно увеличить длину тоннелей вплоть до восьми узлов, практически же каждый дополнительный узел резко замедляет скорость работы и надежность, поскольку присутствие узла онлайн на все время существования тоннеля не гарантировано. Поэтому в настоящий момент в I2P используются трехшаговые тоннели. Таким образом, для успешной деанонимизации узла злоумышленнику следует узнать маршрут любого из тоннелей в любой момент времени - для этого достаточно, чтобы два узла одного тоннеля были доступны злоумышленнику. При нынешнем размере сети в несколько тысяч узлов такой сценарий вполне по силам крупным структурам. Если в деанонимизации серверов ранее описанный перехват reseeding’а мало поможет, поскольку серверы выбирают узлы входящих тоннелей сами, то для выявления клиентов, посещающих «неблагонадежные» ресурсы, данный метод идеален: все узлы, в том числе выходные, используемые клиентом для построения его исходящих тоннелей, будут априори принадлежать злоумышленнику. Тем самым сразу станет известно, откуда пришло сообщение, предназначенное какому-нибудь входящему тоннелю сервера.

Атака методом исключения

Для тех, кто не обладает достаточными ресурсами по захвату большого числа узлов, однако располагает временем и терпением, подойдет другой способ. Цель его - резкое сужение круга «подозреваемых» маршрутизаторов (при должном везении даже до одного), на которых может располагаться искомый узел. Возможность проведения такой атаки обусловлена P2P-природой сети I2P - большинство маршрутизаторов сети не находятся онлайн 24 часа в сутки, поскольку располагаются на компьютерах ее участников. С другой стороны, эксплуатируются особенности I2P:
  1. Время существования тоннеля десять минут.
  2. Узел не участвует в тоннеле дважды.
  3. Для построения тоннеля каждый раз выбирается новая последовательность узлов.
Перед началом атаки злоумышленник набирает достаточно обширную базу, предполагая, что в ней находится и маршрутизатор атакуемого узла. Далее он начинает постоянно обращаться к атакуемому узлу с запросом, предполагающим получение ответа. Это можно делать ненавязчиво, главное, чтобы запрос-ответ шли постоянно, тем самым злоумышленник определяет временные интервалы, когда атакуемый узел и, соответственно, его маршрутизатор находится онлайн. Одновременно с этим оставшиеся маршрутизаторы опрашиваются путем установления непосредственного соединения, отправки какого-нибудь запроса или создания тоннеля. Делается это массово в течение максимально короткого промежутка времени. Те маршрутизаторы, которые оказались неактивными в то время, как атакуемый узел показывает активность, выбрасываются из списка, и наоборот - выбрасываются активные, когда узел неактивен. Если же атакуемый узел активен все время, то в конце концов список будет состоять из постоянно активных маршрутизаторов. И он может оказаться достаточно большим. Вот тут на помощь злоумышленнику и приходят перечисленные выше особенности: входные маршрутизаторы тоннелей, входящих в LeaseSet атакуемого узла, заведомо не являются его маршрутизатором и могут быть немедленно исключены. LeaseSet обновляется не реже чем раз в десять минут и обычно содержит пять тоннелей. За час будут исключены 30 узлов, за сутки 720, таким образом, перебор списка в 5 тысяч узлов займет не более недели.

Определяем соседей по запаху чеснока

Для обеспечения анонимности с обеих сторон тоннели используются парами: исходящий тоннель отправителя и входящий тоннель получателя. Поскольку тоннели создаются независимо друг от друга, то выходной и входной маршрутизаторы в месте соединения тоннелей видят незашифрованные передаваемые данные. Поэтому поверх тоннельного используется дополнительный уровень шифрования - специальное «чесночное» сообщение, полностью зашифрованное и предназначенное для конечных узлов в цепочке. Проблема заключается в том, что расшифровкой таких сообщений занимается маршрутизатор узла, а не сам узел. Таким образом, ключ шифрования, присутствующий в полном идентификаторе, не используется, вместо этого в LeaseSet’е присутствует предназначенный для шифрования отдельный ключ, сгенерированный маршрутизатором, на котором располагается данный LeaseSet. При этом ключ должен быть одним и тем же для всех расположенных на маршрутизаторе узлов, даже если каждый LeaseSet использует свой собственный набор тоннелей. Иначе и нельзя, поскольку «чесночное» сообщение должно быть расшифровано до того, как станет понятно, кому предназначена та или иная «чесночина». В результате изначально здравая идея «чесночной» передачи данных обрела столь уродливую форму при передаче через пару тоннелей. Таким образом, ключ шифрования, публикуемый в LeaseSet’е, является уникальным идентификатором соответствующего маршрутизатора. Достаточно скомпрометировать любой из узлов, чтобы также скомпрометировать все остальные, в том числе и клиентские. Для проведения данной атаки злоумышленнику следует запустить один или несколько floodfill’ов, куда узлы будут публиковать свои LeaseSet’ы.

Выводы

Суммируя вышесказанное, приходим выводу: анонимность I2P в нынешнем состоянии носит лишь базовый характер, позволяя укрыться только от пассивного наблюдения, вроде сбора маркетологической информации. Безусловно, проведение данных типов атак требует серьезных ресурсов, вроде высокоскоростных серверов и специализированного софта, но если кому-то сильно понадобится, то он сможет раскрыть анонимность довольно быстро. Увеличение числа узлов в сети могло бы решить данную проблему, однако при нынешней организации сети это приведет к ее фактическому коллапсу. В то же самое время I2P прекрасно подходит для построения «неубиваемых» ресурсов, доступ к которым невозможно ограничить в принципе.

I2P – Анонимная сеть созданная в 2003 году немецкими разработчиками. В отличии от а не заспамлена сайтами с дп. Встречается более адекватная публика, но это похоже временно. Создавалась с целью полной анонимности, и им это удалось. Весь трафик идет «туннелями» через таких же участников сети. Сеть не имеет серверов имен (DNS), вся информация о сайтах хранится в адресных книгах, обновляемых по типу torrent сети. Рассказывать зачем эта сеть нужна вам смысла нет, если вам туда надо – знаете зачем. В конце статьи вы найдете ролик, в котором рассказано как подключится к i2p сети.


Сайты I2P

Все прошло по плану и теперь вы можете открывать и пользоваться сайтами i2p опишу некоторые из них:

  • http://forum.i2p/ — форум i2p с русскоязычным разделом
  • http://hiddenchan.i2p/ — Хиденчан. Русскоязычная имейджборда
  • http://rus.i2p/ — Русская i2p WIKI – в основном описаны возможности и сеть i2p, есть список русскоязычных сайтов.

Проблемы и ошибки

Основные проблемы и их решения. Если у вас возникли вопросы вы можете воспользоваться

I2P (Invisible Internet Project) - децентрализованная анонимная сеть. Как TOR , только лучше, т. к. не позволет деанонизировать пользователя даже в том случае, если часть промежуточных нод будет скомпрометирована. Децентрализованность обозначает, что работа I2P не зависит от каких-либо центральных узлов или «супернод» (например, отсутвуют DNS -серверы или их аналоги).

Как пользоваться

Прежде всего, следует выполнить установку пакета i2p

sudo apt-add-repository ppa:i2p-maintainers/ i2p sudo apt-get update sudo apt-get install i2p

Затем необходимо произвести запуск программного роутера для подключения к сети I2P. Если планируется редкое использование данной сети, то запуск можно произвести командой в консоли (от имени Вашего пользователя, без sudo):

I2prouter start

Если не используется java service wrapper (http://wrapper.tanukisoftware.com/) или не работает предыдущая команда, то запуск производится командой (не используйте sudo и не запускайте от root):

I2prouter-nowrapper

если же доступ к сети I2P требуется постоянно, то, возможно, следует запускать I2P-роутер как демон. Для этого необходимо выполнить в консоли команду перенастройки пакета i2p:

sudo dpkg-reconfigure -plow i2p

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

Если I2P-роутер был запущен от имени пользователя, то через некоторое время в браузере по умолчанию откроется локальный адрес http://127.0.0.1:7657/home - «Консоль маршрутизатора I2P».

Теперь объясним системе (и браузеру в том числе), что на адреса вида example.i2p нужно ходить через прокси localhost:4444. Создаём новый proxy.pac текстовым редактором, вставляем туда:

function FindProxyForURL(url, host) { if (dnsDomainIs(host, ".i2p" ) ) { return "PROXY 127.0.0.1:4444" ; } else { return "DIRECT" ; } }

Сохраняем. Открываем «Параметры системы» → «Сеть» → «Прокси-сервер», в « URL автоматической настройки» указываем только что созданный файл. Всё.

Внимание! Описанный выше метод является не безопасным с точки зрения анонимности. Лучше выделить отдельный браузер, и в настройках прокси прописать только i2p. А также отключить доступ к обычным веб ресурсам - очистить поле «Список outproxy(x)» на странице http://localhost:7657/i2ptunnel/edit.jsp?tunnel=0

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

i2prouter управляется через web-интерфейс.
http://localhost:7657/config – настройки
http://localhost:7657/tunnels – туннели

I2P на выделенном сервере

Данная инструкция актуальна для домашнего сервера, находящегося в одной локальной сети с локальным компьютером. Для VPS/VDS требуется внести коррективы в данный мануал

Установка производится также, как и на локальный компьютер. После установки надо сделать туннель с порта 7657 на порт 7657 сервера.

ssh user@ server -L7657:127.0.0.1:7657

Если в консоли появится приглашение шелла сервера, то Web-интерфейс I2P станет доступен по адресу localhost:7657

sudo nano / var/ lib/ i2p/ i2p-config/ clients.config

Там найти подобную строку

ClientApp.0.args=7657::1,127.0.0.1 ./webapps/

и привести её к такому виду

ClientApp.0.args=7657 192.168.1.2 ./webapps/

Где 192.168.1.2 - IP вашего сервера. После требуется перезапустить I2P, подождать пока он запустится. Если все настройки выполнены корректно, web-интерфейс I2P на сервере станет доступен по адресу http://server-ip:7657/ .

Proxy с любого IP

Файлообмен

На сегодняшний день, обмен контентом разной степени легальности - основное применение I2P. Существует ряд специализированных программ для этого, например, Robert и iMule (версия aMule для I2P).

Установка iMule

Ставим зависимости (у меня потребовалась одна):

Sudo apt-get install libcrypto++9

Скачиваем свежую версию iMule и устанавливаем её примерно так:

Dpkg -i imule_2.3.2.0-precise-amd64.deb

Запускаем, на вкладке KAD в «Инициализация» - «From URL » указываем, например, http://echelon.i2p/imule/nodes.dat , жмём Enter. Ждём, когда скачается файл. После этого не забываем ещё подождать, и можно пользоваться.

Почему-то у меня программа не каждый раз подключается к KAD, помогает закрыть её и запустить снова.

Устранение неполадок

В этом разделе будут описаны возможные проблемы с запуском и работой iMule.

    При запуске программы ничего не происходит, если запускать через терминал командой imule , отображается следующая ошибка:

imule: error while loading shared libraries: libbfd-2.22-system.so: cannot open shared object file: No such file or directory

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

sudo ln -s / usr/ lib/ libbfd-2.22.90-system.20120924.so / usr/ lib/ libbfd-2.22 -system.so

Close