Задний ход в DarkWeb: различия между версиями
Дым (обсуждение | вклад) |
Дым (обсуждение | вклад) |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 19: | Строка 19: | ||
и прочие. | и прочие. | ||
{{Памятка|в дистрибутиве старая версия <code>2.38.0-alt1</code>; в Сизифе новая <code>2.41.0-alt1</code>, но со старыми юнитами-конфигами — на момент правки статьи лучше пересобрать пакет <code>i2pd-2.41.0-alt2.src.rpm</code> из приложения № 10772 к отчёту в багзилле № 42746.}} | {{Памятка|в дистрибутиве старая версия <code>2.38.0-alt1</code>; в Сизифе новая <code>2.41.0-alt1</code>, но со старыми юнитами-конфигами — на момент правки статьи лучше пересобрать пакет <code>i2pd-2.41.0-alt2.src.rpm</code> из приложения № 10772 к отчёту в багзилле № 42746.}} | ||
{{Внимание|с прошлого года эту технологию блокируют по ТСПУ, работоспособность не гарантирована.}} | |||
=«Луковый» прокси= | =«Луковый» прокси= | ||
Строка 27: | Строка 28: | ||
#Добавить в конфиг тора <code>/etc/tor/torrc</code> опцию, включающую предоставленные пакетом <code>obfs4</code> настройки со списком мостов (об их обновлении см. ниже). | #Добавить в конфиг тора <code>/etc/tor/torrc</code> опцию, включающую предоставленные пакетом <code>obfs4</code> настройки со списком мостов (об их обновлении см. ниже). | ||
#После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту. | #После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту. | ||
Суммарно выглядит примерно так | {|class="mw-collapsible mw-collapsed wikitable" | ||
<source lang="ini"> | !Суммарно выглядит примерно так... | ||
|- | |||
|<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 | ||
Строка 37: | Строка 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> | ||
|} | |||
==Обновление мостов для обфускатора== | ==Обновление мостов для обфускатора== | ||
Скачать свежий [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> | |||
Создать скриптец для их обновления с последующим подсовыванием тору, например: | |||
{|class="mw-collapsible mw-collapsed wikitable" | |||
!/usr/local/sbin/obfuscator | |||
|- | |||
|<source lang=bash> | |||
#!/bin/sh | #!/bin/sh | ||
Строка 50: | Строка 58: | ||
python3 $WD/tor-relay-scanner --torrc -o $CONF | python3 $WD/tor-relay-scanner --torrc -o $CONF | ||
[ `wc -l $CONF | [ `wc -l $CONF | awk '{print $1}'` -gt 0 ] && { | ||
sed -i /UseBridges/d $CONF | sed -i /UseBridges/d $CONF | ||
serv tor reload | serv tor reload | ||
} || cat $WD/$LIST >$CONF | } || cat $WD/$LIST >$CONF | ||
</source> | </source> | ||
|} | |||
И юнит для его периодического запуска, например: | |||
{|class="mw-collapsible mw-collapsed wikitable" | |||
!/lib/systemd/system/obfuscator.service | |||
|- | |||
|<source lang=ini> | |||
[Unit] | [Unit] | ||
Description = Update tor obfs4 bridges list | Description = Update tor obfs4 bridges list | ||
Строка 66: | Строка 78: | ||
WantedBy = doit@daily.target | WantedBy = doit@daily.target | ||
</source> | </source> | ||
|} | |||
Последняя строчка задаёт периодичность обновления (как задействовать таймеры вместо кронтабов для служб такого рода, описано [[Таймеры systemd вместо crond|здесь]]). Сам на невыключающихся компах и серверах обновляю ежесуточно, а на командировочно-отпускном лапте — ежечасно (doit@hourly), хотя следовало бы переделать на момент загрузки системы. | |||
Остаётся лишь оный обновлятор включить:<pre># systemctl enable obfuscator</pre> | |||
=Браузерный плагин= | =Браузерный плагин= | ||
Строка 78: | Строка 92: | ||
#Задать для доступа к сайтам <code>.i2p</code> одноимённый профиль, а к сайтам <code>.onion</code> и прочим недоступным — тор-прокси, по мере надобности пополняя список другими блокируемыми сайтами: | #Задать для доступа к сайтам <code>.i2p</code> одноимённый профиль, а к сайтам <code>.onion</code> и прочим недоступным — тор-прокси, по мере надобности пополняя список другими блокируемыми сайтами: | ||
#:[[Файл:SiteList.png|Список сайтов]] | #:[[Файл:SiteList.png|Список сайтов]] | ||
{|class="mw-collapsible mw-collapsed" | {|class="mw-collapsible mw-collapsed wikitable" | ||
! | !Список в режиме редактирования исходного кода (можно попросту скопипастить): | ||
|- | |- | ||
|<source lang="bash"> | |<source lang="bash"> | ||
Строка 86: | Строка 100: | ||
*.i2p +i2p | *.i2p +i2p | ||
*.bookafan.website +proxy | *.bookafan.website +proxy | ||
*.btmet.com +proxy | *.btmet.com +proxy | ||
* | *.byxatab.* +proxy | ||
*.canva.com +proxy | |||
*.dell.com +proxy | |||
*.epicgames.com +proxy | *.epicgames.com +proxy | ||
*.facebook.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 | *fantasy-worlds.org +proxy | ||
*flibusta.* +proxy | *flibusta.* +proxy | ||
*gmt-max.net +proxy | *gmt-max.net +proxy | ||
*intoupload.net +proxy | *intoupload.net +proxy | ||
Строка 102: | Строка 136: | ||
*kinosvit.tv +proxy | *kinosvit.tv +proxy | ||
*kinotazz.ru +proxy | *kinotazz.ru +proxy | ||
*. | *loveread.* +proxy | ||
* | |||
*mechanics-games.* +proxy | *mechanics-games.* +proxy | ||
*nnmclub.to +proxy | *nnmclub.to +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 | ||
*seasonvar.ru +proxy | *seasonvar.ru +proxy | ||
*serialytut.me +proxy | *serialytut.me +proxy | ||
*skidrowcpy.com +proxy | *skidrowcpy.com +proxy | ||
*steampowered.com +proxy | *steampowered.com +proxy | ||
*torlock.cc +proxy | *torlock.cc +proxy | ||
*torrent* +proxy | *torrent* +proxy | ||
*tracker.* +proxy | *tracker.* +proxy | ||
*. | *twitter.com +proxy | ||
*weebly.com +proxy | *weebly.com +proxy | ||
*xatab-repack* +proxy | *xatab-repack* +proxy |
Текущая версия от 01: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/
через браузер (хоть текстовый) доступны такие плюшки как:
- проверка работоспособности демона;
- наблюдение за его процессами-туннелями-транспортами;
- смена некоторых настроек (например, понятный язык для веб-консоли) на время сессии (навсегда — через конфиг);
- остановка-перезапуск...
и прочие.
«Луковый» прокси
- Установить пакеты:
torsocks
(автоматом подтягивающий основной сервисtor
, если тот ещё не установлен),obfs4
(«путаник», добавляющий тору способы миновать РКНовские блокировки по «мостикам») иlsof
(для проверки результата).
- Добавить в конфиг тора
/etc/tor/torrc
опцию, включающую предоставленные пакетомobfs4
настройки со списком мостов (об их обновлении см. ниже). - После чего (пере)запустить сам сервис и удостовериться, что тор слушает на нужном порту.
Суммарно выглядит примерно так... |
---|
# 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, настройку коего и опишу.
- Добавить в браузер соответствующий плагин для хрома/ЯБ или огнелиса.
- В меню плагина
выбрать пункт автопереключения
- Создать профиль i2p для сайтов в одноимённой зоне (протокол: HTTP, сервер: localhost, порт: 4447 — не проиллюстрировано, делать по аналогии со следующим пунктом).
- Второй профиль proxy — для .onion и прочих труднодоступных сайтов (протокол: SOCKS5, сервер: localhost, порт: 9050):
- Задать для доступа к сайтам
.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
|
Подборки ресурсов
- «луковых» (TOR)
- «чесночных» (I2P)