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

Материал из ALT Linux Wiki
 
(не показана 121 промежуточная версия 4 участников)
Строка 1: Строка 1:
Для хождения с собственного линукса по сайтам в зоне <code>.onion</code> и прочим, напрямую недоступным, достаточно настроить пару-тройку утилит, а именно…
=Введение=
=The Onion Router («луковый» маршрутизатор)=
Для хождения с собственного линукса по сайтам в зонах <code>.i2p</code>, <code>.onion</code> и прочим, напрямую недоступным, достаточно настроить несколько утилит. Приготовим остренького — макарошки с чесноком и луком:
#Установить пакет <code>torsocks</code>:
*макарошки — «запутывающий» (obfuscating) прокси <code>obfs4</code>, без которого теперь не работает...
#:<source lang="bash">
*лук — прокси <code>TORsocks</code> (The Onion Router) как добавка к «луковому» маршрутизатору;
# apt-get update && apt-get install -y torsocks
*чеснок же — самостоятельный демон для протокола «невидимого» интернета <code>i2pd</code> (Invisible Internet Protocol daemon) с «чесночным» (garlic) построением маршрутов.
И завернём всё это в лаваш-плагин для браузера — вот вам и хрестоматийный «пирожок с вермишелью».
 
=«Невидимый» интернет=
Установить и запустить <code>i2pd</code>:
<source lang="bash">
# apt-get install -y i2pd
# systemctl enable --now i2pd
</source>
</source>
#Проверить содержимое настроечного файла <code>/etc/tor/torsocks.conf</code> от установленного сервиса:
По адресу <code>http://localhost:7070/</code> через браузер (хоть текстовый) доступны такие плюшки как:
#:<source lang="bash">
*проверка работоспособности демона;
TorAddress    127.0.0.1
*наблюдение за его процессами-туннелями-транспортами;
TorPort        9050
*смена некоторых настроек (например, понятный язык для веб-консоли) на время сессии (навсегда — через конфиг);
OnionAddrRange 127.42.42.0/24
*остановка-перезапуск...
</source>
и прочие.
#После чего запустить сам сервис и удостовериться, что тор слушает на нужном порту:
{{Памятка|в дистрибутиве старая версия <code>2.38.0-alt1</code>; в Сизифе новая <code>2.41.0-alt1</code>, но со старыми юнитами-конфигами — на момент правки статьи лучше пересобрать пакет <code>i2pd-2.41.0-alt2.src.rpm</code> из приложения № 10772 к отчёту в багзилле № 42746.}}
#:<source lang="bash">
{{Внимание|с прошлого года эту технологию блокируют по ТСПУ, работоспособность не гарантирована.}}
# systemctl enable --now tor && lsof -ni :9050
 
=«Луковый» прокси=
#Установить пакеты:
#:*<code>torsocks</code> ''(автоматом подтягивающий основной сервис <code>tor</code>, если тот ещё не установлен)'',
#:*<code>obfs4</code> ''(«путаник», добавляющий тору способы миновать РКНовские блокировки по «мостикам»)'' и
#:*<code>lsof</code> ''(для проверки результата)''.
#Добавить в конфиг тора <code>/etc/tor/torrc</code> опцию, включающую предоставленные пакетом <code>obfs4</code> настройки со списком мостов (об их обновлении см. ниже).
#После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту.
{|class="mw-collapsible mw-collapsed wikitable"
!Суммарно выглядит примерно так... &nbsp;
|-
|<source lang="ini">
# 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
COMMAND  PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
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>
=«Запутывающий» (obfuscating) прокси=
|}
Миновать РКНовские блокировки тора можно по «мостику»:
==Обновление мостов для обфускатора==
#Установить пакет (в Альте пока не собранный, но легко [https://github.com/Yawning/obfs4 собираемый] одной командой) <code>obfs4proxy</code>:
Скачать свежий [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>
#:<source lang="bash">
 
# apt-get update && apt-get install -y obfs4proxy
Создать скриптец для их обновления с последующим подсовыванием тору, например:
{|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>
</source>
#Добавить в конфиг тора <code>/etc/tor/torrc</code> опции:
|}
#:<source lang="bash">
И юнит для его периодического запуска, например:
UseBridges 1
{|class="mw-collapsible mw-collapsed wikitable"
ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy managed
!/lib/systemd/system/obfuscator.service &nbsp;
bridge obfs4 ip.add.re.ss:port длинный_хэш cert=сертификат_ещё_длиннее iat-mode=Х
|-
</source>
|<source lang=ini>
#:Мостов может быть указано больше одного, а получить их можно в ответ на письмо по адресу <code>bridges@torproject.org</code> с текстом в теле <code>get transport obfs4</code>.
[Unit]
#Перезапустить службу:
Description = Update tor obfs4 bridges list
#:<source lang="bash">
 
# systemctl restart tor
[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>.onion</code>, накидать ещё недоступных напрямую доменов, по мере надобности пополняя список другими блокируемыми сайтами:
#Задать для доступа к сайтам <code>.i2p</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
*.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
*bookzip.ru +proxy
*bookzip.ru +proxy
*citilink.ru +proxy
*fantasy-worlds.org +proxy
*fantasy-worlds.org +proxy
*flibusta.* +proxy
*flibusta.* +proxy
Строка 55: Строка 133:
*intoupload.net +proxy
*intoupload.net +proxy
*kinobar.me +proxy
*kinobar.me +proxy
*kinogo.la +proxy
*kinosvit.tv +proxy
*kinotazz.ru +proxy
*kinotazz.ru +proxy
*.linkedin.com +proxy
*loveread.* +proxy
*loveread.ec +proxy
*mechanics-games.* +proxy
*mechanics-games.com +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.games +proxy
*rg-mechanics.* +proxy
*.rgmechanics.info +proxy
*rgmechanics.* +proxy
*rutor* +proxy
*rutor* +proxy
*seasonvar.ru +proxy
*seasonvar.ru +proxy
*serialytut.me +proxy
*skidrowcpy.com +proxy
*steampowered.com +proxy
*torlock.cc +proxy
*torlock.cc +proxy
*torrent* +proxy
*torrent* +proxy
*tracker.* +proxy
*tracker.* +proxy
*.vonos.net +proxy
*twitter.com +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

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

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