Задний ход в DarkWeb: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показано 77 промежуточных версий 2 участников)
Строка 1: Строка 1:
Для хождения с собственного линукса по сайтам в зоне <code>.onion</code> и прочим, напрямую недоступным, достаточно настроить несколько утилит.
=Введение=
Для хождения с собственного линукса по сайтам в зонах <code>.i2p</code>, <code>.onion</code> и прочим, напрямую недоступным, достаточно настроить несколько утилит. Приготовим остренького — макарошки с чесноком и луком:
*макарошки — «запутывающий» (obfuscating) прокси <code>obfs4</code>, без которого теперь не работает...
*лук — прокси <code>TORsocks</code> (The Onion Router) как добавка к «луковому» маршрутизатору;
*чеснок же — самостоятельный демон для протокола «невидимого» интернета <code>i2pd</code> (Invisible Internet Protocol daemon) с «чесночным» (garlic) построением маршрутов.
И завернём всё это в лаваш-плагин для браузера — вот вам и хрестоматийный «пирожок с вермишелью».
 
=«Невидимый» интернет=
Установить и запустить <code>i2pd</code>:
<source lang="bash">
# apt-get install -y i2pd
# systemctl enable --now i2pd
</source>
По адресу <code>http://localhost:7070/</code> через браузер (хоть текстовый) доступны такие плюшки как:
*проверка работоспособности демона;
*наблюдение за его процессами-туннелями-транспортами;
*смена некоторых настроек (например, понятный язык для веб-консоли) на время сессии (навсегда — через конфиг);
*остановка-перезапуск...
и прочие.
{{Памятка|в дистрибутиве старая версия <code>2.38.0-alt1</code>; в Сизифе новая <code>2.41.0-alt1</code>, но со старыми юнитами-конфигами — на момент правки статьи лучше пересобрать пакет <code>i2pd-2.41.0-alt2.src.rpm</code> из приложения № 10772 к отчёту в багзилле № 42746.}}
{{Внимание|с прошлого года эту технологию блокируют по ТСПУ, работоспособность не гарантирована.}}


