Конкурс Создаём свой сайт в невидимом интернете

ghost

ghost

YW1uZXNpYQo=
Gold Team
12.05.2016
1 535
3 096
Статья для участия в конкурсе Конкурс 2018 года - авторская статья по любой тематике нашего форума!

Приветствую, друзья!

Давно я не писал статьи для форума...

Уж извините, но год был действительно сложный и насыщенным. Работа над курсом Paranoid и много ещё чего важного.

Что же, попробую хоть в конце года наверстать упущенное.

Создаём свой сайт в невидимом интернете


Позволю себе процитировать абзац из википедии, так как я нахожу это сейчас как нельзя кстати:

I2P (аббревиатура от англ. invisible internet project, IIP, I2P — проект «Невидимый интернет») — проект, начатый с целью создания анонимной компьютерной сети, работающей поверх сети интернет. Создатели проекта разработали свободное программное обеспечение (ПО), позволяющее реализовать сеть, работающую поверх сети интернет. ПО и сеть были названы «I²P» или «I2P».

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

Ведь на свет клином не сошёлся, а Интернет должен быть и будет свободным, так как изначально задумывался таким!

Собственно, сегодня мы научимся, как и сказано в названии темы, создавать свой сайт в сети i2p.

Потребуется виртуальный сервер, арендованный анонимно за крипту вне Рашки, машина с линукс на борту, свободное время и прямые руки.

Приступаем.

Установим i2p на сервер. Для теста мы использовали VPS на базе Debian.

Подключаемся к серверу по ssh (в идеале будет если вначале вы пропустите трафик через VPN):

Код:
ssh user@ip
где codeby - user, 185.86.149.69 - ip

* В моём примере -p 2282 - изменённый порт ssh. По умолчанию он 22. Если ничего не меняли в настройках, то это вам и не нужно...

Работаем под root (если же вы создали пользователя, соответственно, все команды выполняйте с использованием команды sudo вначале):

Код:
su -
Создаём свой сайт в невидимом интернете


Для начала установим пакет, который позволит принимать обновления по HTTPS, то есть по зашифрованному каналу:

Код:
apt-get install apt-transport-https
Создаём свой сайт в невидимом интернете


Добавляем репозитории i2p в систему вводом следующей команды в терминале:

Код:
wget -q -O - https://repo.i2pd.xyz/.help/add_repo | bash -s -
Создаём свой сайт в невидимом интернете


Если работаете под пользователем, соответственно это будет выглядеть как:

Код:
wget -q -O - https://repo.i2pd.xyz/.help/add_repo | sudo bash -s -
В папке /etc/apt/sources.list.d появился новый файл i2pd.list с содержимым:

Код:
deb https://repo.i2pd.xyz/debian jessie main
deb-src https://repo.i2pd.xyz/debian jessie main
Обновляем список пакетов, чтобы система приняла новые репозитории с пакетами:

Код:
apt-get update
Устанавливаем i2p в систему вводом следующей команды в терминале:

Код:
apt-get install i2pd
Добавляем в конец файла подписок /etc/i2pd/subscriptions.txt следующие строки:

Код:
inr.i2p/export/alive-hosts.txt
stats.i2p/cgi-bin/newhosts.txt
i2p-projekt.i2p/hosts.txt
i2host.i2p/cgi-bin/i2hostetag
no.i2p/export/alive-hosts.txt
rus.i2p/hosts.txt
Создаём свой сайт в невидимом интернете


Не забываем сохранить файл!

Добавляем в конец файла туннелей /etc/i2pd/tunnels.conf следующие строки:

Код:
[anon-website]
type = http
host = 127.0.0.1
port = 8080
keys = anon-website.dat
Создаём свой сайт в невидимом интернете


Не забываем сохранить файл!

Создаём папки для будущего сайта:

Код:
mkdir /var/www
mkdir /var/www/codeby
Создаём главную HTML страницу сайта и сохраняем её под именем index.html:

Код:
nano /var/www/codeby/index.html
Создаём свой сайт в невидимом интернете


* Содержимое можно найти в прикреплённом вложении.

Не забываем сохранить файл!

Создаём PHP страницу ошибки и сохраняем её под именем 404.php, что необходимо если прихожане захотят перейти на несуществующую страницу сайта:

Код:
nano /var/www/codeby/404.php
Создаём свой сайт в невидимом интернете


* Содержимое можно найти в прикреплённом вложении.

Не забываем сохранить файл!

Запускаем i2p и проверяем его статус активности. Значение active (running) говорит что служба работает как часы:

Код:
service i2pd start
service i2pd enable
service i2pd status
Создаём свой сайт в невидимом интернете


Установим лёгкий и быстрый веб-сервер lighttpd, так как у нас нагрузка на сайт будет мала, да и от решета типа апача или Nginx мы лучше сразу откажемся:

Код:
apt-get install lighttpd
Запустим и сразу выключим lighttpd, чтобы он смог создать файлы конфигурации и настроек:

Код:
service lighttpd start
service lighttpd stop
После того как это произошло, в /etc/lighttpd/lighttpd.conf изменим значения на следующие:

