![](/books_files/covers/thumbs_150/anonimnost-i-bezopasnost-v-internete-ot-chaynika-k-polzovatelyu-82560.jpg)
Автор книги: Денис Колисниченко
Жанр: Интернет, Компьютеры
Возрастные ограничения: +12
сообщить о неприемлемом содержимом
Текущая страница: 4 (всего у книги 15 страниц) [доступный отрывок для чтения: 4 страниц]
Глава 3. Сеть I2P – альтернатива Tor
3.1. Что такое I2P?В главе 2 мы познакомились с распределенной сетью Tor, позволяющей зашифровать и анонимизировать трафик. Здесь будет рассмотрен другой проект анонимизации – I2P (Invisible Internet Project, проект «Невидимый Интернет»). I2P – это так называемая оверлейная сеть, то есть работающая поверх обычного Интернета. Получается, что I2P – как бы сеть над сетью.
Сеть I2P обеспечивает функционирование внутри себя многих сетевых служб: сайтов (технология eepsite), почты, систем мгновенного обмена сообщениями и даже торрент-трекеров (BitTorrent, EDonkey, Kad, Gnutella и др.). А для последних I2P – просто рай, до сих пор не понимаю, почему все торрент-трекеры не перекочевали еще в I2P. Скорее всего потому, что многие пользователи не знают об I2P и не понимают, как в ней работать. Вот сейчас этот пробел в ваших знаниях мы и восполним, а уж использовать I2P или нет – решайте сами.
Итак, чем же I2P полезна обычным пользователям? Начнем с торрент-трекеров. Загружая фильм (программу, музыкальную композицию и т. п.) с торрент-трекера (не говоря уже о раздаче этого контента), вы нарушаете законодательство об авторских правах. А во время загрузки (раздачи) контента через торрент-трекер ваш IP-адрес виден всем. Теоретически при самом неблагоприятном для вас раскладе правоохранительные органы могут нанести вам очень неприятный визит.
Однако при работе в I2P такого не произойдет никогда, поскольку ваш IP-адрес будет зашифрован, а маршрутизация осуществляется по так называемым туннелям. Другими словами, доказать, что это именно вы скачали там-то и там-то фильм – практически невозможно. Конечно, нельзя утверждать, что невозможно вовсе. При особом желании доказать можно, но для этого придется потратить столько времени, средств и других ресурсов, что окажется проще снять другой фильм, чем доказывать, что вы скачали данный с трекера (а, сами понимаете, вы не один такой пользователь).
В сети I2P любой желающий может создать собственный сайт, причем абсолютно бесплатно, – не придется платить ни за регистрацию имени, ни за доменное имя вида name.i2p. А хостинг можно развернуть на своем компьютере, установив связку Apache + PHP + MySQL (если вы не понимаете, как это сделать, достаточно установить XAMPP[2]2
XAMPP – кроссплатформенная сборка веб-сервера, содержащая Apache, MySQL, интерпретатор скриптов PHP, язык программирования Perl и большое количество дополнительных библиотек, позволяющих запустить полноценный веб-сервер.
[Закрыть] – благодаря этому продукту данная связка устанавливается очень легко). Сайты внутри I2P-сети скрытые – то есть, чтобы выяснить, на каком именно компьютере «лежит» тот или иной сайт, нужно опять-таки потратить массу ресурсов.
Скрытый сайт можно создать и в сети Tor, однако там вместо удобного имени вида name.i2p будет сгенерирован длиннющий хэш, который вам придется хранить в отдельном текстовом файле, – запомнить вы его не сможете.
Кроме скрытых сайтов и анонимных торрентов, в I2P работает анонимная почта, можно также организовать анонимное общение через популярные клиенты мгновенного обмена сообщениями и даже настроить Skype для работы через I2P. Мы уже отмечали ранее, что Skype использует проприетарные и очень сложные алгоритмы шифрования. Поддерживают они прослушку или нет – известно одним разработчикам Skype (в последнее время появляется все больше слухов, что прослушка разговоров в Skype возможна). Когда же вы отправляете Skype-трафик через I2P (или через Tor, как было показано в главе 2), прежде, чем добраться до разговора в Skype, желающим прослушать ваши разговоры придется вскрыть несколько слоев шифрования в I2P. Таким образом, использование I2P (или Tor) значительно усложняет задачу прослушки.
Еще два бонуса, предоставляемых сетью I2P обычным пользователям, заключаются в поддержке русского языка, а также кроссплатформенности – поскольку для создания программного обеспечения I2P использовался язык Java, то ПО для I2P можно запускать как в Windows, так и в Linux, Mac OS, Solaris и прочих операционных системах.
А теперь ложка дегтя – о недостатках I2P. Нет ничего идеального, и I2P – тоже не идеальна. Начнем с самой концепции I2P. Анонимизация и шифрование трафика происходит лишь внутри этой сети. Работая с I2P, вы можете обратиться только к I2P-ресурсам (к I2P-сайтам, почте, трекерам и т. д.). Если вы обращаетесь к ресурсу, не принадлежащему к I2P, защита не обеспечивается. С той же Tor все намного удобнее, поскольку вы можете обращаться к любым ресурсам Интернета, и при этом трафик будет анонимизирован и защищен.
Это и есть основной недостаток I2P. Но существуют еще два отрицательных момента, о которых вы также должны знать. Прежде всего, в I2P-сети очень мало русских ресурсов. Больше она популярна в Германии – немецких ресурсов и англоязычных сайтов в I2P очень много, а вот русскоязычных – единицы. Будет ли вам интересна I2P, зависит от владения английским и немецким языками и, разумеется, от информации, которую вы хотите найти в I2P.
Еще один недостаток – это существенные потоки трафика, проходящие через ваш компьютер. Если в Tor вы могли работать только в качестве клиента, то в сети I2P через ваш компьютер передается трафик других I2P-пользователей. Трафик зашифрован, тут особо беспокоиться не о чем, но если ваш интернет-тариф учитывает объем трафика, то I2P вам вряд ли подойдет, поскольку вы будете вынуждены платить и за свой трафик, и за трафик других пользователей, проходящий через ваш компьютер. Вы можете зайти в I2P, часик посидеть почитать какие-либо сайты, а за это время через ваш компьютер будет пропущено несколько гигабайтов трафика.
Весь трафик в сети I2P, в отличие от Tor, шифруется от отправителя к получателю. В общей сложности используются четыре уровня шифрования (сквозное, «чесночное», туннельное и шифрование транспортного уровня). Перед шифрованием I2P добавляет в отправляемый пакет случайное количество произвольных байтов, чтобы еще больше затруднить попытки анализа содержимого пакета и его блокировки.
В качестве адресов сети применяются криптографические идентификаторы (открытые криптографические ключи), не имеющие никакой логической связи с реальным компьютером. В сети I2P нигде не используются IP-адреса, поэтому определить настоящий IP-адрес узла, и, следовательно, установить его местонахождение, невозможно.
Каждое сетевое приложение, работающее через I2P, строит для себя анонимные зашифрованные туннели – обычно одностороннего типа, когда исходящий трафик идет через одни туннели, а входящий – через другие. Выяснить, какое приложение создало тот или иной туннель, – тоже невозможно (точнее, очень сложно, поэтому будем считать, что таки практически невозможно).
Все пакеты, передаваемые по сети, могут расходиться по разным туннелям, что делает бессмысленной попытку перехвата (прослушки) данных. И в самом деле – поскольку данные передаются по разным туннелям, проанализировать поток данных даже с помощью сниффера[3]3
Сниффер – анализатор трафика, программа или программно-аппаратное устройство, предназначенное для перехвата и последующего анализа либо только анализа сетевого трафика.
[Закрыть] не получится. Каждые 10 минут происходит смена уже созданных туннелей на новые с новыми цифровыми подписями и ключами шифрования (у каждого туннеля свой ключ шифрования и своя цифровая подпись).
Вам не нужно беспокоиться, чтобы прикладные программы обеспечивали шифрование трафика. Если существует недоверие к программам, имеющим закрытый исходный код (взять тот же Skype), можно или попытаться заставить эти программы работать через I2P, или поискать альтернативные программы с открытым кодом. Так, вместо Skype можно использовать Ekiga – простую программу для IP-телефонии. Правда, она не умеет шифровать данные (они передаются в открытом виде), но о шифровании позаботится I2P. Конечно, ваш собеседник тоже должен использовать I2P, иначе толку от всех этих мероприятий (настройки Skype для работы через I2P или установки и использования Ekiga) не будет.
Шифрование и дешифрование пакетов осуществляются соответственно на стороне отправителя (шифрование) и на стороне получателя (расшифровка). В отличие от Tor, никто из промежуточных участников обмена не может перехватить зашифрованные данные, и никто из участников не знает, кто на самом деле является отправителем, а кто получателем, поскольку передающий пакеты узел может быть как отправителем, так и промежуточным узлом.
Промежуточный узел не может узнать конечные точки (кто отправил пакеты, и куда они следуют), так же он не может определить, что случилось с только что переданным следующему узлу пакетом: принял его себе (то есть следующий узел является получателем) или передал следующему узлу.
В I2P используются следующие методы (алгоритмы) шифрования:
✓ AES (256 битов);
✓ схема Эль-Гамаля (2048 битов);
✓ алгоритм Диффи – Хеллмана (2048 битов);
✓ DSA (1024 бита);
✓ HMAC (256 битов);
✓ SHA256 (256 битов).
Все очень и очень просто. Принцип работы I2P с точки зрения неискушенного пользователя такой же, как и в случае с Tor. Вы устанавливаете I2P на свой компьютер, изменяете, если сочтете нужным, настройки по умолчанию (хотя в 99 % случаев этого делать не придется, поскольку I2P – это программа, работающая «из коробки», то есть не требующая настройки) и настраиваете свои сетевые программы – в их настройках следует указать использование прокси-сервера с IP-адресом 127.0.0.1 (порт 4444). Аналогичные действия мы проделывали при настройке сетевых программ на использование прокси-сервера Tor (только номер порта был другим).
После этого вы можете заходить на I2P-сайты сети, например, на http://i2p2.i2p – это официальный сайт проекта I2P.
По трафику, отправляемому вашим компьютером в Интернет, очень сложно понять, что от вас исходит – то ли это ваш трафик, то ли это транзитный трафик других клиентов I2P-сети. Другими словами, доказать причастность кого-либо к конкретной сетевой активности весьма тяжело.
В главе 2 мы познакомились с распределенной сетью Tor. Здесь рассматривается подобный проект – I2P. Так что же лучше: Tor или I2P? Такой вопрос рано или поздно задаст любой пользователь, поработавший хотя бы раз с Tor или I2P. Спешу вас разочаровать, сравнивать I2P и Tor нельзя – это все равно, что сравнивать апельсины с яблоками. Кому-то нравятся апельсины, а кому-то – яблоки. Из яблок не получится апельсиновый сок, и наоборот. Каждая из сетей призвана решать свои задачи, поэтому выбирать между I2P и Tor нужно, исходя из поставленных задач.
Сеть I2P – это изолированная, закрытая сеть без выхода во "внешний" Интернет. И пусть в I2P имеется "прокси", позволяющий выйти в Интернет, но это особо не влияет на функционирование сети I2P в целом. I2P не предназначена для обычного серфинга в открытом Интернете. I2P идеальна для анонимного и безопасного обмена файлами, анонимного общения, анонимного хостинга сайтов внутри I2P-сети.
Концепция Tor несколько иная. Изначально Tor разрабатывалась для работы с открытым Интернетом. С ее помощью, как было показано в главе 2, можно легко посещать заблокированные сайты, анонимно посещать обычные сайты и т. п.
Давайте подытожим:
✓ вам нужно анонимное общение (например, по Skype или ICQ)? Тогда лучше воспользоваться I2P. При этом человек, с которым вы собираетесь общаться, тоже должен использовать I2P;
✓ если же вам нужно анонимно посетить тот или иной сайт или же посетить сайт, заблокированный «злым» администратором, тогда следует воспользоваться Tor. Использование Tor можно сравнить с маскировкой, а вот I2P является своеобразным подпольем мировой Сети.
Что же касается преимуществ и недостатков, то они есть у каждой сети, но перечислять мы их не будем, поскольку эти недостатки незначительны, и при использовании той или иной сети по назначению вы о них даже и не вспомните.
3.2. Установка ПО I2PПрограммное обеспечение для работы с I2P написано на Java, а поэтому, если на вашем компьютере не установлена виртуальная машина Java, самое время ее установить.
Просмотрите список установленных программ, если вы не найдете среди них Java(TM) 6 Update NN (NN – версия обновления), вам следует загрузить и установить Java самостоятельно.
Примечание
На моем компьютере виртуальная машина Java уже была установлена, что легко проверить с помощью панели управления (рис. 3.1).
Для загрузки виртуальной машины Java перейдите по адресу http://java.com/ru/ и нажмите большую красную кнопку Скачать Java бесплатно. Далее следуйте инструкциям загруженного инсталлятора – ничего сложного в установке Java-машины нет. После установки не забудьте перезагрузить компьютер – это особенность любой версии Windows (когда вместо перезагрузки одного какого-то компонента системы нужно перезагружать весь компьютер).
![](i_034.jpg)
Рис. 3.1. Виртуальная машина Java установлена
После установки Java-машины перейдите на сайт http://www.i2p2.de/download_ru и скачайте графический инсталлятор – программу i2pinstall_x.x.x.exe (x.x.x – номер версии, на момент написания этих строк – 0.8.8).
В процессе установки I2P нет ничего сложного. Первым делом надо выбрать язык (рис. 3.2), а затем нажать кнопку Далее (рис. 3.3).
![](i_035.jpg)
Рис. 3.2. Выбор языка I2P
![](i_036.jpg)
Рис. 3.3. Нажмите кнопку Далее
Вы можете запускать I2P вручную, а можете установить как службу Windows. В этом случае шлюз I2P будет запускаться автоматически при запуске системы. Для установки шлюза I2P как Windows-сервиса не снимайте флажок Windows Service (рис. 3.4).
![](i_037.jpg)
Рис. 3.4. Установка I2P как службы Windows
Теперь нужно указать каталог установки (рис. 3.5), после чего начнется установка программы (рис. 3.6). Во время установки и после нее ваш брандмауэр должен пожаловаться, что приложение java.exe (виртуальная машина Java) пытается принять входящее соединение. Разрешите работу java.exe – все нормально, сервис I2P начинает свою работу.
![](i_038.jpg)
Рис. 3.5. Каталог для установки I2P
После установки программы запустите программу services.msc и убедитесь, что служба I2P Service установлена и работает (рис. 3.7).
![](i_039.jpg)
Рис. 3.6. Установка программы
![](i_040.jpg)
Рис. 3.7. Служба I2P Service установлена и работает
Установив I2P, займемся настройкой браузера и других сетевых программ на использование шлюза I2P. Делается это аналогично указанию анонимного прокси-сервера – весь этот процесс для каждого браузера был подробно описан в главе 1. В качестве имени прокси-сервера следует указать localhost, номер порта – 4444.
Например, в Opera для указания прокси-сервера надо выполнить команду меню Opera | Настройки | Общие настройки. В открывшемся окне перейдите на вкладку Расширенные, затем – в раздел Сеть (рис. 3.8). Нажмите кнопку Прокси-серверы. Откроется окно, в котором и нужно указать имя прокси-сервера и его порт (рис. 3.9).
![](i_041.jpg)
Рис. 3.8. Окно настроек браузера Opera
![](i_042.jpg)
Рис. 3.9. Параметры прокси-сервера
Теперь можно попробовать зайти на основную страницу проекта: http://i2p2.i2p.
Возможно, брандмауэр опять пресечет попытку доступа к сетевым ресурсам (рис. 3.10), но на сей раз он заблокирует программу i2p.exe (во всяком случае мой Comodo спросил, что с ней делать: разрешить или запретить доступ к сети). Если собираетесь работать – нажмите кнопку Разрешить.
Можно также посетить следующие i2p-сайты:
✓ http://forum.i2p;
✓ http://rus.i2p.
Само собой разумеется, все эти сайты будут доступными только в браузере, настроенном на I2P (рис. 3.11).
![](i_043.jpg)
Рис. 3.10. Предупреждение брандмауэра
![](i_044.jpg)
Рис. 3.11. Форум forum.i2p
3.3. Решение проблем
Данное сообщение может появиться, если вы сразу же после установки I2P попытаетесь обратиться к I2P-ресурсам. Дело в том, что ваш шлюз еще не успел подключиться к I2P-сети. Просто подождите несколько минут, затем повторите попытку. В моем случае прошло минут десять, прежде чем шлюз стал работать как следует. Можете пока в это время побродить по сайтам из другого браузера.
Не нравится скорость работы I2P? Тогда откройте браузер и введите следующий интернет-адрес: http://127.0.0.1:7657/.
Откроется консоль маршрутизатора I2P (рис. 3.12). Интерфейс консоли – русский (правда, чтобы он таким стал, нужно нажать на значок флага РФ), что существенно упрощает процесс освоения консоли.
![](i_045.jpg)
Рис. 3.12. Консоль управления маршрутизатором I2P
![](i_046.jpg)
Рис. 3.13. Настройки I2P
Нажмите на ссылку НАСТРОЙКИ I2P. На открывшейся странице можно изменить ограничение скорости. По умолчанию задано всего лишь 96 Кбайт/с на прием и 40 Кбайт/с на отдачу (рис. 3.13). Установите новые лимиты и нажмите кнопку Сохранить настройки.
Вы увидите такое сообщение, если сайт, который вы хотите посетить, не добавлен в адресную книгу вашего I2P-маршрутизатора. Находясь в консоли маршрутизатора (см. рис. 3.12), перейдите по ссылке Адресная книга. На открывшейся странице выберите тип адресной книги: либо основная (чтобы добавить запись в свою основную адресную книгу), либо маршрутизатор (чтобы добавить запись в адресную книгу маршрутизатора). На рис. 3.14 изображена адресная книга маршрутизатора.
![](i_047.jpg)
Рис. 3.14. Адресная книга маршрутизатора
![](i_048.jpg)
Рис. 3.15. Добавление нового адреса
Под последней записью вы найдете форму добавления нового адреса (рис. 3.15). Введите имя сайта, например name.i2p, и его Base-64 адрес. Адрес сайта можно найти или на любых других I2P-сайтах, или в Интернете (с помощью Google). С некоторыми полезными ресурсами вы можете познакомиться на следующей страничке: http://korot97.blogspot.com/2011/06/i2p.html.
Иногда бывает намного проще просто обновить файл hosts.txt, скачать последнюю версию которого можно по адресу http://www.i2p2.i2p/hosts.txt.[4]4
На своем сайте по адресу: http://www.dkws.org.ua/i2p/original.hosts.txt я разместил оригинальный файл hosts.txt, скачанный с http://www.i2p2.i2p/hosts.txt.
[Закрыть] После загрузки файл hosts.txt следует поместить в каталог установки I2P (по умолчанию это каталог c: Program Filesi2p).
Совет
Помните, что файл hosts.txt нужно время от времени обновлять, иначе новые сайты (которые появятся в I2P-сети после установки I2P на ваш компьютер) не будут вам доступны.
Если у вас не открывается даже сайт www.i2p2.i2p (основной сайт проекта), добавьте в ваш файл hosts.txt следующий фрагмент (листинг 3.1). Весь код нужно поместить в одну строчку. После этого немного подождите и обновите страничку в браузере. Ничего перезагружать не нужно (ни службу I2P, ни компьютер). На рис. 3.16 изображена главная страница сайта www.i2p2.i2p.
![](i_049.png)
![](i_050.jpg)
Рис. 3.16. Основная страница www.i2p2.i2p
Понимаю, что перепечатывать весь этот код из книги сложно, поэтому вы можете скачать мою версию файла hosts.txt, где уже добавлен фрагмент из листинга 3.1, по следующему адресу: http://www.dkws.org.ua/i2p/hosts.txt.
Зеркало сайта www.i2p2.i2p вы также можете найти в «обычном» Интернете по адресу: http://www.i2p2.de.
Из истории вопроса
Вообще-то, идея с файлом hosts.txt стара как мир. В любой сетевой операционной системе имеется файл hosts. В Windows он находится в каталоге c: WindowsSystem32driversetc, в UNIX-системах – в каталоге /etc. Раньше в него записывались имена и IP-адреса узлов всего Интернета. То есть этот файл использовался для разрешения доменных имен (например, www.dkws.org.ua) в IP-адреса и обратно.
Когда узлов в Интернете было мало, обслуживать файл hosts не составляло труда. Скажем, раз в месяц в этот файл добавлялся новый узел, и каждый администратор знал, что нужно скачать с главного сервера этот файл и заменить им свою копию hosts.
Но с ростом числа узлов файлы hosts оказались неэффективными: каждый день появляются тысячи новых узлов, а на данный момент (по информации с сайта ISC.org) их насчитывается 849 869 781. Для сравнения: в 1981 году было 213 узлов, а в 1982 – 215. То есть за один год прирост составил всего 2 узла. В 1983 году насчитывалось 562 узла, в 1984–1024. Обслуживать файлы hosts с таким небольшим количеством записей было несложно.
Но количество узлов в Сети росло в геометрической прогрессии. В 1987 году количество компьютеров, подключенных к Интернету, превысило 28 000. После этого стала активно использоваться система доменных имен (DNS, Domain Name System), хотя она была разработана еще в 1984 году, но до 1987 года по понятным причинам активно не использовалась.
Сравним, если с 1981 года по 1982 прибавилось всего 2 узла, то за полгода, с января по июль 2011 года, прибавилось 31 495 512 узлов. Согласитесь, обслуживать такой огромный файл hosts не очень удобно, да и с учетом нынешнего развития Интернета его бы пришлось копировать каждые пять минут.
Использование сетью I2P такой древней (не побоюсь этого слова) концепции говорит о том, что пока сама сеть недостаточно развита, и в ней насчитывается сравнительно мало узлов. Позже в этой сети должно появиться какое-то подобие DNS, конечно, при условии, что сеть будет развиваться.
Какие еще сайты посетить? Откройте адресную книгу маршрутизатора. В ней по умолчанию будет 330 записей. Попробуйте посетить эти сайты. На некоторое время вам будет вполне достаточно, а остальные ресурсы вы найдете по мере знакомства с сетью I2P.
Внимание! Это не конец книги.
Если начало книги вам понравилось, то полную версию можно приобрести у нашего партнёра - распространителя легального контента. Поддержите автора!Правообладателям!
Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.Читателям!
Оплатили, но не знаете что делать дальше?