Приготовим остренького: макарошки (запутывающий прокси) с луком (прокси TOR — The Onion Router, «Луковый» прокси) и чесноком (i2pd — Invisible Internet Protocol daemon, с «чесночной» структурой хостов).
=«Луковый» прокси=
=«Луковый» прокси=
#Установить пакеты:
#Установить пакеты:
Строка 7: Строка 26:
#:*<code>obfs4</code> ''(«путаник», добавляющий тору способы миновать РКНовские блокировки по «мостикам»)'' и
#:*<code>obfs4</code> ''(«путаник», добавляющий тору способы миновать РКНовские блокировки по «мостикам»)'' и
#:*<code>lsof</code> ''(для проверки результата)''.
#:*<code>lsof</code> ''(для проверки результата)''.
#Добавить в конфиг тора <code>/etc/tor/torrc</code> опцию, включающую предоставленные пакетом <code>obfs4</code> настройки со списком мостов.
#Добавить в конфиг тора <code>/etc/tor/torrc</code> опцию, включающую предоставленные пакетом <code>obfs4</code> настройки со списком мостов (об их обновлении см. ниже).
#После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту.
#После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту.
Суммарно выглядит примерно так:
{|class="mw-collapsible mw-collapsed wikitable"
<source lang="bash">
!Суммарно выглядит примерно так... &nbsp;
|-
|<source lang="ini">
# apt-get update && apt-get install -y torsocks obfs4 lsof
# apt-get update && apt-get install -y torsocks obfs4 lsof
# echo "%include /etc/tor/obfs4.torrc" >>/etc/tor/torrc
# echo "%include /etc/tor/obfs4.torrc" >>/etc/tor/torrc
Строка 19: Строка 40:
tor    2778 _tor    6u  IPv4  27181      0t0  TCP 127.0.0.1:9050 (LISTEN)
tor    2778 _tor    6u  IPv4  27181      0t0  TCP 127.0.0.1:9050 (LISTEN)
</source>
</source>
=«Невидимый» интернет=
|}
Установить и запустить i2pd:
==Обновление мостов для обфускатора==
<source lang="bash">
Скачать свежий [https://github.com/ValdikSS/tor-relay-scanner/releases обновлятор] мостиков (например, в <code>/etc/tor/</code>) и сделать короткий симлинк:<pre># ln -s tor-relay-scanner-0.0.9.pyz tor-relay-scanner</pre>
# apt-get install -y i2pd
 
# systemctl enable --now i2pd
Создать скриптец для их обновления с последующим подсовыванием тору, например:
{|class="mw-collapsible mw-collapsed wikitable"
!/usr/local/sbin/obfuscator &nbsp;
|-
|<source lang=bash>
#!/bin/sh
 
WD=/etc/tor
LIST=obfsbridges.conf
CONF=$WD/conf.d/$LIST
 
cat $CONF >$WD/$LIST # бэкап конфига на случай неполучения нового списка.
python3 $WD/tor-relay-scanner --torrc -o $CONF
 
[ `wc -l $CONF | awk '{print $1}'` -gt 0 ] && {
    sed -i /UseBridges/d $CONF
    serv tor reload
} || cat $WD/$LIST >$CONF
</source>
|}
И юнит для его периодического запуска, например:
{|class="mw-collapsible mw-collapsed wikitable"
!/lib/systemd/system/obfuscator.service &nbsp;
|-
|<source lang=ini>
[Unit]
Description = Update tor obfs4 bridges list
 
[Service]
ExecStart = /usr/local/sbin/%N
 
[Install]
WantedBy = doit@daily.target
</source>
</source>
|}
Последняя строчка задаёт периодичность обновления (как задействовать таймеры вместо кронтабов для служб такого рода, описано [[Таймеры systemd вместо crond|здесь]]). Сам на невыключающихся компах и серверах обновляю ежесуточно, а на командировочно-отпускном лапте — ежечасно (doit@hourly), хотя следовало бы переделать на момент загрузки системы.
Остаётся лишь оный обновлятор включить:<pre># systemctl enable obfuscator</pre>
=Браузерный плагин=
=Браузерный плагин=
Сам использовал <strong>FoxyProxy</strong> (для [https://chrome.google.com/webstore/detail/foxyproxy-standard/gcknhkkoolaabfmlnjonogaaifnjlfnp хрома] и ЯБ или [https://addons.mozilla.org/ru/firefox/addon/foxyproxy-standard/ огнелиса]) и <strong>SwitchyOmega</strong>, настройку коего и опишу.
Сам использовал <strong>FoxyProxy</strong> (для [https://chrome.google.com/webstore/detail/foxyproxy-standard/gcknhkkoolaabfmlnjonogaaifnjlfnp хрома] и ЯБ или [https://addons.mozilla.org/ru/firefox/addon/foxyproxy-standard/ огнелиса]) и <strong>SwitchyOmega</strong>, настройку коего и опишу.
#Добавить в браузер соответствующий плагин для [https://chrome.google.com/webstore/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif хрома/ЯБ] или [https://addons.mozilla.org/ru/firefox/addon/switchyomega/ огнелиса].
#Добавить в браузер соответствующий плагин для [https://chrome.google.com/webstore/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif хрома/ЯБ] или [https://addons.mozilla.org/ru/firefox/addon/switchyomega/ огнелиса].
#Указать в качестве прокси настроенный выше тор (протокол &mdash; <strong>SOCKS5</strong>, сервер &mdash; <strong>localhost</strong>, порт &mdash; <strong>9050</strong>):
#В меню плагина [[Файл:Icon.png|Значок]] выбрать пункт автопереключения [[Файл:AutoProxy.png|Меню]]
#Создать профиль '''i2p''' для сайтов в одноимённой зоне (протокол: <strong>HTTP</strong>, сервер: <strong>localhost</strong>, порт: <strong>4447</strong> — не проиллюстрировано, делать по аналогии со следующим пунктом).
#Второй профиль '''proxy''' — для .onion и прочих труднодоступных сайтов (протокол: <strong>SOCKS5</strong>, сервер: <strong>localhost</strong>, порт: <strong>9050</strong>):
#:[[Файл:TorProxy.png|Настройка прокси]]
#:[[Файл:TorProxy.png|Настройка прокси]]
#:К слову, таких проксей можно наплодить для выхода на некоторые ресурсы через другие.
#Задать для доступа к сайтам <code>.i2p</code> одноимённый профиль, а к сайтам <code>.onion</code> и прочим недоступным — тор-прокси, по мере надобности пополняя список другими блокируемыми сайтами:
#Помимо <code>.onion</code>, накидать ещё недоступных напрямую доменов, по мере надобности пополняя список другими блокируемыми сайтами:
#:[[Файл:SiteList.png|Список сайтов]]
#:[[Файл:SiteList.png|Список сайтов]]
#:В режиме редактирования исходного кода (можно попросту скопипастить) выглядит так:
{|class="mw-collapsible mw-collapsed wikitable"
#:<source lang="bash">
!Список в режиме редактирования исходного кода (можно попросту скопипастить): &nbsp;
|-
|<source lang="bash">
[SwitchyOmega Conditions]
[SwitchyOmega Conditions]
@with result
@with result


*.i2p +i2p
*.i2p +i2p
*.bookafan.website +proxy
*.btmet.com +proxy
*.byxatab.* +proxy
*.canva.com +proxy
*.dell.com +proxy
*.epicgames.com +proxy
*.facebook.com +proxy
*.freegogpcgames.com +proxy
*.gfi.com +proxy
*.instagram.com +proxy
*.kritka.info +proxy
*.kyiv.ua +proxy
*.linkedin.com +proxy
*.nitroflare.com +proxy
*.onion +proxy
*.rutracker.* +proxy
*.santehnika1.ru +proxy
*.semyanich.com +proxy
*.terraform.io +proxy
*.torgamez.com +proxy
*.torproject.org +proxy
*.ubi.com +proxy
*.underver.se +proxy
*.vonos.net +proxy
*.weebly.com +proxy
*baza-knig.ru +proxy
*baza-knig.ru +proxy
*.bookafan.website +proxy
*bookzip.ru +proxy
*bookzip.ru +proxy
*.btmet.com +proxy
*citilink.ru +proxy
*citilink.ru +proxy
*fantasy-worlds.org +proxy
*fantasy-worlds.org +proxy
Строка 52: Строка 136:
*kinosvit.tv +proxy
*kinosvit.tv +proxy
*kinotazz.ru +proxy
*kinotazz.ru +proxy
*.kritka.info +proxy
*loveread.* +proxy
*.linkedin.com +proxy
*loveread.ec +proxy
*mechanics-games.* +proxy
*mechanics-games.* +proxy
*nnmclub.to +proxy
*nnmclub.to +proxy
*.onion +proxy
*onion.live +proxy
*onion.live +proxy
*otxataba.net +proxy
*piratam.net +proxy
*piratam.net +proxy
*rg-mechanics.* +proxy
*rg-mechanics.* +proxy
*rgmechanics.* +proxy
*rgmechanics.* +proxy
*rutor* +proxy
*rutor* +proxy
*.santehnika1.ru +proxy
*seasonvar.ru +proxy
*seasonvar.ru +proxy
*.semyanich.com +proxy
*serialytut.me +proxy
*serialytut.me +proxy
*skidrowcpy.com +proxy
*skidrowcpy.com +proxy
*.torgamez.com +proxy
*steampowered.com +proxy
*torlock.cc +proxy
*torlock.cc +proxy
*.torproject.org +proxy
*torrent* +proxy
*torrent* +proxy
*tracker.* +proxy
*tracker.* +proxy
*.underver.se +proxy
*twitter.com +proxy
*.vonos.net +proxy
*weebly.com +proxy
*weebly.com +proxy
*xatab-repack* +proxy
*xatab-repack* +proxy
*zenmoney.ru +proxy


* +direct</source>
* +direct</source>
#В меню плагина [[Файл:Icon.png|Значок]] выбрать пункт автопереключения [[Файл:AutoProxy.png|Меню]]
|}
==Подборки ресурсов==
*[https://darkweblinks.com/ '''«луковых»'''] (TOR)
*[https://rottenswamp.ru/index.php/novosti/121-i2p/209-sajty-i2p-resursy-i2p '''«чесночных»'''] (I2P)


==Побродить по «луковым» ресурсам можно [https://darkweblinks.com/ '''отсюда'''].==
=Обратная связь=
*[https://t.me/gbIMoBou @gbIMoBou]
*[[Участник:Дым#Заметки|Другие статьи]]
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}
[[Категория:Admin]]
[[Категория:Admin]]
[[Категория:Прокси]]
[[Категория:Прокси]]
[[Категория:The Onion Router]]
[[Категория:The Onion Router]]

Текущая версия от 04:49, 17 октября 2023

Введение

Для хождения с собственного линукса по сайтам в зонах .i2p, .onion и прочим, напрямую недоступным, достаточно настроить несколько утилит. Приготовим остренького — макарошки с чесноком и луком:

  • макарошки — «запутывающий» (obfuscating) прокси obfs4, без которого теперь не работает...
  • лук — прокси TORsocks (The Onion Router) как добавка к «луковому» маршрутизатору;
  • чеснок же — самостоятельный демон для протокола «невидимого» интернета i2pd (Invisible Internet Protocol daemon) с «чесночным» (garlic) построением маршрутов.

И завернём всё это в лаваш-плагин для браузера — вот вам и хрестоматийный «пирожок с вермишелью».

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

Установить и запустить i2pd:

# apt-get install -y i2pd
# systemctl enable --now i2pd

По адресу http://localhost:7070/ через браузер (хоть текстовый) доступны такие плюшки как:

  • проверка работоспособности демона;
  • наблюдение за его процессами-туннелями-транспортами;
  • смена некоторых настроек (например, понятный язык для веб-консоли) на время сессии (навсегда — через конфиг);
  • остановка-перезапуск...

и прочие.

Памятка: в дистрибутиве старая версия 2.38.0-alt1; в Сизифе новая 2.41.0-alt1, но со старыми юнитами-конфигами — на момент правки статьи лучше пересобрать пакет i2pd-2.41.0-alt2.src.rpm из приложения № 10772 к отчёту в багзилле № 42746.
Внимание: с прошлого года эту технологию блокируют по ТСПУ, работоспособность не гарантирована.

«Луковый» прокси

  1. Установить пакеты:
    • torsocks (автоматом подтягивающий основной сервис tor, если тот ещё не установлен),
    • obfs4 («путаник», добавляющий тору способы миновать РКНовские блокировки по «мостикам») и
    • lsof (для проверки результата).
  2. Добавить в конфиг тора /etc/tor/torrc опцию, включающую предоставленные пакетом obfs4 настройки со списком мостов (об их обновлении см. ниже).
  3. После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту.
Суммарно выглядит примерно так...  
# apt-get update && apt-get install -y torsocks obfs4 lsof
# echo "%include /etc/tor/obfs4.torrc" >>/etc/tor/torrc
# systemctl restart (или enable --now) tor
# lsof -ni :9050
...
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
tor     2778 _tor    6u  IPv4  27181      0t0  TCP 127.0.0.1:9050 (LISTEN)

Обновление мостов для обфускатора

Скачать свежий обновлятор мостиков (например, в /etc/tor/) и сделать короткий симлинк:

# ln -s tor-relay-scanner-0.0.9.pyz tor-relay-scanner

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

/usr/local/sbin/obfuscator  
#!/bin/sh

WD=/etc/tor
LIST=obfsbridges.conf
CONF=$WD/conf.d/$LIST

cat $CONF >$WD/$LIST # бэкап конфига на случай неполучения нового списка.
python3 $WD/tor-relay-scanner --torrc -o $CONF

[ `wc -l $CONF | awk '{print $1}'` -gt 0 ] && {
    sed -i /UseBridges/d $CONF
    serv tor reload
} || cat $WD/$LIST >$CONF

И юнит для его периодического запуска, например:

/lib/systemd/system/obfuscator.service  
[Unit]
Description = Update tor obfs4 bridges list

[Service]
ExecStart = /usr/local/sbin/%N

[Install]
WantedBy = doit@daily.target

Последняя строчка задаёт периодичность обновления (как задействовать таймеры вместо кронтабов для служб такого рода, описано здесь). Сам на невыключающихся компах и серверах обновляю ежесуточно, а на командировочно-отпускном лапте — ежечасно (doit@hourly), хотя следовало бы переделать на момент загрузки системы.

Остаётся лишь оный обновлятор включить:

# systemctl enable obfuscator

Браузерный плагин

Сам использовал FoxyProxy (для хрома и ЯБ или огнелиса) и SwitchyOmega, настройку коего и опишу.

  1. Добавить в браузер соответствующий плагин для хрома/ЯБ или огнелиса.
  2. В меню плагина Значок выбрать пункт автопереключения Меню
  3. Создать профиль i2p для сайтов в одноимённой зоне (протокол: HTTP, сервер: localhost, порт: 4447 — не проиллюстрировано, делать по аналогии со следующим пунктом).
  4. Второй профиль proxy — для .onion и прочих труднодоступных сайтов (протокол: SOCKS5, сервер: localhost, порт: 9050):
    Настройка прокси
  5. Задать для доступа к сайтам .i2p одноимённый профиль, а к сайтам .onion и прочим недоступным — тор-прокси, по мере надобности пополняя список другими блокируемыми сайтами:
    Список сайтов
Список в режиме редактирования исходного кода (можно попросту скопипастить):  
[SwitchyOmega Conditions]
@with result

*.i2p +i2p
*.bookafan.website +proxy
*.btmet.com +proxy
*.byxatab.* +proxy
*.canva.com +proxy
*.dell.com +proxy
*.epicgames.com +proxy
*.facebook.com +proxy
*.freegogpcgames.com +proxy
*.gfi.com +proxy
*.instagram.com +proxy
*.kritka.info +proxy
*.kyiv.ua +proxy
*.linkedin.com +proxy
*.nitroflare.com +proxy
*.onion +proxy
*.rutracker.* +proxy
*.santehnika1.ru +proxy
*.semyanich.com +proxy
*.terraform.io +proxy
*.torgamez.com +proxy
*.torproject.org +proxy
*.ubi.com +proxy
*.underver.se +proxy
*.vonos.net +proxy
*.weebly.com +proxy
*baza-knig.ru +proxy
*bookzip.ru +proxy
*citilink.ru +proxy
*fantasy-worlds.org +proxy
*flibusta.* +proxy
*gmt-max.net +proxy
*intoupload.net +proxy
*kinobar.me +proxy
*kinogo.la +proxy
*kinosvit.tv +proxy
*kinotazz.ru +proxy
*loveread.* +proxy
*mechanics-games.* +proxy
*nnmclub.to +proxy
*onion.live +proxy
*otxataba.net +proxy
*piratam.net +proxy
*rg-mechanics.* +proxy
*rgmechanics.* +proxy
*rutor* +proxy
*seasonvar.ru +proxy
*serialytut.me +proxy
*skidrowcpy.com +proxy
*steampowered.com +proxy
*torlock.cc +proxy
*torrent* +proxy
*tracker.* +proxy
*twitter.com +proxy
*weebly.com +proxy
*xatab-repack* +proxy
*zenmoney.ru +proxy

* +direct

Подборки ресурсов

Обратная связь