Код:
server.document-root = "/var/www/codeby"
server.error-handler-404 = "/404.php"
server.tag = "Nginx"
server.port = 8080
$HTTP["remoteip"] !~ "127.0.0.1" {
url.access-deny = ( "" )
}
server.dir-listing = "disable"
Создаём свой сайт в невидимом интернете


Не забываем сохранить файл!

Теперь можно снова запустить lighttpd:

Код:
service lighttpd start
Современные веб-технологии предусматривают широкое использование различных "движков" сайтов, для поддержки которых требуются PHP и MySQL.
Поэтому самое время добавить их к нашему серверу. Но у нас статика, мускул нам не нужен, поэтому просто установим пыху:

Код:
apt-get install php5-cgi
Затем в /etc/php/cgi/php.ini найдём и раскомментируем следующую строку (это значит просто убрать ; вначале строки):

Код:
cgi.fix_pathinfo=1
Создаём свой сайт в невидимом интернете


Не забываем сохранить файл!

Далее включим поддержку PHP в lighttpd:

Код:
lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php
Создаём свой сайт в невидимом интернете


Установим права на папку /var/www/codeby с будущим сайтом, чтобы мамкиным хацкерам было нечем поживиться:

Код:
chown www-data:www-data /var/www/codeby
chmod 775 /var/www/codeby
usermod -a -G www-data codeby
Создаём свой сайт в невидимом интернете


Перезапустим службы:

Код:
service i2pd restart
service lighttpd restart
Создаём свой сайт в невидимом интернете


И добавим их в автозагрузку:

Код:
update-rc.d i2pd enable
update-rc.d lighttpd enable
Через следующую команду можно посмотреть что за службы у вас включены в системе в данный момент:

Код:
netstat -tulpan
Создаём свой сайт в невидимом интернете


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

В папке /var/lib/i2pd/destinations можно найти файл вида ufydaj3de33rvcadop7lh4shsojkufpyo4yceulqm6syaawvyg5a.dat

Создаём свой сайт в невидимом интернете


Это и будет адрес будущего сайта в сети i2p. Запомните его, так как в конце настроек он нам ещё понадобится.

На стороне сервера всё настроено и работает. Теперь предстоит поработать на стороне клиента.

Установим i2p в систему. Для теста мы использовали дистрибутив Kali Linux.

Добавляем репозитории i2p в систему вводом следующей команды в терминале:

Код:
wget -q -O - https://repo.i2pd.xyz/.help/add_repo | bash -s -
Создаём свой сайт в невидимом интернете


Проверьте сами. В папке /etc/apt/sources.list.d появился новый файл i2pd.list:

Код:
deb https://repo.i2pd.xyz/kali n/a main
deb-src https://repo.i2pd.xyz/kali n/a main
Создаём свой сайт в невидимом интернете


Обновляем список пакетов, чтобы система приняла новые репозитории с пакетами:

Код:
apt-get update
Устанавливаем i2p в систему следующей командой в терминале:

Код:
apt-get install i2pd
Создаём свой сайт в невидимом интернете


Добавляем в конец файла подписок /etc/i2pd/subscriptions.txt следующие строки:

Код:
inr.i2p/export/alive-hosts.txt
stats.i2p/cgi-bin/newhosts.txt
i2p-projekt.i2p/hosts.txt
i2host.i2p/cgi-bin/i2hostetag
no.i2p/export/alive-hosts.txt
rus.i2p/hosts.txt
Создаём свой сайт в невидимом интернете


Не забываем сохранить файл!

Запускаем i2p и проверяем его статус активности. Значение active (running) говорит что служба работает как часы:

Код:
service i2pd start
service i2pd enable
service i2pd status
Создаём свой сайт в невидимом интернете


В браузере firefox в меню edit->preferences->advanced connection settings меняем значение на manual proxy configuration.
Выставляем настройки http proxy на 127.0.0.1 и port на 4444. Отмечаем SOCKS v5 и нажимаем Ok, чтобы применить полученные изменения:

Создаём свой сайт в невидимом интернете


Переходим в браузере по адресу 127.0.0.1:7070 и если попадаем на страницу i2pd webconsole, то это ещё раз говорит нам о том что i2p работает корректно:

Создаём свой сайт в невидимом интернете


Если попробуете перейти, например, на сайт разработчиков i2p, то вас ждёт разочарование.
В этой сети нет DNS и вместо них используют адресные книги. Поэтому целевой сайт нужно добавить сначала туда:

Создаём свой сайт в невидимом интернете


Создаём свой сайт в невидимом интернете


Теперь как видим всё работает. Уведомление на сайте тоже говорит об этом:

Создаём свой сайт в невидимом интернете


Добавив один раз сайт в адресную книгу, повторять это не потребуется!

Переход на свой сайт осуществляется вводом в адресную строку файла, который мы находили раньше в /var/lib/i2pd/destinations, но .dat заменяем на .b32.i2p:

Код:
ufydaj3de33rvcadop7lh4shsojkufpyo4yceulqm6syaawvyg5a.b32.i2p
Создаём свой сайт в невидимом интернете


Ссылка на сайт ufydaj3de33rvcadop7lh4shsojkufpyo4yceulqm6syaawvyg5a.b32.i2p выглядит очень нечитабельно.
Поэтому её можно сократить до удобочитаемого codeby.i2p и зарегистрировать в каталоге, представленном на скрине ниже:

Создаём свой сайт в невидимом интернете


Из i2p можно свободно выходить в обычную сеть. Использовать почту, торренты, IRC, а для параноиков - HTTPS и SSL. Однако есть пара нюансов.

Для выхода в интернет в i2p используется несколько общих шлюзов, преимущественно в Германии. Поэтому со скоростью в направлении i2p ↔ интернет немного плохо (до 5 Мбит/с). К тому же некоторые шлюзы находятся в черных списках, поэтому не все ресурсы через них можно посмотреть.

Cookies работают только при сёрфинге i2p → интернет. При попытке доступа интернет → i2p (например, через шлюз) печеньки режутся и авторизация на сайтах не проходит. Для исправления этой проблемы в firefox в меню edit->preferences->advanced connection settings меняем всё назад на use system proxy settings.

Создаём свой сайт в невидимом интернете


В заключении тормозим демон i2p на хосте:

Код:
service i2pd stop
Создаём свой сайт в невидимом интернете


Теперь все аноны, параноики, и лично Вы можете спать спокойно: наконец-то создана сеть, где никто никого и никогда не найдёт.
Однако даже I2P не гарантирует АБСОЛЮТНОЙ защиты. JavaScript, а ранее ещё и Java, Silverlight и Flash никто не отменял.
Поэтому настройте браузер должным образом...

P.S. Так же запилил видео по теме в качестве бонуса, которое поможет увидеть весь процесс наглядно. Не судите строго.


Спасибо за внимание.

Поздравляю Всех с наступающим Новым годом!

Создаём свой сайт в невидимом интернете


Успехов, достатка, здоровья, стабильного аптайма и новых знаний, обязательно подкреплённых практическими навыками.
 

Вложения

ghostphisher

ghostphisher

гарант codeby
Gold Team
07.12.2016
2 515
3 353
Отлично! i2p вместо ТОРов замыленных. ! за i2p свое будушее, так как ТОР все больше становится гламурным трендом, i2p не всем знакомо, не всем понятно, уже на старте идет хоть какой то отсев от "просто ротозеев". Годная тема!
 
Последнее редактирование:
  • Нравится
Реакции: pr0phet, ghost и algopolon
A

algopolon

Well-known member
15.10.2018
57
15
Хорошая статья. Если честно, даже никогда не запускал I2P. Как правильно заметили выше, тор уже везде, а об этом протоколе особо никто и не знает.
п.с. прочитал о i2p статьи: вроде достаточно надежный, если не выходить в клирнет из него.
 
  • Нравится
Реакции: ghost
ghost

ghost

YW1uZXNpYQo=
Gold Team
12.05.2016
1 535
3 096
Это вторая реализация i2p, так называемая "purple i2p" и написана на C++
Первая же реализация была гораздо раньше, написана на Java и раз в 5-20 медленнее.
Хорошая статья. Если честно, даже никогда не запускал I2P. Как правильно заметили выше, тор уже везде, а об этом протоколе особо никто и не знает.
п.с. прочитал о i2p статьи: вроде достаточно надежный, если не выходить в клирнет из него.
Действительно надёжная сеть. Даже если в ней останется 3 пользователя, она всё равно будет работать.
Но если совсем интернет пропал - поднимайте свою сеть. И вам поможет Project Byzantium
 
  • Нравится
Реакции: turb0suslik и algopolon
E

eme

Member
04.07.2018
7
3
Спасибо, а нет возможности написать про грамотную установку сайта в Тор сети? С защитой от утечек IP сервера, скана портов и т.д.?
 
ghost

ghost

YW1uZXNpYQo=
Gold Team
12.05.2016
1 535
3 096
Спасибо, а нет возможности написать про грамотную установку сайта в Тор сети? С защитой от утечек IP сервера, скана портов и т.д.?
Воспользуйтесь поиском по моим темам. Ранее я рассматривал этот вопрос.
 
System32

System32

Well-known member
07.12.2018
111
40
То что нужно "Молодец".
То что нужно в наше время. Давно искал такой годный мануал.

Также вкратце про I2P можете посмотреть это.
 
System32

System32

Well-known member
07.12.2018
111
40
Кстати много размышлял на счет форума в i2p но незнаю стоит или нет. Может проще блог CTF поднять.
И зарегатся в социальных сетях Анонусов в i2p . У них там есть очень годные соц сети с приватной инфой. которую тут точно в общедоступном фиг найдешь. !!! Сделаю как приглашу кто захочет !!!!
 
  • Нравится
Реакции: Stai
Мы в соцсетях:  ТелеграмВконтактеДзенФейсбукТвиттерЮтуб